在单元测试Struts 2 Actions时指定会话/ cookie信息?

时间:2013-10-22 07:10:41

标签: java unit-testing struts2

似乎在使用SessionAware操作单元测试Struts 2时,会话未在操作上设置。有没有办法在测试期间手动指定会话信息,在执行操作或其任何拦截器之前? (拦截器也必须收到我指定的相同会话信息。)

1 个答案:

答案 0 :(得分:1)

在执行实际测试用例之前使用Action代理设置会话和会话值,以下是演示该功能的代码片段。

 ActionProxy proxy = getActionProxy(<actionName>);
 Map<String, Object> session = new HashMap<String, Object>();
 session.put(....
 actionContext = proxy.getInvocation().getInvocationContext();
 actionContext.setSession(session);