테스트란 무엇인가?

테스트란 프로그램을 실행하여 오류와 결함을 검증하고 어플리케이션이 요구사항에 맞게 동작하는지 검증하는 절차

왜 어플리케이션을 TEST해야 하는가?

간단하게 말하면 더 안정적인 어플리케이션을 위해서는 여러 방법으로 테스트를 해줘야 더 안정적인 어플리케이션이 될 수 있습니다. 이미 만들어진 기능을 위해서는 발생 가능한 결함을 예방하고 기능의 요구사항을 충족하는지 검증하고 새로 만들 기능을 위해서는 변경사항으로 인한 결함이 유입되지 않을지 테스트로 확인을 할 수 있습니다.

→ 테스팅으로 인해 만들고 유지보수 하고 있는 앱에 대해서 UI나 기능 등에 자신감을 가질 수 있습니다. 또한 현재 앱이 안정됨으로써 앞으로 새로운 기능을 추가할 때도 더욱 안정적으로 기능을 추가할 수 있습니다.

테스트로 얻는 이점은?

  1. 디버깅 시간을 단축! 만약 데이터가 잘못 나왔다면 그것이 UI의 문제인지 DB의 문제인지 등 전부 테스트를 해봐서 찾아야 하는데 테스트 환경이 구축되어 있다면 자동화된 유닛 테스트로 특정 버그를 쉽게 찾아낼 수 있다.
  2. 더욱 안정적인 어플리케이션, 많은 테스트 코드와 함께 작성된 코드의 어플리케이션이 되기 때문에 훨씬 안정적인 어플리케이션이 됩니다.
  3. 이 밖에도 재설계 시간의 단축, 추가로 무언가를 더 구현해야 할 때 더 용이하게 할 수 있는 등의 이점들이 있습니다.

Test Drevien Development란

실제 코드를 작성하기 전에 테스트 코드를 먼저 작성합니다.

테스트 코드를 작성한 후 그 테스트 코드를 Pass할 수 있는 실제 코드를 작성합니다.

스크린샷 2024-01-09 오전 11.33.34.png

단위 테스트

통합 테스트

BDD / TDD

Jest

Jest 파일 구조 & 사용법

jest.fn()