SpringのMockMvcで例外を検証する
MockMvcを使用して、発生した例外を検証する方法について。
方法
MockMvc.perform(...).andReturn()
でMvcResult
オブジェクトを取得する。MvcResult.getResolvedException()
でException
オブジェクトを取得する。Exception.getClass()
で取得したクラス名と確認対象の例外クラスで検証を行う。
例
MvcResult result = mockMvc.perform(post(new URI("/list/delete/1")))
// 省略
.andReturn();
// 発生した例外の検証
Exception exception = result.getResolvedException();
assertThat(exception.getClass()).isEqualTo(MagazineNotExistException.class);