Gỡ lỗi và sửa lỗi / kiểm thử thất bại
![]()
Tags: Debugging | Root cause analysis | Bug fixing | Testing
1. Mục đích
Sử dụng quy trình này khi gặp các bài test thất bại, lỗi runtime, lỗi build hoặc các hành vi bất thường của ứng dụng. CodeVista sẽ liên kết triệu chứng hiển thị với nhật ký (logs), dấu vết ngăn xếp (stack traces), các file mã nguồn và ngữ cảnh repository trước khi đề xuất giải pháp sửa lỗi an toàn và tối giản nhất.
2. Trước khi bắt đầu
- Thu thập thông báo lỗi đầy đủ, stack trace, log hoặc đầu ra của bài kiểm thử bị lỗi.
- Nêu rõ hành vi mong đợi và hành vi thực tế đã quan sát được.
- Cung cấp câu lệnh tái hiện lỗi và chi tiết môi trường liên quan nếu có.
3. Lời nhắc khởi động (Starter Prompt)
Hãy điều tra nguyên nhân lỗi này trước khi chỉnh sửa mã nguồn.
Hành vi mong đợi:
[Điều gì nên xảy ra]
Hành vi thực tế:
[Điều gì đang xảy ra thay vào đó]
Bằng chứng / Nhật ký:
[Thông báo lỗi, stack trace, logs, hoặc bài kiểm thử thất bại]
Lệnh hoặc các bước tái hiện lỗi:
[Câu lệnh hoặc các bước]
Nhiệm vụ:
1. Xác định nguyên nhân gốc rễ (root cause) dựa trên code và bằng chứng được cung cấp.
2. Liệt kê các file bị ảnh hưởng và giải thích lý do liên quan.
3. Đề xuất giải pháp sửa lỗi an toàn và nhỏ nhất.
4. Nếu được phép chỉnh sửa file, chỉ áp dụng bản sửa lỗi đã được phê duyệt.
5. Chạy bước kiểm chứng nhỏ nhất có liên quan.
Trả về nguyên nhân gốc rễ, danh sách file thay đổi, giải pháp sửa lỗi, kết quả kiểm chứng và các rủi ro còn lại.
4. Cách sử dụng
- Cung cấp bằng chứng lỗi và hành vi mong đợi.
- Yêu cầu CodeVista điều tra và giải thích nguyên nhân gốc rễ trước khi can thiệp vào code.
- Xem xét các file bị ảnh hưởng và giải pháp sửa lỗi được đề xuất.
- Phê duyệt thay đổi khi phạm vi chỉnh sửa đã hợp lý.
- Chạy lại bài kiểm thử, lệnh build hoặc kịch bản tái hiện lỗi.
- Xem xét diff cuối cùng và xác nhận lỗi ban đầu đã được giải quyết triệt để.
5. Kết quả mong đợi
- Nguyên nhân gốc rễ: Lỗi được truy vết chính xác đến một điều kiện cụ thể, đường dẫn thực thi code hoặc cấu hình.
- Bản sửa lỗi có mục tiêu: Thay đổi đề xuất tập trung xử lý đúng nguyên nhân mà không sửa đổi các đoạn mã không liên quan.
- Bằng chứng kiểm chứng: Các bài kiểm thử hoặc bước tái hiện lỗi liên quan được thực thi lại và báo cáo đầy đủ.

6. Mẹo hữu ích
- Cung cấp câu lệnh đã gây ra lỗi để CodeVista có thể tái hiện trực tiếp khi được cho phép.
- Nêu rõ lỗi xảy ra liên tục (consistent), thỉnh thoảng (intermittent), hay đặc thù theo từng môi trường.
- Tuyệt đối không chấp nhận bản sửa lỗi chỉ nhằm che giấu triệu chứng mà không giải thích rõ nguyên nhân gốc rễ bên dưới.