WEB开发网
开发学院软件开发Java 追求代码质量: 测试 Struts 遗留的应用程序 阅读

追求代码质量: 测试 Struts 遗留的应用程序

 2009-11-19 00:00:00 来源:WEB开发网   
核心提示: 来自 StrutsTestCase 的帮助StrutsTestCase 是一个 JUnit 扩展,专门针对 Struts 应用程序,追求代码质量: 测试 Struts 遗留的应用程序(5),这个框架实际上模拟了一个 servlet 容器,这样就能虚拟地运行和测试 Struts 应用程序,包含 C

来自 StrutsTestCase 的帮助

StrutsTestCase 是一个 JUnit 扩展,专门针对 Struts 应用程序。这个框架实际上模拟了一个 servlet 容器,这样就能虚拟地运行和测试 Struts 应用程序,而不必在 Tomcat(举例)中运行它了。框架还有一个方便的 MockStrutsTestCase 类,它扩展了 TestCase 并处理许多 Struts 配置方面(例如装入 struts-config.xml 配置文件)。

但是,在您认为自己完全脱离了 Struts 配置的痛苦之前,应当了解一些正确配置 MockStrutsTestCase 的事情。也就是说,需要把它指向代表 Web 应用程序的目录,然后指向必要的 web.xml 和 struts-config.xml 文件。默认情况下,MockStrutsTestCase 扫描这些项目的类路径;但是,要把 MockStrutsTestCase 配置成在特定环境中工作,操作很简单,只需覆盖一些设置并编写一些特定的配置代码即可。

返回口令验证示例,包含 ChangePasswordAction 类的项目有图 3 所示的目录结构:


清单 3. 示例目录结构
root/ 
 src/ 
  conf/ 
  java/ 
  webapp/ 
   images/ 
   jsp/ 
   WEB-INF/ 
 test/ 

WEB-INF 目录包含 web.xml 和 struts-config.xml 文件,webapp 目录代表 Web 上下文环境。知道了这些,我就如清单 4 所示配置 MockStrutsTestCase:


清单 4. MockStrutsTestCase 的定制 fixture 代码
public void setUp() throws Exception { 
 try { 
 super.setUp(); 
 
 this.setContextDirectory(new File("src/webapp/")); 
 this.setServletConfigFile("src/webapp/WEB-INF/web.xml"); 
 this.setConfigFile( 
    this.getSession().getServletContext() 
    .getRealPath("WEB-INF/struts-config.xml")); 
  
 }catch (Exception e) { 
  fail("Unable to setup test"); 
 } 
} 

其他测试方式

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:追求 代码 质量

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接