Hướng dẫn Khởi động Nhanh
Bắt đầu sử dụng SpecTest trong chưa đầy 3 phút.
Điều kiện tiên quyết
Trước khi bắt đầu, hãy đảm bảo bạn đã có:
- Môi trường Go 1.22+ (hoặc tải file nhị phân biên dịch sẵn từ GitHub Releases).
- Một file đặc tả API theo định dạng OpenAPI 3.x (
openapi.yamlhoặcopenapi.json). - (Tùy chọn) API key của nhà cung cấp LLM (Google Gemini, OpenAI) hoặc một instance Ollama chạy offline trên máy để sinh test và phân tích lỗi bằng AI.
Bước 1: Cài đặt SpecTest
Bước 2: Cấu hình LLM Provider
SpecTest quản lý thông tin chứng thực an toàn tại ~/.spectest/credentials.yaml với quyền POSIX nghiêm ngặt (0600).
Kiểm tra cấu hình đang hoạt động:
Bước 3: Sinh Bộ Kiểm thử (spectest generate)
Phân tích hợp đồng OpenAPI và tài liệu yêu cầu nghiệp vụ để sinh bộ kịch bản kiểm thử:
Lệnh này sẽ tạo ra:
- tests/spectest.yaml: Bộ kịch bản kiểm thử đầy đủ schema v1 (servers, apis, analysis, seed, setup, scenarios).
- tests/spectest.log.yaml: Snapshot baseline ban đầu kèm mã băm SHA-256 chuẩn tắc.
- tests/test_matrix.md: Báo cáo ma trận bao phủ liên kết từng endpoint với các scenario kiểm thử.
Bước 4: Chạy Bộ Kiểm thử (spectest run)
1. Chạy với một Target duy nhất
Thực thi bộ kịch bản kiểm thử với API server đang chạy:
2. Chạy với nhiều Microservices (Multi-Target)
Nếu bộ kiểm thử gọi đến nhiều alias server (ví dụ {shop} và {billing}):
spectest run -f ./tests/spectest.yaml \
-t shop=http://localhost:8001 \
-t billing=http://localhost:8002
3. Tự động hóa Docker Compose & AI Triage
Tự động khởi động database/dịch vụ nền qua Docker, chạy kiểm thử và kích hoạt AI phân tích nếu có lỗi:
spectest run -f ./tests/spectest.yaml \
--compose docker-compose.test.yml \
-t http://localhost:8080 \
--triage
4. Chỉ chạy các kịch bản bị ảnh hưởng bởi cập nhật
Sau khi cập nhật API spec, chỉ chạy các scenario bị ảnh hưởng theo bản ghi cập nhật mới nhất trong spectest.log.yaml:
Bước 5: Khởi chạy Giao diện Web UI (spectest ui)
Nếu bạn thích thao tác trực quan trên trình duyệt:
Truy cập http://127.0.0.1:8088 để:
- Workspace: Tải lên và quản lý các file OpenAPI, Markdown.
- Suite Editor: Xem và chỉnh sửa trực quan scenarios, setup blocks và các bước HTTP.
- Real-Time Runner: Bấm chạy test với luồng log thời gian thực qua Server-Sent Events (SSE), biểu đồ latency và báo cáo AI triage.
- History: Xem lịch sử các lần update và so sánh trực quan diff giữa các phiên bản.