我正在嘗試使用Maven在我的spring web應用程序上運行一些單元測試。該應用程序安裝並運行良好,它會生成可部署的war文件(全部使用Maven)。配置問題:spring-security-web類不可用。你需要這些來使用<filter-chain-map>
我的測試類(位於SRC /測試/爪哇):
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations={"file:C:/myProjects/myWebapp/src/main/webapp/WEB-INF/applicationContext-test.xml"})
@Transactional
public class MyTest {
...
但是我收到錯誤:
Configuration problem: spring-security-web classes are not available. You need these to use <filter-chain-map>
Offending resource: URL [file:C:/myProjects/myWebapp/src/main/webapp/WEB-INF/applicationContext-test.xml]
當運行Maven > test
我POM dependcy被定義爲
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-web</artifactId>
<version>3.0.5.RELEASE</version>
</dependency>
默認爲compile
範圍,which should be OK?當我將範圍更改爲test
和provided
時,它會返回相同的錯誤。
而且我.classpath
看起來是這樣的:
<classpath>
<classpathentry kind="src" output="target/classes" path="src/main/java"/>
<classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources"/>
<classpathentry kind="src" output="target/test-classes" path="src/test/java"/>
<classpathentry excluding="**" kind="src" output="target/test-classes" path="src/test/resources"/>
如何建立我的應用程序上下文並測試是否正確?
聽起來像一個類路徑的問題。你有沒有在你的'pom.xml'中包含所有必需的Spring依賴項,並使用適當的'scope'級別來確保Maven在測試階段將它們包含在你的類路徑中? – aroth
好,我想我做到了,將編輯的問題 – NimChimpsky