3.2.3 새로운 방식: ExpectedException 규칙
JUnit은 커스텀 규칙을 정의하여 테스트가 실행되는 흐름 동안 발생하는 일에 대한 더 큰 통제권을 부여합니다. 한편으로 JUnit 규칙은 관점 지향 프로그래밍(AOP, Aspect-Oriented Programming)6과 유사한 기능을 제공합니다. 자동으로 테스트 집합에 종단 관심사(cross-cutting concern)(불변성을 유지하는 관심사)7를 부착할 수 있습니다.
JUnit은 (별도로 코딩할 필요 없이) 바로 사용할 수 있는 소수의 유용한 규칙들을 제공합니다. 특히 ExpectedException 규칙은 예외를 검사하는 데 있어 단순한 방식과 옛 방식의 좋은 점만 모았습니다.
새로운 계좌(즉, 돈이 없는 계좌)에서 돈을 인출하는 테스트를 설계한다고 합시다. 그 계좌에서 돈을 찾으면 예외가 발생합니다.