Test Design 과 Test Plan의 차이

병참·2024년 5월 26일


테스트 디자인, 테스트 플랜은 서로 같은 말인것 같지만 다른 의미가 있습니다.

테스트 디자인이란?

테스트 디자인은 테스트 활동을 위해 베이시스를 토대로 테스트 활동 전체에 대한 기본 설계를 하는 행위 입니다. 다음은 테스트 디자인의 주요 요소입니다

테스트 케이스 작성

입력 값을 선택한 후, 예상되는 결과를 결정하고 이를 문서화합니다. 예를 들어, 로그인 기능을 테스트할 때, 올바른 사용자명과 비밀번호를 입력했을 때 로그인이 성공하는지, 잘못된 정보를 입력했을 때 오류 메시지가 나타나는지를 확인하는 것입니다.
경계값 분석, 동등 분할등 다양한 기법을 활용할 수 있습니다.

테스트 조건 정의

어떤 조건에서 테스트를 수행할지 결정합니다. 예를 들어, 다양한 브라우저와 운영 체제에서의 동작을 테스트하는 것입니다.

테스트 환경 설정

테스트를 원할하게 수행하기 위해 리소스를 준비합니다. 예를 들어, 다양한 디바이스와 브라우저를 설정하거나, SQL로 데이터를 셋팅 및 검토, 또는 5분의 대기시간을 10초로 설정하는 등, 테스트를 원할하게 하기 위하여 준비하는 것입니다.

테스트 자동화에서도 테스트 디자인은 정말 중요합니다.

아마도 제일 중요하다고 생각합니다.
테스트 자동화는 수동 테스트보다 빠르고 반복 가능하다는 장점이 있지만, 이러한 장점을 최대한 활용하기 위해서는 잘 설계된 design이 필요합니다.

Automation test design

모두가 알다시피 어떻게 유지보수하고, 어떤 기능을 자동화를 할지 선정하는것이 너무 중요합니다.
Main 자동화가 완성도 안됐는데, 마이너한 부분까지 자동화를 진행할경우 들어가는 Cost에 비해 효율이 적게나와서 매우 비효율적입니다.

  • 메인기능 자동화
    Priority가 높은 기능을 자동화하여 cost 는 적게 효율은 최대한 많이 볼 수 있도록 설계합니다.
    UI 구조가 많이 변경되는 환경에서 모든 케이스를 커버할 수 없으며 비효율적입니다.
  • 유지보수
    배포주기가 빠른 프로덕트 환경에서는 UI 구조가 자주 바뀝니다. 그러면 그만큼 Automation Case 를 수정하는데 많은 비용을 쓰게 됩니다.
    id와 text contains 를 이용하여 최대한 UI 변경에도 영향을 덜 받게끔 설계합니다.
  • 모듈화
    자주 사용하는 기능은 모듈화하여 유지보수 및 신규테스트에 용이하도록 작성합니다.(ex. 로그인, 특정 메뉴 접속)
  • PASS/FAIL 기준 수립
    PASS/FAIL 기준에는 다양한 방법이 있습니다.
    1. 특정 문구 입력 후 Contains 로 찾기
    2. 특정 Step 수행 후 Element ID 로 UI 노출되는지 확인
    3. 기존 캡쳐된 이미지와 비교하여 % 로 Pass 기준을 측정하는 이미지 비교
    4. 기존 문구와 수정된 문구가 일치하지 않는지 확인

그러면 테스트 Plan이란 무엇인가요?

테스트 계획은 프로젝트 일정과 수행할 작업을 정의하는 문서입니다.
테스트를 하기 위해 필요한 리소스들을 요약해놓은 문서입니다.

범위와 역할 정의

누가 어떤 테스트를 수행할지 설계 합니다. 예를 들어, 특정 기능 테스트는 A가, 다른 기능의 테스트는 B가 맡는 식입니다.

테스트 항목

어느 부분을 테스트 할지, 영향범위 계산

목표 정의

테스트의 목적과 달성하고자 하는 목표를 정의합니다.(종료기준)

일정 수립

Scope 를 측정하여 테스트 일정을 수립합니다.
- Test case 작성 기간
- 테스트 기간
- 배포 일자

리스크 및 대응 전략

예상되는 리스크와 이를 관리하기 위한 전략을 설명합니다.





출처 :
https://testsigma.com/blog/test-design/
https://softwaretestingreference.tistory.com/169
https://smartbear.com/test-management/test-design-vs-test-plan/

0개의 댓글