0

奇妙な問題があります。を拡張してテストクラスを作成しましたStrutsTestCase

   public class MyActionTest extends StrutsTestCase{

      public void helloTest()
      {

      }
  }

Struts のドキュメントによるとrequestMockHttpServletRequest拡張することで利用可能になりますStrutsTestCase。これは保護された変数なStrutsTestCaseので、クラスを拡張したらアクセスできるはずです。

しかし、何らかの理由で、保護された属性またはメソッドがStrutsTestCasemy に表示されませんMyActionTest

何かが欠けているかどうかはわかりませんが、すべてが簡単に見えますが、まだ機能していません。

スーパークラスの保護されたメソッドがサブクラスでアクセスできない理由について何か考えはありますか? 特定のパッケージなどを使用する必要がありますか?

このタスクに使用する jar のリスト:

  1. spring-2.5.3.jar
  2. spring-mock-1.2.6.jar
  3. struts2-core-2.0.11.jar
  4. xwork-core-2.3.1.jar

何か不足していますか?

4

2 に答える 2

0

おそらく struts2-junit-plugin http://struts.apache.org/2.x/docs/junit-plugin.htmlまたは struts2-testng-plugin http://struts.apache.org/2.x/docs/testng -plugin.html

于 2012-10-11T11:52:52.993 に答える
0

StrutsTestCase は struts2-junit-plugin の一部です。http://struts.apache.org/2.2.3/struts2-plugins/struts2-junit-plugin/apidocs/org/apache/struts2/StrutsTestCase.htmlを参照してください- そこに保護されたリクエスト変数があります。

そのプラグインをクラスパスに追加するだけで、使用できるようになります。また、struts-core とプラグインに同じバージョンを使用することを忘れないでください。

于 2012-10-11T18:19:58.850 に答える