多数 Struts 应用程序不会 很快消失,所以重要的是知道如何在重写之前用开发人员测试构建一定层次的保证。这个月,我介绍了在测试 Struts 遗留应用程序时的一些挑战,并介绍了如何用 StrutsTestCase 和 DbUnit 处理它们。
StrutsTestCase 只要配置正确就会处理 Struts 的工作,而 DbUnit 处理与数据库有关的代码的工作。一起使用这两个框架,可以在 Struts 应用程序上进行集成级别的测试,而不用通过更高层次的框架(例如 JWebUnit 或 Selenium)模拟浏览器(也是一个值得采用的方法,但是生成的结果非常不同。)
Struts 应用程序对测试来说是 具有挑战性的,并且没有解决的方法。这个困难是 Struts 框架被更加创新的框架所掩盖的原因之一,特别是那些解决了测试容易问题的框架。另一方面,就像我在这里介绍的,测试 Struts 是 可能的 —— 只是需要费些力气。
学习
- 您可以参阅本文在 developerWorks 全球站点上的 英文原文 。
- “StrutsTestCase 简化开发过程” (Sunil Patil,developerWorks,2005 年 1 月):介绍了 StrutsTestCase 框架并解释了如何用 Mock 和 Cactus 方法测试示例应用程序。
- “Effective Unit Testing with DbUnit”(Andrew Glover,OnJava,2004):Andrew Glover 介绍了 DbUnit。
- “用 DbUnit 和 Anthill 控制测试环境”(Philippe Girolami,developerWorks,2004 年 4 月):学习如何结合使用 DbUnit 和 JUnit 来控制测试环境。
- “追求代码质量: 软件架构的代码质量”(Andrew Glover,developerWorks,2006 年 4 月):使用耦合测量支持系统架构。
- “测试遗留代码”(Elliotte Rusty Harold,developerWorks,2006 年 4 月):在从未测试过的遗留代码上犯难时要做什么。
- “Hip system tests with Cargo”(Andrew Glover,thediscoblog.com,2006 年 4 月):介绍了一个方便系统测试的 Web 容器管理框架。
- Java 技术专区:数百篇 Java 编程各方面的文章。
获得产品和技术
- StrutsTestCase:标准 JUnit TestCase 类的扩展,方便基于 Struts 框架的测试代码。
- DbUnit:一个 JUnit 扩展(用 Ant 可以重用),在测试运行中把数据库放在已知状态。
- Shale:下一代 Struts。
- Selenium:Web 应用程序的测试工具,直接在浏览器中运行测试,就像真正的用户那样。
讨论
- 参与论坛讨论。
- developerWorks blogs:加入 developerWorks 社区!
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/