【问题标题】:How to test struts 2.0.x applications如何测试 struts 2.0.x 应用程序
【发布时间】:2012-10-11 12:34:44
【问题描述】:

我们如何测试用 2.0.x 版本编写的应用程序的动作类?

我阅读了this link 发现,struts-junit 插件仅适用于 struts 2.1.1 或更高版本。

我的应用程序是使用 struts 2.0.11 编写的,我认为在我的项目中升级版本并不容易。

考虑到这些限制,我们如何对 Action 类进行单元测试?

【问题讨论】:

    标签: java unit-testing struts2 junit


    【解决方案1】:

    您想测试您的操作类的任何特殊方面吗?

    只要您的操作类被编写为 POJO,您就可以使用您选择的任何测试框架将它们作为普通 Java 类进行测试。

    编辑:试试this custom class,它扩展了JUnit 的TestCase 类。你需要依赖org.springframework: spring-mock

    【讨论】:

    • 它有http请求和响应对象。它不能作为 POJO 进行测试
    • 您说它使用“http 请求和响应对象”,您不能将这些注入到您的操作中吗?然后,您只需使用 mockito 来模拟它们。 @jilt3d 建议将它们作为 POJO 进行测试。不要添加任何其他依赖项,保持测试简单。
    • 还可以查看question:这是关于设置 struts2 ServletContext 以避免我们在将 struts2 操作作为 POJO 进行 junit 测试时遇到的一些问题
    • @VinothKumar 实例拥有的对象与它是否是 POJO 无关,并且(基本上)任何东西都可以被模拟或存根。如果您的类不是可测试的并且投资回报率不值得,您还可以进行集成测试。
    猜你喜欢
    • 2010-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-19
    • 2011-08-15
    • 1970-01-01
    • 2011-07-04
    • 2010-09-21
    相关资源
    最近更新 更多