手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

怎么编写action的单元测试

时间:2024-10-12 10:02:16

1、基于struts的mock和webwork的ActionProxyFactory都可以进行action的单元测试。比较建议用ActionProxyFactory做单元测试

怎么编写action的单元测试

2、写action单元测试非常简单,分三步就可以完成单元测试。第一步:设置actionContext上下文参数将表单传递的请求参数添加到map中详细用例参考:public class TestActionTest extends BaseCaseTest{private ActionProxy proxy = null;private IVoucherService voucherService;

怎么编写action的单元测试

3、第二步创建action动态代理对象 通过public abstract ActionPro垓矗梅吒xy createActionProxy(String 荏鱿胫协namespace, String actionName, Map extraContext) throws Exception 创建action代理对象。@Beforepublic void setUp() throws Exception {IMocksControl control = EasyMock.createControl();voucherService = control.createMock(IVoucherService.class);Map<String, Object> params = new HashMap<String, Object>();

怎么编写action的单元测试

4、第三步:junit断言执行结果 assertEquals(testAction.login猾诮沓靥(),"success")params.put(”loginId”,惯墀眚篪”test”);params.put(”password”,”111111″);params.put(”voucherService”, voucherService);Map extraContext = new HashMap();extraContext.put(ActionContext.PARAMETERS,params);

怎么编写action的单元测试

5、创建代理action一定要执行proxy.execute()方法,否则参数不能够增加到a罕铞泱殳ctionContext上下文中。try {proxy = ActionProxyFactory.getFactory().createActionProxy(”/user”, “testAction”, extraContext);proxy.setExecuteResult(false);assertEquals(proxy.execute(),”success”);} catch (Exception e) {e.printStackTrace();

怎么编写action的单元测试

6、proxy.execute()中会执行 invocation.invoke()核心方法,遍历执行action中所有的拦截器,包括其中的参数拦截器。@Testpublic void testLogin() {TestAction testAction = (TestAction) proxy.getAction();assertEquals(testAction.login(),”success”);

怎么编写action的单元测试
© 手抄报圈