테스트 코드(Test code)란 소스 코드의 특정 모듈이 의도된 대로 작동하는지 확인하기 위해 작성된 코드입니다. 즉, 소프트웨어 개발자가 작성한 코드에 대해 자동으로 검증하고, 검증된 결과를 피드백하는 코드를 말합니다. 이를 통해 소프트웨어 개발자는 코드를 변경했을 때, 예상치 못한 문제가 발생하지 않도록 미리 검증하고, 안전하게 리팩토링을 할 수 있습니다.
unit test (단위 테스트)
: 응용 프로그램에서 함수처럼 가장 작은 단위
integration test(통합 테스트)
: 유닛들을 모아서 함께 테스트한다.서버의 구성 요소들이 함께 잘 작동하는지를 테스트하기 위함.
e2e(end-to-end) test
: 사용자의 입장에서 사용자의 상황을 처음부터 끝까지 가정하여 올바르게 작동하는지 테스트 하는 것을 말한다. 예상되는 사용자의 행동과 여러 시나리오들을 만들어 시뮬레이션한다.
테스트 주도 개발은 매우 짧은 개발 주기의 반복에 의존하는 소프트웨어 개발 프로세스다. 이 프로세스는 원하는 개선사항이나 새로운 기능을 정의하는 자동화된 테스트 사례를 작성하고
해당 테스트를 통과할 수 있는 최소한의 코드를 생성
해주고새 코드는 허용 가능한 표준으로 리팩터링
된다.
즉, 좋은 테스트는 빠르게 독립적으로 어느 환경에서든 실행이 가능하고 검증 할수 있어야 한다.
테스트 코드를 작성하는 법은
Jest 로 한번 더 정리하겠다.