WEB开发网
开发学院软件开发Java StrutsTestCase 简化开发过程 阅读

StrutsTestCase 简化开发过程

 2010-03-19 00:00:00 来源:WEB开发网   
核心提示: 现在可以执行测试用例了,首先要调用 actionPerform() 方法,StrutsTestCase 简化开发过程(5),把控制权传递给 Struts 框架,执行测试用例,所以每个测试用例都会执行 setup() 方法,在 MockStrutsTestCase 对象的 setup() 方法中,

现在可以执行测试用例了。首先要调用 actionPerform() 方法,把控制权传递给 Struts 框架,执行测试用例。一旦控制权从 actionPeform() 返回,就可以调用 verifyXXX() 方法,测试对程序的假设。在示例应用程序中,我们想测试一下,在没有用户名和口令的时候,调用 LoginAction 映射是否会利用出错信息 ActionErrors(用于 username.required 和 password.required)将用户重定向到登录页面。verifyInputForward() 方法检查这个事务的结果是否把用户重定向到动作映射的输入属性指定的页面,在这个例子中,该页面是 Login.jsp。

可以用 String 数组调用 verifyActionErrors(),该数组指出,作为这个事务的结果,应当在请求范围中设置哪些 ActionErrors。我们想设置 username.required、password.required 和 ActionErrors,所以创建了一个 String 数组来保存这些出错信息,并把它们发送给 verifyActionErrors() 方法。

STC 模拟方式如何工作

ActionServlet 在 Struts 框架中是一个控制器 servlet。当容器得到请求时,会把请求传递给 ActionServlet,由后者进行所有的请求处理。

STC 背后的基本想法是自行创建 ActionServlet 对象,而不是让容器来创建它,然后再调用对象上的适当方法。ActionServlet 在初始化时需要 ServletContext 和 ServletConfig 对象,在请求处理时需要 HttpServletRequest 和 HttpServletResponse 对象。STC 创建这些类的模拟对象,并把它们传递给 Struts。

MockStrutsTestCase 是一个扩展了 junit.framework.TestCase 类的 JUnit 测试用例,所以每个测试用例都会执行 setup() 方法。在 MockStrutsTestCase 对象的 setup() 方法中,STC 创建 ActionServlet 对象和其他必需的模拟对象。

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

Tags:StrutsTestCase 简化 开发

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