addRequestParameter("method", "doAdd");
addRequestParameter("pageId", "1");
addRequestParameter("dpname","测试部门");
addRequestParameter("dptype","测试部门");
addRequestParameter("yn","n");
//执行action
actionPerform();
//验证返回的forward
verifyForward("success");
}
3. 主要函数和作用:
- setContextDirectory,设置web应用的根
- setRequestPathInfo,设置request的请求
- addRequestParameter,将参数和对应的值加入request中
- actionPerform,执行这个请求
- verifyForward,验证forward的名字是否正确
- verifyForwardPath,验证forward的path是否正确
- verifyNoActionErrors,验证在action执行过程中没有ActionError产生
- verifyActionErrors,验证在action执行过程中产生的ActionError集合的内容
具体详细的内容请参见对应的javaDoc。
4. 测试Tile。其基本过程与上面类似,不同之处在于验证:使用verifyTilesForward和verifyInputTilesForward。
5. 测试子模块。其基本过程也和上面一样,不同之处在于需要指定该模块所需要使用的struts-config.xml和调用方式:
- 首先,指定所需要的struts-config.xml:
setConfigFile("mymodule","/WEB-INF/struts-config-mymodule.xml");
- 其次,指明调用的路径:
setRequestPathInfo("/mymodule","/login.do");
检查表
使用StrutsTest需要注意的地方:
- 在TestCase中可以访问request、session等对象,StrutsTest为我们提供了访问接口。
- junit的assert函数和fail函数都可以在StrutsTest中使用。
- 对于文件上载,目前StrutsTest并没有什么特别好的方案。具体参见StrusTest的Faq。
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/