3.9 KiB
3.9 KiB
tdc114plus 테스트 자동화 스크립트 계획
작성일: 2026-07-02 상태: v1.0 초기 스크립트 기준
목적: docs/tdc114plus-testing-policy-2026-07-02.md에 정의한 테스트 정책을 실제 scripts/ 파일과 연결하고, 즉시 사용 가능한 스크립트와 향후 구현이 필요한 scaffold 스크립트를 구분한다.
1. 즉시 사용 가능한 스크립트
| 스크립트 | 목적 | 실행 예 |
|---|---|---|
scripts/format-dart.sh |
Docker Flutter 이미지에서 dart format lib test 실행 |
./scripts/format-dart.sh |
scripts/quality-gate.sh |
flutter analyze, flutter test 순차 실행 |
./scripts/quality-gate.sh |
scripts/generate-release-report.sh |
git 상태와 릴리스 체크리스트 report 생성 | ./scripts/generate-release-report.sh |
scripts/perf_smoke.sh |
현재 앱/테스트 파일 수와 기본 상태 출력 | ./scripts/perf_smoke.sh |
2. Scaffold 상태의 스크립트
아래 스크립트는 파일은 존재하지만, 기반 기능이 아직 없으므로 실행 시 scaffold 안내와 함께 종료한다.
| 스크립트 | 현재 상태 | 완성 조건 |
|---|---|---|
scripts/mock-server.sh |
status, stop은 가능. start는 미구현 안내 |
API 계약 기반 mock server 구현 |
scripts/save-snapshots.sh |
snapshot source가 있으면 report 경로로 복사 | widget/integration screenshot 또는 snapshot 생성 체계 |
scripts/integration_tests.sh |
TDC114_API_BASE와 integration_test/ 필요 |
staging API 또는 mock server 기반 integration test |
scripts/redteam/run_all.sh |
현재 AI 기능 없음 안내 | LLM/프롬프트 기반 기능이 실제 추가될 때 |
3. Phase별 사용 기준
Phase 3: Mock 기반 1차 UI
필수:
./scripts/format-dart.sh
./scripts/quality-gate.sh
선택:
./scripts/save-snapshots.sh
단, snapshot 산출물이 생긴 뒤 사용한다.
Phase 4: 실제 API 연동
필수 후보:
TDC114_API_BASE=https://staging.example.com ./scripts/integration_tests.sh
완성 조건:
app/integration_test/테스트 추가- staging 또는 local mock API endpoint 확정
- 민감정보 없는 test fixture 사용
Phase 5: 핵심 액션
필수 후보:
./scripts/quality-gate.sh
./scripts/perf_smoke.sh
추가 예정:
- 전화걸기/문자보내기 URL 생성 테스트
- 즐겨찾기 로컬 저장소 테스트
Phase 6: 빌드/배포 준비
필수 후보:
./scripts/generate-release-report.sh
추가 예정:
- Android debug APK build wrapper
- 수동 검증 체크리스트 자동 생성
4. 운영 원칙
- 문서에 명령을 추가할 때는 실제
scripts/파일도 함께 추가하거나 scaffold 상태를 명시한다. - scaffold 스크립트는 조용히 성공하지 않고, 미구현이면 non-zero exit code로 종료한다.
- 실제 CI gate에 연결할 수 있는 스크립트는
quality-gate.sh부터 시작한다. - AI/LLM redteam 자동화는 현재 앱 범위 밖이므로
redteam/run_all.sh는 보류 상태로 유지한다. - 자동화 스크립트 실행 결과는
docs/test-logs/YYYY-MM-test-execution-log.md에 월별로 누적 기록한다.
5. Playwright MCP 활용 예정
Playwright MCP는 향후 web/preview 기반 화면 확인이 가능해지는 시점부터 테스트 정책에 활용한다.
우선 적용 후보:
- 로그인 화면 smoke test
- 직원목록/검색/가족사 필터 화면 회귀 확인
- 직원 상세 화면 표시 확인
- screenshot 기반 UI 리뷰 자료 생성
- 텍스트 overflow, 주요 버튼 표시, 라우팅 이동 확인
현재는 Flutter web/preview 실행 방식이 확정되지 않았으므로 별도 scripts/playwright-* 파일은 만들지 않는다. 실행 방식이 확정되면 Playwright MCP 시나리오 문서와 월별 테스트 로그 기록 형식을 추가한다.