https://tech.inflab.com/20230404-test-code/
인프랩 백엔드 개발자 하루님이 공유해주신 글입니다. 좋은 테스트 코드를 짜기 위해 고민하고 계시다면 읽어보시기를 추천합니다.
[목차]
테스트 코드를 왜 작성하는 것인가
- 첫번째. 디버깅 비용 절감
- 두번째. 코드 변경에 대한 불안감 해소
- 세번째. 더 나은 문서 자료
- 네번째. 좋은 코드는 테스트하기 쉽다.
- 다섯번째. 테스트 자동화
코드를 잘 작성하는 방법 with Jest
- 첫번째. 테스트 코드는 DRY 보다는 DAMP 하게 작성하라.
- 두번째. 테스트는 구현이 아닌 결과를 검증하도록 한다.
- 세번째. 읽기 좋은 테스트를 작성하라.
- 네번째. 테스트 명세에 비즈니스 행위를 담도록 한다.
마무리
(미리보기)
[테스트 명세에 비즈니스 행위를 담도록 한다.]
명확하게 의도가 드러나는 이름은 개발자의 용어가 아닌 비즈니스 행위를 담은 비개발자가 읽을수 있게 설명되어야 합니다.
Bad:
```
it('관리자를 생성한후 관리자 정보를 확인한다.')
```
Better:
```ts
it('관리자 정보로 가입한다')
```
이렇게 잘 작성된 이름은 다음과 같은 효과를 가지고 옵니다.
- 테스트 코드와 실행 로그를 확인하지 않아도, 동작을 유추할 수 있으며, 요구사항이 빠르게 공유가 될수 있다.
- 영향 범위를 빠르게 파악할 수 있으며 유추를 통하여 빠른 복구를 할 수 있다.