수동 QA (품질 보증)테스터 (Manual QA)

수동 테스트를 위한 테스트 케이스 작성 시 발생할 수 있는 어려움은 무엇이며, 이를 어떻게 극복할 수 있을까요?

Hintsage AI 어시스턴트로 면접 통과

답변.

테스트 케이스 작성은 수동 테스트의 기초 중 하나이며 애플리케이션의 기능을 검증하는 핵심 단계입니다.

질문의 역사: 오랫동안 테스트 케이스는 품질 보증의 중심 방법이었으며 요구 사항 검증을 구조화하고 테스트 담당자가 변경되더라도 테스트의 반복 가능성을 보장합니다.

문제: 주요 어려움은 지나치게 세부적으로 작성된 것과 부족한 작업 사이의 균형입니다. 지나치게 상세한 케이스는 테스트를 일상적이고 느리게 만들고, 너무 간결한 경우 중요한 시나리오를 놓칠 수 있습니다. 자주 발생하는 문제는 다음과 같습니다:

  • 요구 사항과의 연관성 부족.
  • 경계 사례의 누락.
  • 시나리오의 중복.
  • 제품 변경으로 인한 비현황성.

해결책: 효과적인 테스트 케이스를 위해 필요한 사항은:

  • 각 테스트와 요구 사항 간의 연관성을 설정합니다 (추적 매트릭스).
  • 테스트 디자인 기술을 사용합니다 (동등 분할, 경계 값 분석).
  • 테스트 케이스의 정기적인 감사 및 최신화 수행.
  • 복잡한 사항을 명확히 하기 위해 개발 팀과 분석가를 참여시킵니다.

주요 특징:

  • "하나의 테스트 - 하나의 예상 결과" 원칙에 따라 구조화합니다.
  • 요구 사항 변경 시 최신화합니다.
  • 부정적인 사례를 포함하여 모든 경로를 커버합니다.

꼬리 질문들.

항상 테스트 케이스가 개발 전에 작성되나요?

아닙니다. 테스트를 실제 구현 전에 작성하는 것이 바람직하지만(shift-left) 실제로는 종종 새로운 정보가 들어오거나 테스트 환경이 구축된 후에 테스트 케이스가 수정됩니다.

하나의 테스트 케이스가 하나의 시나리오만 검사해야 하나요?

예, "하나의 테스트 - 하나의 결과"라는 고전적인 원칙은 버그 분석과 테스트된 내용을 이해하기 쉽게 만듭니다. end-to-end 시나리오의 경우 예외가 있을 수 있지만, 이러한 경우에도 예상되는 결과를 명확히 구분하는 것이 중요합니다.

요구 사항에서 자동으로 생성한 테스트 케이스를 완전히 신뢰할 수 있나요?

아닙니다. 이러한 케이스는 종종 표면적이며 중요한 비즈니스 로직, 경계 값 또는 행동 조합을 놓칠 수 있어 수동 분석이 필요합니다.

일반적인 실수 및 안티 패턴

  • 새로운 요구 사항에 맞게 조정하지 않고 기존 케이스를 복사합니다.
  • 부정적 시나리오를 생략합니다.
  • 모호한 표현(예: "시스템이 올바르게 작동합니다")을 사용합니다.

실생활의 예

부정적 케이스

팀은 오래된 테스트 문서를 검토 없이 가져와 변경된 기능에 맞지 않는 테스트 케이스를 사용했습니다.

장점:

  • 새로운 문서 작성에 소요되는 시간 절약.

단점:

  • 새로운 비즈니스 규칙을 놓쳤고, 프로덕션에 배포한 후에야 버그가 발견되었습니다.

긍정적 케이스

테스터는 테스트 케이스를 재검토하고 분석가와 어려운 점을 논의하며, 오래된 것을 정리하고 새로운 팀과 함께 리뷰를 수행했습니다.

장점:

  • 모든 시나리오에 대해 유효한 검사가 이루어졌습니다.
  • 새로운 요구 사항을 반영하여 릴리스 전에 버그를 발견할 수 있었습니다.

단점:

  • 초기 단계에서 더 많은 시간이 필요하고 팀과의 커뮤니케이션이 필요합니다.