107 lines
6.4 KiB
Markdown
107 lines
6.4 KiB
Markdown
---
|
|
title: 테스트 옵션
|
|
description: 내장 QA 워크플로와 테스트 설계자(TEA) 모듈의 테스트 자동화 비교
|
|
sidebar:
|
|
order: 6
|
|
---
|
|
|
|
BMad는 두 가지 테스트 경로를 제공합니다. 빠른 테스트 생성을 위한 내장 QA 워크플로와 엔터프라이즈급 테스트 전략을 위한 설치 가능한 테스트 설계자 모듈입니다.
|
|
|
|
## 무엇을 사용해야 하나요?
|
|
|
|
| 기준 | 내장 QA | TEA 모듈 |
|
|
| --- | --- | --- |
|
|
| **적합한 경우** | 중소형 프로젝트, 빠른 커버리지 | 대형 프로젝트, 규제 대상 또는 복잡한 도메인 |
|
|
| **설정** | 설치할 것 없음 - BMM에 포함 | `npx bmad-method install`로 별도 설치 |
|
|
| **접근 방식** | 테스트를 빠르게 생성하고 나중에 반복 개선 | 먼저 계획하고 추적 가능하게 생성 |
|
|
| **테스트 유형** | API 및 E2E 테스트 | API, E2E, ATDD, NFR 등 |
|
|
| **전략** | 정상 경로 + 중요한 엣지 케이스 | 위험 기반 우선순위(P0-P3) |
|
|
| **워크플로 수** | 1(자동화) | 9개(설계, ATDD, 자동화, 리뷰, 추적 등) |
|
|
|
|
:::tip[내장 QA로 시작]
|
|
대부분의 프로젝트는 내장 QA 워크플로로 시작하면 됩니다. 나중에 테스트 전략, 품질 게이트, 요구사항 추적성이 필요해지면 TEA를 함께 설치하세요.
|
|
:::
|
|
|
|
## 내장 QA 워크플로
|
|
|
|
내장 QA 워크플로(`bmad-qa-generate-e2e-tests`)는 BMM(애자일 제품군) 모듈의 일부이며 개발자 에이전트를 통해 사용할 수 있습니다. 설정이나 추가 설치 없이 프로젝트의 기존 테스트 프레임워크를 사용해 실행 가능한 테스트를 빠르게 생성합니다.
|
|
|
|
**트리거:** `QA`(개발자 에이전트를 통해) 또는 `bmad-qa-generate-e2e-tests`
|
|
|
|
### 하는 일
|
|
|
|
QA 자동화 워크플로는 다섯 단계를 거칩니다.
|
|
|
|
1. **테스트 프레임워크 감지** - `package.json`과 기존 테스트 파일을 스캔해 프레임워크(Jest, Vitest, Playwright, Cypress 또는 표준 러너)를 찾습니다. 없으면 프로젝트 스택을 분석해 제안합니다.
|
|
2. **기능 식별** - 무엇을 테스트할지 묻거나 코드베이스에서 기능을 자동으로 발견합니다.
|
|
3. **API 테스트 생성** - 상태 코드, 응답 구조, 정상 경로, 오류 사례 1-2개를 다룹니다.
|
|
4. **E2E 테스트 생성** - 의미 기반 로케이터와 사용자에게 보이는 결과 검증으로 사용자 워크플로를 다룹니다.
|
|
5. **실행 및 검증** - 생성된 테스트를 실행하고 실패를 즉시 수정합니다.
|
|
|
|
워크플로는 프로젝트의 구현 산출물 폴더에 저장되는 테스트 요약을 생성합니다.
|
|
|
|
### 테스트 패턴
|
|
|
|
생성된 테스트는 "단순하고 유지보수하기 쉬운" 철학을 따릅니다.
|
|
|
|
- **표준 프레임워크 API만 사용** - 외부 유틸리티나 커스텀 추상화 없음
|
|
- UI 테스트에는 CSS 선택자 대신 **의미 기반 로케이터** 사용(역할, 레이블, 텍스트)
|
|
- 순서 의존성이 없는 **독립 테스트**
|
|
- 하드코딩된 대기(`wait`/`sleep`) 없음
|
|
- 기능 문서처럼 읽히는 명확한 설명
|
|
|
|
:::note[범위]
|
|
QA 워크플로는 테스트만 생성합니다. 코드 리뷰와 스토리 검증에는 코드 리뷰 워크플로(`CR`)를 사용하세요.
|
|
:::
|
|
|
|
### 내장 QA 사용 시점
|
|
|
|
- 새 기능 또는 기존 기능의 빠른 테스트 커버리지
|
|
- 고급 설정 없는 초보자 친화적 테스트 자동화
|
|
- 모든 개발자가 읽고 유지할 수 있는 표준 테스트 패턴
|
|
- 포괄적인 테스트 전략이 불필요한 중소형 프로젝트
|
|
|
|
## 테스트 설계자(TEA) 모듈
|
|
|
|
TEA는 전문가 에이전트(Murat)와 엔터프라이즈급 테스트를 위한 9개 구조화된 워크플로를 제공하는 단독 실행 모듈입니다. 테스트 생성을 넘어 테스트 전략, 위험 기반 계획, 품질 게이트, 요구사항 추적성을 다룹니다.
|
|
|
|
- **문서:** [TEA 모듈 문서](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/)
|
|
- **설치:** `npx bmad-method install` 실행 후 TEA 모듈 선택
|
|
- **npm:** [`bmad-method-test-architecture-enterprise`](https://www.npmjs.com/package/bmad-method-test-architecture-enterprise)
|
|
|
|
### TEA가 제공하는 것
|
|
|
|
| 워크플로 | 목적 |
|
|
| --- | --- |
|
|
| 테스트 설계 | 요구사항에 연결된 포괄적 테스트 전략 생성 |
|
|
| ATDD | 이해관계자 기준을 활용한 인수 테스트 주도 개발 |
|
|
| 자동화 | 고급 패턴과 유틸리티로 테스트 생성 |
|
|
| 테스트 리뷰 | 전략 대비 테스트 품질과 커버리지 검증 |
|
|
| 추적성 | 감사 및 컴플라이언스를 위해 테스트를 요구사항에 매핑 |
|
|
| NFR 평가 | 성능, 보안 등 비기능 요구사항 평가 |
|
|
| CI 설정 | 지속적 통합 파이프라인에서 테스트 실행 구성 |
|
|
| 프레임워크 초기 구조 생성 | 테스트 인프라와 프로젝트 구조 설정 |
|
|
| 릴리스 게이트 | 데이터 기반 출시 여부 결정 |
|
|
|
|
TEA는 P0-P3 위험 기반 우선순위와 선택적 Playwright 유틸리티 및 MCP 도구 통합도 지원합니다.
|
|
|
|
### TEA 사용 시점
|
|
|
|
- 요구사항 추적성 또는 컴플라이언스 문서화가 필요한 프로젝트
|
|
- 많은 기능에 대해 위험 기반 테스트 우선순위가 필요한 팀
|
|
- 릴리스 전 공식 품질 게이트가 있는 엔터프라이즈 환경
|
|
- 테스트 작성 전에 테스트 전략이 계획되어야 하는 복잡한 도메인
|
|
- 내장 QA의 단일 워크플로 접근 방식으로는 부족한 프로젝트
|
|
|
|
## 테스트가 워크플로와 맞물리는 방식
|
|
|
|
QA 자동화 워크플로는 BMad Method 워크플로 맵의 단계 4(구현)에 나타납니다. **전체 에픽이 완료된 후**, 즉 에픽의 모든 스토리가 구현되고 코드 리뷰된 뒤 실행하도록 설계되었습니다. 일반적인 순서는 다음과 같습니다.
|
|
|
|
1. 에픽의 각 스토리마다 개발자(`DS`)로 구현하고 코드 리뷰(`CR`)로 검증합니다
|
|
2. 에픽 완료 후 `QA`(개발자 에이전트를 통해) 또는 TEA의 자동화 워크플로로 테스트를 생성합니다
|
|
3. `bmad-retrospective`를 실행해 배운 점을 기록합니다
|
|
|
|
내장 QA 워크플로는 계획 문서(PRD, 아키텍처)를 로드하지 않고 소스 코드에서 직접 작업합니다. TEA 워크플로는 추적성을 위해 상위 계획 산출물과 통합할 수 있습니다.
|
|
|
|
전체 프로세스에서 테스트가 어디에 맞물리는지는 [워크플로 맵](./workflow-map.md)을 참고하세요.
|