Thử kết hợp Apidog CLI với Claude Code (Nhật ký vận hành test local)
Thành thật mà nói, nhóm của tôi cũng có kiểm thử tự động API. Nhưng nó ở trạng thái "có thì có, nhưng khó dùng".
Kịch bản kiểm thử ở đâu? Nên chạy cái nào? Viết lệnh như thế nào? Chuyển đổi môi trường ra sao? Xem báo cáo sau khi chạy ở đâu? Những bước nhỏ nhặt này chồng chất lên nhau, biến việc kiểm thử hồi quy (regression testing) từ "việc có thể làm nhanh gọn" thành "việc phải dành riêng thời gian mới làm được".
Trong bài viết này, tôi sẽ giới thiệu quy trình làm việc mà tôi thực sự đang vận hành trên môi trường local. Đó là sự kết hợp giữa tài sản kiểm thử tự động của Apidog (kịch bản/bộ kiểm thử) và khả năng thao tác terminal của Claude để thực hiện "kiểm thử tự động API" chỉ bằng một câu nói ngôn ngữ tự nhiên:
"Run regression testing for 01_e2e_happy_path in the dev environment. Once completed, summarize the results with these 4 points: pass rate, failed test cases, estimated cause of failure, and suggested fix procedures."

Claude Code sẽ tự động khớp với Claude Skills, xác định bài kiểm thử tương ứng và thực thi Apidog CLI. Cuối cùng, nó sẽ tóm tắt kết quả thành một kết luận dễ đọc. Sự kết hợp này đặc biệt phù hợp cho kiểm thử tự động API, kiểm thử hồi quy, và đưa việc kiểm thử vào quy trình phát triển hàng ngày.
Tại sao Cần "Tự nhiên hóa" Kiểm thử Tự động API
Ở nhiều nhóm, kiểm thử tự động có đủ "năng lực thực thi" nhưng thiếu "tính khả dụng":
- Người mới không biết có những bài kiểm thử nào, hay nên chạy bài nào.
- Lệnh CLI quá dài, dễ nhầm lẫn các tham số môi trường.
- Việc kiểm tra log hoặc xem báo cáo sau khi kiểm thử thất bại tốn nhiều chi phí giao tiếp.
- Khó thực hiện kiểm thử hồi quy nhanh chóng trước khi commit hoặc merge.
Giá trị của việc kích hoạt bằng ngôn ngữ tự nhiên nằm ở chỗ nó hạ thấp rào cản "thực thi kiểm thử" xuống mức tương đương với việc nói một câu, trong khi vẫn tận dụng được hệ thống kiểm thử và tính năng báo cáo của công cụ chuyên dụng (Apidog).
Bức tranh Toàn cảnh: Phân chia Vai trò Apidog × Claude
Quy trình này bao gồm 3 thành phần:
- Apidog CLI: Thực thi kịch bản/bộ kiểm thử Apidog và xuất báo cáo CLI/HTML.
- Claude Code: Trợ lý AI trong terminal, có khả năng chạy lệnh, thao tác file và thực thi script.
- Claude Skills (Agent Skills): Cung cấp cho Claude một "luồng thực thi khả dụng", dạy nó cách chọn bài kiểm thử, chuyển đổi môi trường, chạy CLI và cách tóm tắt kết quả.
Tóm lại:
Ngôn ngữ tự nhiên → Claude khớp với Skill → Gọi script để chạy Apidog CLI → Phân tích đầu ra → Tóm tắt kết luận
Công việc Chuẩn bị
Để chạy Apidog CLI và Claude Code, trước tiên bạn cần chuẩn bị môi trường Node và hoàn tất cài đặt.
1) Yêu cầu Môi trường: Node.js
Khuyến nghị Node 18+ hoặc 20+. Kiểm tra trong terminal:
node -v
npm -v
2) Cài đặt Apidog CLI
npm install -g apidog-cli
apidog --version
Nếu số phiên bản hiện ra nghĩa là cài đặt thành công.
3) Cài đặt Claude Code
npm install -g @anthropic-ai/claude-code
claude --version
claude # Làm theo hướng dẫn để đăng nhập trong lần chạy đầu tiên
Tổ chức Tài sản Kiểm thử: Ví dụ với Ứng dụng Demo do AI tạo
Lần này, để xác minh, tôi đã sử dụng AI để tạo một bản demo trang web thương mại điện tử đơn giản (môi trường local http://127.0.0.1:3001). Đối với ứng dụng demo này, tôi đã chuẩn bị 2 loại kiểm thử dưới đây để xác nhận "độ tin cậy" và "tính tái lập ổn định":
-
01_e2e_happy_path (E2E Happy Path) Luồng hoạt động chính (Đăng nhập → Danh sách sản phẩm → Tạo đơn → Thanh toán). Nếu môi trường local hoạt động bình thường, điều này đảm bảo rằng chuỗi hành động mua sắm của người dùng đang hoạt động chính xác.
-
02_payment_should_fail (Kiểm thử Biên/Thất bại) Kịch bản thất bại trong các điều kiện cụ thể (ví dụ: cài đặt để đơn hàng trên 6000 yên sẽ gây lỗi thanh toán). Nó được sử dụng để demo xem liệu AI có thể phân tích chính xác nguyên nhân từ log khi phát hiện "kiểm thử thất bại" hay không.
Tại sao tên file lại quan trọng?
Bằng cách đưa "ý nghĩa (ngữ cảnh)" vào tên file, Claude có thể suy luận ra bài kiểm thử phù hợp ngay cả từ những chỉ thị mơ hồ bằng ngôn ngữ tự nhiên.
Ví dụ: nếu bạn đặt tên là 02_payment_should_fail, bạn không cần phải nói chính xác tên file. Chỉ cần nói "Kiểm tra các mẫu lỗi thanh toán" hoặc "Hồi quy phần thanh toán", Claude sẽ hiểu "À, là cái này" và nắm bắt được ý định. Đây là bí quyết để hiện thực hóa "Thực thi Kiểm thử qua Hội thoại".
Triển khai Claude Skills: Đưa "Cách chạy Kiểm thử" vào Repo
Lợi thế của Claude Skills là nó biến luồng thực thi thành tài sản dự án có thể quản lý phiên bản và review được. Không bị thất lạc qua truyền miệng.

Một thư mục Skill tối thiểu có thể sử dụng được trông như thế này:
.claude/skills/apidog-tests/SKILL.md: Điều kiện kích hoạt + Luồng thực thi (Cốt lõi)env/: Token/envId cho các môi trường khác nhau (Không commit bí mật lên Git)tests/: File Markdown cho từng bài kiểm thử (Chứa lệnh CLI)scripts/: Lắp ráp và chạy CLI (Giảm bớt ngữ cảnh và chi phí lắp ráp lệnh thủ công)
Lợi ích của cách tổ chức này:
- Apidog tiếp tục duy trì kịch bản/bộ kiểm thử.
- Skill đảm nhận "Logic chọn lựa + Quản lý môi trường + Quy chuẩn thực thi + Tóm tắt đầu ra".
- Thành viên trong nhóm không cần nhớ lệnh, chỉ cần nói ra yêu cầu.
Apidog CLI: Động cơ Thực thi, Skills chỉ là "Bao bọc và Tự động hóa"

Bạn có thể sao chép trực tiếp lệnh CLI từ trang kịch bản/bộ kiểm thử của Apidog (khu vực CI/CD hoặc CLI).
Định dạng điển hình như sau:
apidog run --access-token <TOKEN> -t <SCENARIO_ID> -e <ENV_ID> -n 1 -r html,cli
Cách được khuyến nghị là dán lệnh vào tests/*.md và quản lý các tham số nhạy cảm bằng biến môi trường (tránh rò rỉ và chuyển đổi môi trường thuận tiện hơn).
Kích hoạt Kiểm thử API bằng Một Câu nói: Mẫu Có sẵn Dùng ngay
Vào thư mục dự án và khởi động Claude Code:
claude

Chạy kiểm thử chỉ với một câu:
"Run regression testing for 01_e2e_happy_path in the dev environment. Once completed, summarize the results with these 4 points: pass rate, failed test cases, estimated cause of failure, and suggested fix procedures."
Những gì Claude làm cho bạn:
- Nhận diện kịch bản/bộ kiểm thử bạn muốn chạy (
01_e2e_happy_path). - Kiểm tra môi trường (
dev) và tải các biến môi trường tương ứng. - Gọi script để thực thi Apidog CLI.
- Tóm tắt đầu ra theo 4 điểm đã yêu cầu và đưa ra kết luận có cấu trúc.
Đầu ra "Giống Người" hơn: Tóm tắt Tự động Nhanh hơn Nhiều so với Đọc Log
Đầu ra CLI truyền thống thân thiện với máy móc nhưng không thân thiện với con người. Claude Skills sắp xếp đầu ra thành bản tóm tắt phù hợp cho việc cộng tác phát triển/kiểm thử. Cụ thể:
- Tỷ lệ Đạt: Nắm bắt tỷ lệ thành công tổng thể trong nháy mắt.
- Ca Kiểm thử Thất bại: Thấy rõ bài kiểm thử nào bị lỗi.
- Dự đoán Nguyên nhân Lỗi: Lỗi xác thực, vấn đề biến môi trường, sai assertion, dữ liệu mock không khớp, v.v.
- Đề xuất Quy trình Sửa lỗi: Đổi môi trường để so sánh, chỉ chạy module cụ thể, thêm assertion, v.v.

Bước này là chìa khóa của "nâng cao hiệu quả". Đồng nghiệp không cần phải hỏi đi hỏi lại "Tình hình sao rồi? Lỗi ở đâu?". Bạn chỉ cần dán bản tóm tắt của Claude vào khung chat và chuyển sang bước tiếp theo.
Lợi ích Cốt lõi của Quy trình này
Nếu bạn thực sự muốn đưa kiểm thử tự động API vào phát triển hàng ngày, lợi ích của sự kết hợp này rất rõ ràng:
- Hạ thấp Rào cản: Người mới không cần nhớ lệnh hay tìm ID kịch bản, chỉ cần nói chuyện tự nhiên.
- Chuẩn hóa: Định nghĩa kiểm thử, biến môi trường, script thực thi được quản lý phiên bản và tích lũy trong repo.
- Xác định Vấn đề Nhanh chóng: Lỗi không chỉ là "Màu Đỏ", mà đi kèm giải thích nguyên nhân và đề xuất sửa chữa.
- Dễ dàng Tích hợp Quy trình: Mở rộng tự nhiên sang tự động hồi quy trước khi commit/merge.
Các Hướng Mở rộng Phổ biến
- So sánh Đa Môi trường (dev vs test): Chạy cùng một bài kiểm thử trên các môi trường khác nhau và tự động so sánh sự khác biệt.
- Lọc Kiểm thử Dựa trên Thay đổi Git: Chỉ chạy các bài kiểm thử liên quan đến module bị ảnh hưởng để giảm thời gian hồi quy.
- Tự động Hồi quy Pre-Commit/Pre-Merge: Tự động chạy các bài kiểm thử quan trọng ở giai đoạn commit/PR để bắt lỗi sớm.
Tóm lại
Apidog cung cấp khả năng kiểm thử tự động API chuyên sâu, còn Claude Skills cung cấp khả năng điều khiển bằng ngôn ngữ tự nhiên và điều phối thực thi. Giá trị của việc kết hợp cả hai là biến "Thực thi Kiểm thử" từ một bước cần thao tác chuyên môn thành một hành động có thể làm ngay tức thì.
Nếu bạn muốn tăng tần suất sử dụng kiểm thử tự động API và biến việc hồi quy thành một phần của phát triển hàng ngày, quy trình Apidog × Claude này rất đáng để thử.
Bản thân tôi từ khi bắt đầu sử dụng sự kết hợp này, rào cản tâm lý đối với việc chạy kiểm thử đã giảm đi đáng kể. "Để sau rồi làm" đã chuyển thành "Kiểm tra ngay bây giờ". Tôi tin đây là giá trị thực sự của các công cụ AI.
Nếu bạn thấy bài viết này hữu ích, hãy chia sẻ nó nhé. Nếu nhóm của bạn cũng gặp những thách thức tương tự, hãy cho chúng tôi biết trong phần bình luận. Hãy cùng nhau tìm ra giải pháp!
All rights reserved