一个简单的例子来测试,action部分为public String execute(){
HttpServletRequest request = ServletActionContext.getRequest();
request.setAttribute("uname", userName);
if("admin".equals(userName)){
return "admin";
}else{
return "user";
}
}
JUNIT4测试这个方法@Test
public void testExecute() {
UserAction ua = new UserAction();
ua.execute();
}
但是会报失败,原因在于ACTION部分无法获取那个request,像这种情况做测试应该怎么来做呢?有用过MockHttpServletRequest request = new MockHttpServletRequest();
可以通过测试,但页面取不到request设置的值了。
HttpServletRequest request = ServletActionContext.getRequest();
request.setAttribute("uname", userName);
if("admin".equals(userName)){
return "admin";
}else{
return "user";
}
}
JUNIT4测试这个方法@Test
public void testExecute() {
UserAction ua = new UserAction();
ua.execute();
}
但是会报失败,原因在于ACTION部分无法获取那个request,像这种情况做测试应该怎么来做呢?有用过MockHttpServletRequest request = new MockHttpServletRequest();
可以通过测试,但页面取不到request设置的值了。
HttpServletRequest request = ServletActionContext.getRequest();因为,很难对request初始化一个值