잡다한 사전

(2023.12.06) 테스트 코드에 대해서 알아보기 본문

프로그래밍 언어/node.js

(2023.12.06) 테스트 코드에 대해서 알아보기

잡사전집사 2023. 12. 8. 15:47
반응형

테스트 코드란?

테스트 코드는 작성한 코드가 문제가 없이  정상적으로 작동하는지 확인하는 코드를 말합니다.

테스트 코드에는 일곱 테스트 원칙이 존재한다.

 

일곱 테스트 원칙

 

1. 테스팅은 결함이 없는 것을 확인하는 것이 아닌, 결함의 존재를 확인하는 겁니다.

2. 완벽한 테스트는 불가능합니다.

3. 테스트 구성은 빠르게 시작하는 것이 좋다.

4. 결함은 군집이 되어있다.

5. 비슷한 테스트가 반복되면 결함을 찾기 힘들다.

6. 테스트는 정황에 의존적이다.

7. 오류 부재의 오해

 

테스트 코드 종류

 

☑︎ 단위 테스트 : 가장 작은 규모의 기능을 테스트하는 것을 말합니다.

☑︎ 통합 테스트 : 여러가지 기능을 합쳤을 때 생기는 오류를 방지하기 위한 테스트입니다.

☑︎ E2E 테스트 : 최종적으로 웹 페이지가 정상적으로 동작하는지 확인하는 테스트 입니다. 

 

● 단위 테스트

단위테스트는 작은 단위들이 정상적으로 작동을 하는지 확인하는 테스트입니다.

단위 테스트는 F.I.R.S.T 원칙이 있습니다.

 

☑︎ Fast : 유닛 테스트는 빨라야합니다.

☑︎ Isolated : 다른 테스트에 종속적인 테스트는 절대적으로 작성하지 않아야 합니다.

☑︎ Repeatable : 테스트는 실행할 때마다 같은 결과를 만들어야 합니다.

☑︎ Self-validating : 테스트는 스스로 결과물이 옳은지 확인이 가능해야 합니다.

☑︎ Timely : 유닛 테스트는 프로덕션 코드가 테스트를 성공하기 직전에 구성이 되어야 합니다.

 

● 통합 테스트

통합 테스트는 단위테스트에서 검증된 개별 모듈을 결합하여 정상적으로 상호작용을 하고 있는 확인하는 테스트 입니다.

 

 

테스트 코드의 장점과 단점

☑︎ 장점

☑︎ 코드 품질 향상

☑︎ 문서화 가능

 

☒ 단점

☒ 개발 시간이 증가

☒ 개발자들이 더 많이 필요하며, 작업을 해야하는 코드량 증가

반응형