Test — Chạy và tạo tests
Chạy test suite, đo coverage, UI testing qua browser, và tự động generate tests cho code mới.Cú pháp
Luồng hoạt động bên trong
/test — Chạy tests
Bước 2: Execute Test Suites
Tự động detect test framework (Jest/Vitest/Mocha/pytest/go test) và chạy.
Hỗ trợ: unit tests, integration tests, e2e tests.
Bước 3: Coverage Analysis
Đo coverage: lines, branches, functions, statements.
So sánh với target (mặc định 80%).
Bước 4: Analyze Failures
Nếu có failing tests → phân tích root cause.
Kích hoạt
ck:debug nếu cần investigation sâu.Bước 5: UI Tests (nếu có frontend)
Kích hoạt
ck:chrome-devtools cho:- Screenshots, responsive checks
- Accessibility audits
- Console error collection
/test-gen — Generate tests
Bước 3: Generate test cases
Tạo tests bao gồm: happy path + edge cases + error scenarios.
Dựa trên analysis code thực tế, không generic.
Ví dụ thực tế
- /test output
- /test-gen output
So sánh: /test vs /test-gen vs test-generator skill
| Tính năng | /test | /test-gen | test-generator skill |
|---|---|---|---|
| Chạy tests hiện có | Có | Không (chỉ generate) | Không |
| Generate tests mới | Không | Có | Có (proactive) |
| Coverage analysis | Có | Có (sau generate) | Không |
| UI testing | Có (browser) | Không | Không |
| Kích hoạt khi nào | Gõ /test | Gõ /test-gen | Tự động khi viết code mới |
| Fix failing tests | Phân tích, suggest | Không | Không |
So sánh với chat trực tiếp
| Tiêu chí | /test | Chat trực tiếp |
|---|---|---|
| Pre-flight | Tự động typecheck + lint trước | Phải nhắc chạy thủ công |
| Coverage | Đo và report tự động | Phải hỏi riêng |
| UI testing | Browser automation (screenshots, a11y) | Không có khả năng |
| Framework detection | Tự động detect Jest/Vitest/pytest | Phải nói rõ framework |
| Failure analysis | Phân tích root cause, gọi ck:debug | Chỉ đọc error message |
| Report format | Structured QA report | Text tự do |
Khi nào dùng / không dùng
| Dùng | Không dùng |
|---|---|
| Sau khi implement feature | Khi muốn QA toàn diện (dùng /qa-full:full) |
| Pre-commit kiểm tra nhanh | Khi cần test theo PRD (dùng /qa-full:check) |
| Đo coverage hiện tại | Khi cần verify GitHub issue (dùng /qa-full:verify-issue) |
| Generate tests cho code mới | Khi cần TDD workflow (dùng /qa-full:tdd) |
Test Framework hỗ trợ
- Vitest (Unit)
- React Testing Library
- Playwright (E2E)
Kết hợp với QA
| Mục đích | Lệnh Dev | Lệnh QA |
|---|---|---|
| Chạy tests | /test | /qa-full:check |
| Generate tests | /test-gen | /qa-full:check (bước 5) |
| Fix tests | /fix:test | /qa-full:full (bước 5) |
| Coverage report | /test | /qa-full:audit |
Coverage Thresholds
| Metric | Target | Minimum |
|---|---|---|
| Lines | 80%+ | 60% |
| Branches | 75%+ | 55% |
| Functions | 85%+ | 65% |
| Statements | 80%+ | 60% |
- KHÔNG BAO GIỜ bỏ qua failing tests — fix root cause, không dùng mocks/cheats/tricks
- Tất cả critical paths phải có test coverage
- Validate happy path VÀ error scenarios
- Tests phải isolation — không phụ thuộc lẫn nhau
- Tests phải deterministic và reproducible