[Seasar-user:5660] [Teeda] Actionクラスのunitテストについて
Mitsutaka Sato
[E-MAIL ADDRESS DELETED]
2007年 1月 5日 (金) 05:47:44 JST
佐藤と申します。
引き続きTeedaに関しての質問です。
S2TestCaseを継承したテストクラスで実行してみたところ、
org.seasar.teeda.extension.interceptor.ActionSupportInterceptor.savePage(
ActionSupportInterceptor.java:82)
でnullpoが発生するようです。
発生箇所は、
ExternalContext externalContext = facesContext.getExternalContext();
で、facesContextがnullのため、、ということのようです。
TeedaのActionクラスをunitテストする方法論というかドキュメントはどこかにございますでしょうか?
テスト用のdiconファイルを作って、facesContextのMockを登録して、、、みたいな感じに
する必要があるのでしょうか?
以下スタックトレースです。(teeda 1.0.2)
===================================
java.lang.NullPointerException
at
org.seasar.teeda.extension.interceptor.ActionSupportInterceptor.savePage(
ActionSupportInterceptor.java:82)
at
org.seasar.teeda.extension.interceptor.ActionSupportInterceptor.invoke(
ActionSupportInterceptor.java:73)
at
honesty.imapweb3.web.regist.ConfirmAction$$EnhancedByS2AOP$$4bf53e$$MethodInvocation$$doRegist0.proceed
(MethodInvocationClassGenerator.java)
at org.seasar.framework.aop.interceptors.TraceInterceptor.invoke(
TraceInterceptor.java:59)
at
honesty.imapweb3.web.regist.ConfirmAction$$EnhancedByS2AOP$$4bf53e$$MethodInvocation$$doRegist0.proceed
(MethodInvocationClassGenerator.java)
at
honesty.imapweb3.web.regist.ConfirmAction$$EnhancedByS2AOP$$4bf53e.doRegist
(ConfirmAction$$EnhancedByS2AOP$$4bf53e.java)
at honesty.imapweb3.web.regist.ConfirmActionTest.test正常系(
ConfirmActionTest.java:67)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at junit.framework.TestCase.runTest(TestCase.java:164)
at org.seasar.framework.unit.S2FrameworkTestCase.doRunTest(
S2FrameworkTestCase.java:294)
at org.seasar.extension.unit.S2TestCase.doRunTest(S2TestCase.java:92)
at org.seasar.framework.unit.S2FrameworkTestCase.runBare(
S2FrameworkTestCase.java:190)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:120)
at junit.framework.TestSuite.runTest(TestSuite.java:230)
at junit.framework.TestSuite.run(TestSuite.java:225)
at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(
JUnit3TestReference.java:128)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(
TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(
RemoteTestRunner.java:460)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(
RemoteTestRunner.java:673)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(
RemoteTestRunner.java:386)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(
RemoteTestRunner.java:196)
===================================
以上よろしくお願いします。
-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: http://ml.seasar.org/archives/seasar-user/attachments/20070105/31d44232/attachment-0004.html
Seasar-user メーリングリストの案内