웹 테스트 가이드: 개발자를 위한 주요 고려 사항

MNIII
2 min readSep 16, 2023

--

프로그래밍을 할 때 코드만 작성하는 것이 아니라 그 코드가 제대로 작동 하는지 확인하는 테스트가 필수적이다. 테스트는 코드 작성 직후부터 시작되어야 하며 이는 자주 실행 되며 자동화된 방식으로 진행되는 것이 바람직하다.

실무에서 테스트의 중요성을 강조하는 가장 큰 이유 중 하나는 서비스 운영 중 발생하는 버그나 이슈에 대응하기 위함이다. 개발이 완료된 후에도 예상치 못한 상황이 발생했을 때, 만약 테스트가 부족했다면 보완하고, 아예 없었다면 새로 추가하는 것이 필요하다. 이러한 대응 능력은 테스트의 핵심 요건 중 하나라고 생각한다.

무엇을, 어떻게, 언제 테스트할 것인가?

테스트의 시작

코드를 작성한 직후에 테스트를 시작하고, 빌드 할때 마다 테스트를 실행하는 것은 효과적이며, 버그를 빠르게 발견하면 큰 비용 절감 효과가 있으므로 작은 단위로 코드를 작성하며 지속적으로 테스트하는 것이 바람직하다.

테스트의 중요성

개발 과정에서 테스트 코드를 함께 작성하면 제품의 완성도를 향상 시키며, 이로 인해 결함이 적은 제품을 만들 수 있고, 목표한 테스트를 통과하기 전까지는 개발이 완료된 것으로 볼수 있겠다.

테스트의 시기

제품에 포함될 코드는 작성 하자마자 테스트 하고, 테스트는 자동화 해서 주기적으로 실행되는 것이 좋다.

6가지 테스트 유형

  • 단위 테스트: 하나의 모듈을 검증.
  • 통합 테스트: 단위 테스트의 확장 버전으로 전체 시스템의 동작을 검증.
  • 유효성 평가 및 검증: 사용자의 필요에 맞는 기능인지 검증.
  • 자원 고갈, 에러, 복구: 실제 환경에서의 동작을 검증.
  • 성능 테스트: 실제 환경에서의 성능을 검증.
  • 사용자 편의성 테스트: 사용자 중심의 편의성을 검증.

4가지 테스트 방법

  • 회귀 테스트: 이전과 현재의 출력 값을 비교하여 검증.
  • 테스트 데이터: 실제 데이터와 가상의 데이터를 활용하여 테스트.
  • GUI 시스템 구동: E2E 테스트를 통해 시스템의 동작을 검증.
  • 테스트의 검증: 테스트 코드의 문제점이 없는지 검증.

테스트 도구

--

--