struts 2中的单元测试:无法继承受保护的变量

时间:2012-10-11 11:31:19

标签: java unit-testing struts2

我有一个奇怪的问题。我通过扩展StrutsTestCase创建了一个测试类。

   public class MyActionTest extends StrutsTestCase{

      public void helloTest()
      {

      }
  }

struts文档说request的{​​{1}}将通过扩展MockHttpServletRequest来提供。很公平,它是StrutsTestCase中的受保护变量,因此我们应该在扩展类后访问它。

但由于某些原因,我的StrutsTestCase中无法看到StrutsTestCase的受保护属性或方法。

我不知道我是否遗漏了什么,但一切似乎都是直截了当的,但却行不通。

为什么超类的受保护方法在子类中不可访问?我应该使用某些特定的包装吗?

我用于此任务的罐子列表:

  1. 弹簧2.5.3.jar
  2. 弹簧模拟1.2.6.jar
  3. struts2的核 - 2.0.11.jar
  4. XWork的核 - 2.3.1.jar
  5. 我错过了什么吗?

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分: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和插件使用相同的版本。