一键导入
automated-test-case-generation
Hướng dẫn tự động sinh kịch bản kiểm thử (Test Case) và Test Script cho API/Unit bằng AI (LLM) hoặc công cụ chuyên dụng.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Hướng dẫn tự động sinh kịch bản kiểm thử (Test Case) và Test Script cho API/Unit bằng AI (LLM) hoặc công cụ chuyên dụng.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Skill hướng dẫn triển khai và vận hành 6 trụ cột cốt lõi của pipeline NL2SQL: Schema Linking, Value Profiling, Ambiguity Detection, Generation Trace, Retry & Repair, Evaluation Suite. Triggers: Khi sửa schema, thêm bảng mới, nâng cấp prompt, thay LLM, debug SQL sai.
Skill hướng dẫn xây dựng và vận hành Semantic Layer (Lớp ngữ nghĩa doanh nghiệp). Giúp AI hiểu các khái niệm nghiệp vụ đặc thù (KPI, thuật ngữ, logic tính toán) mà Database Schema không thể hiện rõ. Bao gồm: Glossary, Value Profiles, Synonym Dictionary, Few-shot Samples. Triggers: Khi AI sinh SQL sai do không hiểu thuật ngữ nghiệp vụ, khi onboard DB mới.
Hướng dẫn dành cho AI Agent để sử dụng Trivy quét lỗ hổng bảo mật, cấu hình sai, lộ secret và kiểm tra bản quyền.
Triggers whenever the user asks to write, run, or configure API Integration Tests using Pytest and Httpx for FastAPI services. Contains strict directives for test structure, dynamic execution, mocking, and reporting.
Hướng dẫn điền kết quả kiểm thử từ API Integration và K6 Performance vào biểu mẫu Test Report chuẩn.
Hướng dẫn chạy Load Test và đo lường hiệu năng bằng công cụ k6.
| name | Automated Test Case Generation |
| description | Hướng dẫn tự động sinh kịch bản kiểm thử (Test Case) và Test Script cho API/Unit bằng AI (LLM) hoặc công cụ chuyên dụng. |
Skill này hướng dẫn quy trình tự động sinh ra các kịch bản kiểm thử (Test Cases) API có độ bao phủ cao (Happy paths, Edge cases, Negative cases) bằng AI Agent/LLM. Workflow này gắn liền trực tiếp với quy trình API Integration Testing, giúp chuyển đổi mạch lạc từ Đặc tả API (Swagger/Mã nguồn) -> Bảng Test Case -> Code Test Tự động (Pytest + Httpx).
Để AI sinh ra Test Case API chính xác và bám sát dự án, yếu tố quan trọng nhất là cung cấp Ngữ cảnh (Context) đầy đủ.
Tập hợp một hoặc nhiều tài liệu sau làm đầu vào:
Đóng vai AI như một chuyên gia kiểm thử. Sử dụng cấu trúc lệnh rõ ràng:
*"Với tư cách là một QA Engineer, hãy phân tích đoạn mã nguồn/API Spec dưới đây và sinh ra danh sách Test Case đầy đủ cho API
POST /api/v1/users. Yêu cầu:
- Bao phủ các luồng: Happy Path, Boundary/Edge Cases (dữ liệu rỗng, sai format), và Negative Cases (Lỗi xác thực, sai logic).
- Trình bày dưới dạng Bảng Markdown gồm các cột: TC ID, Mô tả (Description), Dữ liệu đầu vào (Input), Kết quả mong đợi (Expected Result)."*
Bạn có thể yêu cầu sinh dưới dạng Bảng (chuẩn QA) hoặc JSON để thuận tiện cho việc chạy test tự động.
ĐẶC BIỆT QUAN TRỌNG: Phải lưu các Test Cases đã được sinh ra vào thư mục chuẩn của skill, ví dụ: .agents/agents/test-case-generation/output/test_cases.json hoặc .agents/agents/test-case-generation/output/test_cases.md.
Mẫu Bảng Test Case truyền thống (nếu lưu dạng Markdown):
| TC ID | Description | Input | Expected Result |
|---|---|---|---|
| TC_01 | Đăng nhập thành công với tài khoản đúng | username="admin", pass="123456" | HTTP 200, trả về token |
| TC_02 | Bỏ trống mật khẩu | username="admin", pass="" | HTTP 422, message: "Field required" |
Mẫu JSON (Đề xuất để truyền sang API Integration):
[
{
"tc_id": "TC_01",
"description": "Đăng nhập thành công",
"input": {"username": "admin", "pass": "123456"},
"expected_status": 200
}
]
Mẫu BDD (Behavior-Driven Development) cho Automation:
Feature: Quản lý người dùng
Scenario: Tạo user với email không hợp lệ
Given tôi có quyền Admin
When tôi gọi API tạo user với email "abc@.com"
Then hệ thống phải trả về lỗi HTTP 422 Unprocessable Entity
Khi đã có bảng Test Case API, bước tiếp theo là lập trình mã kiểm thử tự động (Test Scripts) dựa trên bộ kỹ năng API Integration Testing (sử dụng pytest và httpx). Bạn hoàn toàn có thể tiếp tục yêu cầu AI sinh code test từ file Test Case vừa tạo.
Quy trình:
test_cases.md)."Dựa trên file
test_cases.mdvà tuân thủ các chuẩn trong tài liệuapi-integration/SKILL.md, hãy viết file test integration bằng Python. Sử dụngpytest.mark.asyncio, thư việnhttpxvà fixtureasync_clienttừconftest.py. Đảm bảo assert đúng status code và mock các phụ thuộc bên ngoài nếu cần thiết."
.py và tiến hành chạy test (pytest tests/integration/ -v).Ngoài việc dùng AI, nếu dự án dùng Python, bạn có thể áp dụng Property-Based Testing với thư viện Hypothesis. Phương pháp này tự động sinh ra hàng ngàn giá trị đầu vào ngẫu nhiên để tìm các lỗi tiềm ẩn (Edge Cases).
from hypothesis import given, strategies as st
from main import app
from fastapi.testclient import TestClient
client = TestClient(app)
# Tự động sinh hàng trăm chuỗi text ngẫu nhiên cho tham số q
@given(q=st.text(max_size=50))
def test_search_endpoint_fuzzy(q):
# Mục tiêu là kiểm tra xem API có bị crash (HTTP 500) khi gặp ký tự lạ không
response = client.get(f"/api/v1/search?q={q}")
# API có thể trả về lỗi 422 (validation) hoặc 200 (ok), nhưng không được lỗi 500
assert response.status_code in [200, 404, 422]