Junit 에서 제공하는 클래스로 테스트시 예측되는 결과를 정의할 때 사용된다.
Assertions 클래스는 여러 메서드로 인자값으로 받은 객체들을 정의내릴 수 있다.
예외를 던지는지, 안던지는지, 동일한지 등에 대해 지정해줄 수 있다.
assertThrows는 예외가 발생되는 작업을 파라미터로 받아 예외가 발생하지 않으면 실패처리하게 하는 메서드이다.
내부 코드를 살펴보면 아래와 같이 수행되는 것을 알 수 있다.
1. 파라미터로 받은 작업을 실행한다.
2. 작업을 실행할 시 예외가 발생하면 catch문에서 받아 파라미터로 받은 예외와 동일한지 확인한다.
3. 만약 예외가 동일하지 않으면 assertionFailure 예외를 던진다.
=> AdminMapperSerivce에서 새로운 소모임을 등록할 시에 DB에 없는 카테고리 아이디값을 넣으면 IsExistCheckException 를 반환하기 때문에 해당 작업을 테스트하기 위해 Assertions의 메서드중 에러를 반환한다고 정의를 내려주는 assertThrows 메서드를 사용하였다.