feat: add --all --run autopilot mode for instant write-and-test execution
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -10,38 +10,42 @@ Skill này là công cụ chính để tự động tạo ra file Unit Test cho
|
||||
## Cách kích hoạt
|
||||
Người dùng có thể kích hoạt linh hoạt theo các chế độ (từ 1 lệnh duy nhất cho toàn bộ dự án đến từng file đơn lẻ):
|
||||
|
||||
1. **🌟 Chế độ 1 Lệnh Duy Nhất Cho Toàn Bộ Dự Án (All-in-One Full Coverage Mode - Khuyên dùng cho dự án lớn)**:
|
||||
1. **🌟 Chế độ Autopilot Khép Kín: Viết Xong Chạy Test Luôn (`--all --run` hoặc `--autopilot`)**:
|
||||
```text
|
||||
/laravel-unit-test --all
|
||||
```
|
||||
**Cơ chế cam kết không bỏ sót bất kỳ file nào:**
|
||||
- **Giai đoạn 1 (Lập Manifest Kiểm Soát)**: Tự động quét toàn bộ `app/` (và `Modules/`), lọc ra tất cả các class có logic (Services, Actions, FormRequests, Rules, Jobs, Policies, Middlewares, Listeners, Observers, Repositories, Custom Casts). Lập file danh sách kiểm soát `tests/.test-manifest.json` (ví dụ: Tổng cộng 42 files).
|
||||
- **Giai đoạn 2 (Thực Thi Tuần Tự & Theo Dõi Tiến Độ)**: Duyệt tuần tự từng class trong manifest (`[1/42]`, `[2/42]`,...), sinh test tương ứng và đánh dấu `[COMPLETED]`. Không bao giờ bị tràn context và có thể tiếp tục nếu bị gián đoạn.
|
||||
- **Giai đoạn 3 (Tự Động Chạy Thử & Sửa Lỗi Ngay - Auto-Healing)**: Sinh xong file nào lập tức chạy `./test-runner.sh --filter=<Test>` cho file đó. Nếu FAIL -> Tự động đọc log lỗi và sửa lại test cho đến khi PASS 100%.
|
||||
- **Giai đoạn 4 (Báo Cáo Nghiệm Thu Độ Phủ)**: Chạy `./test-runner.sh --coverage` và in bảng tổng kết: `42/42 files covered, 100% Passed, Code Coverage: > 80%`.
|
||||
|
||||
2. **Chế độ Hàng loạt theo Thư mục (Batch Directory Mode)**:
|
||||
```text
|
||||
/laravel-unit-test app/Services/
|
||||
/laravel-unit-test --all --run
|
||||
# Hoặc:
|
||||
/laravel-unit-test app/Actions/
|
||||
/laravel-unit-test --autopilot
|
||||
```
|
||||
*Chỉ với 1 lệnh duy nhất, Agent sẽ thực thi trọn vẹn quy trình 4-trong-1:*
|
||||
- **Tự động Setup**: Kiểm tra dependencies & SQLite in-memory, tự cài đặt gói thiếu.
|
||||
- **Tự động Quét**: Lập manifest toàn bộ class trong dự án `app/`.
|
||||
- **Tự động Viết & Test Ngay**: Sinh test đến đâu -> Chạy test `./test-runner.sh` ngay đến đó.
|
||||
- **Tự động Sửa Lỗi (Auto-Healing)**: Nếu test đỏ (Fail) -> Tự đọc log lỗi và sửa lại test cho đến khi XANH (Pass 100%).
|
||||
- **Nghiệm thu**: Đo Code Coverage và in bảng tổng kết cuối cùng.
|
||||
|
||||
2. **Chế độ Viết Cho 1 File & Test Luôn (`--run`)**:
|
||||
```text
|
||||
/laravel-unit-test app/Services/PaymentService.php --run
|
||||
```
|
||||
*Sinh test cho class và lập tức chạy thử để xác nhận Pass 100% trước khi hoàn thành.*
|
||||
|
||||
3. **Chế độ Hàng loạt theo Thư mục (Batch Directory Mode)**:
|
||||
```text
|
||||
/laravel-unit-test app/Services/ --run
|
||||
# Hoặc toàn bộ Actions:
|
||||
/laravel-unit-test app/Actions/ --run
|
||||
```
|
||||
|
||||
3. **Chế độ Theo Module / DDD (Module Mode)**:
|
||||
4. **Chế độ Theo Module / DDD (Module Mode)**:
|
||||
```text
|
||||
/laravel-unit-test Modules/Order/
|
||||
/laravel-unit-test Modules/Order/ --run
|
||||
# Hoặc:
|
||||
/laravel-unit-test app/Domains/Payment/
|
||||
```
|
||||
|
||||
4. **Chế độ Quét & Phủ Test Toàn Dự Án (Untested Audit Mode)**:
|
||||
```text
|
||||
/laravel-unit-test --untested
|
||||
/laravel-unit-test app/Domains/Payment/ --run
|
||||
```
|
||||
|
||||
5. **Chế độ Theo Git Diff (Changed Files Mode - Dành Cho Pull Request)**:
|
||||
```text
|
||||
/laravel-unit-test --changed
|
||||
/laravel-unit-test --changed --run
|
||||
```
|
||||
|
||||
6. **Chế độ File đơn lẻ (Single File Mode)**:
|
||||
|
||||
Reference in New Issue
Block a user