--- 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)을 참고하세요.