Map
params.put(”loginId”,”test”);
params.put(”password”,”111111″);
params.put(”voucherService”, voucherService);
Map extraContext = new HashMap();
extraContext.put(ActionContext.PARAMETERS,params);
try {
proxy = ActionProxyFactory.getFactory().createActionProxy(”/user”, “testAction”, extraContext);
proxy.setExecuteResult(false);
assertEquals(proxy.execute(),”success”);
} catch (Exception e) {
e.printStackTrace();
}
}
@Test
public void testLogin() {
TestAction testAction = (TestAction) proxy.getAction();
assertEquals(testAction.login(),”success”);
}
}
注:创建代理action一定要执行proxy.execute()方法,否则参数不能够增加到actionContext上下文中。因为 proxy.execute()中会执行 invocation.invoke()核心方法,遍历执行action中所有的拦截器,包括其中的参数拦截器。
文章来源于领测软件测试网 https://www.ltesting.net/