Я использую Struts2, Spring3 и JPA для своего приложения. Когда я использую junit, он работает так, как ожидалось, но единственная проблема - это определяемый пользователем тест исключения.
код для вызова формы действия Test
@RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = {"classpath:ApplicationContext.xml"}) открытый класс HelloWorldTest расширяет StrutsSpringJUnit4TestCase {
public HelloWorldTest() { }
> @Test
> public void testGetString2() throws Exception {
> HelloWorld helloWorld = new HelloWorld();
> String result = executeAction("/helloworld.action");
> String s = helloWorld.getString("Test");
> assertEquals("Test", this);
> }
мой файл WEB.XML.
> <context-param> > <param-name>contextConfigLocation</param-name> > <param-value> > /WEB-INF/applicationContext.xml > </param-value> > </context-param> > <filter> > <filter-name>struts2</filter-name> > <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> > </filter> > <listener> > <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> > </listener> > <filter-mapping> > <filter-name>struts2</filter-name> > <url-pattern>/*</url-pattern> > </filter-mapping> > <welcome-file-list> > <welcome-file>index.jsp</welcome-file> > </welcome-file-list>
и мой файл applicationContext
> <beans>
> <bean id="helloWorldClass" class="com.junitaction.HelloWorld" >
> </bean>
> </beans>
Получение ошибки вроде.
java.lang.NullPointerException в org.apache.struts2.StrutsJUnit4TestCase.executeAction(StrutsJUnit4TestCase.java:134) в com.junitaction.HelloWorldTest.testGetString2(HelloWorldTest.java:76) в org.springframework.test.context.junit4.statements. RunBeforeTestMethodCallbacks.evaluate(RunBeforeTestMethodCallbacks.java:74) в org.springframework.test.context.junit4.statements.RunAfterTestMethodCallbacks.evaluate(RunAfterTestMethodCallbacks.java:83) в org.springframework.test.context.junit4.statements.SpringRepeat.evaluate SpringRepeat.java:72) в org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:231) в org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:88) в org .springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61) в org.springframework.test.context.junit4.statement s.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:71) в org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:174)
Файл Struts.xml
<struts>
<!-- Configuration for the default package. -->
<package name="default" extends="struts-default">
<action name="helloworld" class="helloWorldClass">
<result>/success.jsp</result>
</action>
</package>
</struts>
как я могу вызвать actionClass из junit4... пожалуйста, помогите мне улучшить. мои файлы jar:
antlr-2.7.2.jar, asm-3.3.jar, commons-fileupload-1.3.jar, commons-io-2.0.1.jar, commons-lang-2.4.jar, commons-lang3-3.1.jar, commons- logging-1.1.3.jar, freemarker-2.3.19.jar, javassist-3.11.0.GA.jar, ognl-3.0.6.jar, org.springframework.web.servlet-3.2.3.RELEASE.jar, spring-aop-3.2.3.RELEASE.jar, spring-aspects-3.2.3.RELEASE.jar, spring-beans-3.2.3.RELEASE.jar, spring-context-3.2.3.RELEASE.jar, spring- контекстная поддержка-3.2.3.RELEASE.jar, spring-core-3.2.3.RELEASE.jar, spring-expression-3.2.3.RELEASE.jar, spring-test-3.2.3.RELEASE.jar, spring- web-3.2.3.RELEASE.jar, struts2-core-2.3.15.1.jar, struts2-junit-plugin-2.3.15.1.jar, struts2-spring-plugin-2.3.15.1.jar, xwork-core-2.3. 15.1.бан.
StrutsSpringJUnit4TestCase
. - person Aleksandr M   schedule 26.08.2013