我正在为使用 httpsession 的方法编写验收测试。项目使用Springboot、cucumber进行验收测试。以下是伪代码:
public UserResponse getUser(@RequestBody UserRequest request) {
...
HttpSession httpSession = httpRequest.getSession();
boolean isValid = (boolean) httpSession.getAttribute("isValid");
if (isValid) {
// send http request
...
}
...
}
出现如下错误:
"errorText":"Cannot invoke \"java.lang.Boolean.booleanValue()\" because the return value of \"jakarta.servlet.http.HttpSession.getAttribute(String)\" is null"
是否可以使用 httpsession 为方法编写验收测试?
是的,这是可能的。为此,您应该模拟生产环境。您的代码是一个典型的控制器。许多教程中都描述了测试控制器。请参阅示例https://spring.io/guides/gs/testing-web