WEBSITE ĐANG PHÁT TRIỂN

#Automation

Test coverage khi vibe code: AI viết tests thì ai chịu trách nhiệm?

AI viết code nhanh, AI viết tests cũng nhanh – nhưng khi cả hai cùng đến từ một nguồn, coverage 100% vẫn có thể che giấu bug production. Đây không phải lỗi của AI. Đây là structural problem của vibe coding workflow: không có adversarial thinking, không có người hỏi "nhưng nếu... thì sao?" Vai trò QA không bị AI xóa bỏ – nó đang trở nên quan trọng hơn bao giờ hết. Tuần trước, tôi review một đợt regression sau khi team deploy feature mới. CI green. Test coverage 94%. Zero failing tests. Mọi thứ sạch đẹp trên dashboard. Hai giờ sau khi lên production – một user nhắn tin vào support: "Giỏ hàng của tôi bị mất khi tôi quay lại từ trang thanh toán." Tôi kéo code ra. Dev gen bằng Cursor, tests cũng gen bằng Cursor. Coverage report trông rất đẹp – unit tests cover từng function, integration tests cover các happy path chính. Chỉ có một thứ tests không cover: cái user journey cụ thể đó – tab back sau khi redirect sang payment gateway của bên thứ ba, state của cart bị reset vì AI không biết rằng cái flow đó tồn tại. AI không biết business context của bạn. AI không có ký ức về lần trước user complain gì. AI không đặt câu hỏi theo kiểu của một tester: "Nhưng nếu user làm cái này trước thì sao?" Và đó chính là vấn đề cốt lõi.