50 phútNâng cao
Bạn sẽ học được
  • Dùng AI hỗ trợ viết kiểm thử mà vẫn kiểm soát chất lượng
  • Hiểu giới hạn của self-healing và agent
  • Kiểm thử ứng dụng dùng LLM bằng eval set

AI thay đổi cách ta kiểm thử, và cũng tạo ra loại phần mềm mới cần kiểm thử theo cách khác.

AI giúp gì cho người kiểm thử?

Trợ lý AI (như Claude, GitHub Copilot, Cursor) có thể: đề xuất ca kiểm thử từ yêu cầu, sinh dữ liệu thử, viết khung kiểm thử, giải thích log lỗi, gợi ý bộ chọn và hỗ trợ bảo trì kịch bản. Các báo cáo ngành năm 2026 đều cho rằng AI làm việc viết kiểm thử rẻ đi nhưng không làm việc quyết định kiểm thử cái gì rẻ đi.

Lưu ý

Nếu yêu cầu AI "tăng độ phủ", bạn dễ nhận về hàng trăm kiểm thử dư thừa, giòn và kiểm tra chính cài đặt thay vì hành vi. Quy tắc an toàn: con người quyết định cần kiểm thử gì (rủi ro, tiêu chí chấp nhận), AI hỗ trợ viết; luôn review kiểm thử do AI sinh ra như review mã.

Tự chữa lành (self-healing) và tác tử kiểm thử

Nhiều nền tảng quảng bá kiểm thử "tự chữa lành" khi bộ chọn thay đổi và tác tử (agent) tự khám phá ứng dụng để sinh kiểm thử. Có thể giảm công bảo trì ở các kiểm thử bạn đã tin cậy, nhưng cần thận trọng: một tác tử được giao "hoàn thành nhiệm vụ" có thể bỏ qua một lỗi để đi tiếp, khiến kiểm thử xanh trong khi lỗi vẫn tồn tại. Hãy giữ con người trong khâu phân loại lỗi và kiểm soát việc tự động sửa kiểm thử. Số liệu hiệu quả trong tài liệu quảng cáo của nhà cung cấp cần được kiểm chứng trong dự án của bạn.

Kiểm thử ứng dụng dùng AI (LLM)

Ứng dụng dùng mô hình ngôn ngữ cho đầu ra không xác định (cùng câu hỏi có thể ra câu trả lời khác nhau), nên không thể chỉ dùng assert so sánh chuỗi. Cách làm hiện nay:

  • Bộ đánh giá (eval set): tập câu hỏi mẫu kèm tiêu chí chấm, chạy lại mỗi khi đổi prompt, mô hình hoặc dữ liệu.
  • Kiểm tra tính chất thay vì so khớp chính xác: đúng định dạng JSON, có trích dẫn nguồn, không chứa thông tin cấm, độ dài hợp lý.
  • LLM làm giám khảo cho các tiêu chí mềm (đúng, đầy đủ, văn phong) – cần hiệu chuẩn bằng mẫu do người chấm.
  • Red-teaming: thử prompt injection, jailbreak, yêu cầu lộ dữ liệu, thiên kiến.
  • Giám sát sau triển khai: ghi lại phản hồi, thu phản hồi của người dùng, phát hiện trôi (drift).
# Ví dụ tối giản: đánh giá một hàm trả lời bằng tính chất
cau_hoi = [
    ("Thủ đô của Việt Nam là gì?", ["Hà Nội"]),
    ("2 + 2 bằng mấy?", ["4", "bốn"]),
]

def danh_gia(tra_loi):          # tra_loi(q) gọi mô hình của bạn
    dat = 0
    for q, tu_khoa in cau_hoi:
        kq = tra_loi(q).lower()
        dat += any(t.lower() in kq for t in tu_khoa)
    return dat / len(cau_hoi)

assert danh_gia(tra_loi) >= 0.9   # ngưỡng chấp nhận

Đạo đức và an toàn khi dùng AI để kiểm thử

Không dán dữ liệu khách hàng thật, mã nguồn bí mật hay khoá API vào công cụ AI bên ngoài khi chưa được phép. Kiểm tra chính sách dữ liệu của công cụ và dùng dữ liệu tổng hợp. Ghi lại phần nào do AI sinh để dễ truy vết khi có sự cố.

Thực hành
  1. Đưa yêu cầu "đặt lại mật khẩu" cho một trợ lý AI, nhờ liệt kê ca kiểm thử, rồi loại bỏ hoặc sửa các ca không hợp lý.
  2. Xây eval set 10 câu hỏi cho một chatbot bạn đang dùng và chấm điểm thủ công.
  3. Viết 5 prompt tấn công (prompt injection) để thử chatbot đó và ghi nhận kết quả.
Tóm tắt bài học

Bạn đã biết nguyên tắc dùng AI hỗ trợ kiểm thử (con người quyết định, AI hỗ trợ viết), giới hạn của tác tử tự động và cách kiểm thử ứng dụng LLM bằng eval set, red-teaming và giám sát.