いくつかのコントローラーを呼び出して機能テストを作成したいと考えています。
@Autowired
private WebApplicationContext ctx;
private MockMvc mockMvc;
....
MvcResult mvcResult = mockMvc.perform(get("/perform/1")).andReturn();
Map<String, Object> model = mvcResult.getModelAndView().getModel();
//assert....
MvcResult mvcResult = mockMvc.perform(get("/perform/2")).andReturn();
Map<String, Object> model = mvcResult.getModelAndView().getModel();
//assert....
perform/1 が呼び出された後、 User モデルがセッションに保存されます:
@Controller
@SessionAttributes("user")
public class CoreController {
同じテストで perform/1 の直後に perform/2 を呼び出したいのですが、その場合は user = null のようです。これは正常な動作ですか?
どうすればこれを達成できますか? Spring コントローラーを使用して機能テストを作成するにはどうすればよいですか?