Fast
좋은 단위 테스트는 실행이 빨라야한다.
Isolated
좋은 단위 테스트는 독립적으로 수행되어야 한다.
-> 하나의 단위(기능)에 대한 테스트를 수행하여야 한다.
Repeatable
좋은 단위 테스트는 반복적으로 수행해도 항상 같은 결과가 나와야 한다.
Self-validating
좋은 단위 테스트는 스스로 검증할 수 있어야 한다.
-> ex ) Junit의 assert와 같은 검증 코드를 통해 검증 할 수 있다.
Timely
좋은 단위 테스트는 필요할 때 미루지 않고 즉시 작성해야 한다.
@Test
테스트를 할 메서드를 지정
@DisplayName
테스트 클래스 또는 테스트 메서드의 이름을 지정
@Before
각 테스트 메서드 실행 전에 실행될 메서드를 지정
@After
각 테스트 메서드 실행 후에 실행될 메서드를 지정
assertEquals(예상, 실제)
두 값이 동일한지 확인
assertTrue(조건)
해당 조건이 참인지 확인
assertFalse(조건)
해당 조건이 거짓인지 확인
assertSame(예상, 실제)
두 객체가 동일한 객체(참조가 동일)인지 확인
assertNull(객체)
해당 객체가 Null인지 확인