Traceability là khả năng lần theo mối liên hệ giữa các thành phần của test basis với testware, test results và defects trong suốt test process. Đây không chỉ là một bảng để “đánh dấu coverage”, mà còn là nguồn thông tin quan trọng cho monitoring, control và quyết định release.
Hiểu nôm na, test case phải được liên kết chặt với requirements, nếu có bug thì phải thêm link bug vào test case đó ✌️
Test Basis và Testware là gì?
- Test basis: nguồn thông tin được sử dụng để phân tích và thiết kế test, chẳng hạn requirement, user story, acceptance criteria, thiết kế, mô hình nghiệp vụ hoặc thông tin rủi ro.
- Testware: sản phẩm tạo ra từ tester, chẳng hạn test condition, test case, test data, test script, test suite, test log và defect report.
Một chuỗi traceability điển hình có thể được hình dung như sau:
Requirement → Test Condition → Test Case → Test Result → Defect
Ví dụ Traceability Matrix
Giả sử hệ thống đăng nhập có ba requirement. Đội dự án có thể lập một ma trận đơn giản:
| Test basis | Test case liên kết | Kết quả | Defect |
|---|---|---|---|
| REQ-01: Đăng nhập bằng tài khoản hợp lệ | TC-01, TC-02 | Pass | – |
| REQ-02: Khóa tài khoản sau 5 lần nhập sai | TC-03, TC-04 | Fail | BUG-21 |
| REQ-03: Gửi email khi tài khoản bị khóa | Chưa có | Not tested | – |
Nhìn vào bảng, chúng ta nhận ra ngay REQ-03 chưa được test case nào bao phủ, còn REQ-02 đang có defect. Đây là giá trị thực tế của traceability: biến các mối liên hệ thành thông tin có thể hành động.
Traceability mang lại lợi ích gì?
1. Đánh giá coverage (độ bao phủ)
Liên kết test case với requirement giúp xác định requirement nào đã được bao phủ, chưa được bao phủ hoặc được bao phủ chưa đủ. Coverage sẽ có ý nghĩa hơn khi test basis xác định các tiêu chí đo lường rõ ràng.
2. Đánh giá residual risk (rủi ro còn sót lại)
Liên kết test result với risk cho biết các rủi ro quan trọng đã được kiểm thử đến đâu và mức rủi ro còn lại trước khi release.
3. Phân tích tác động thay đổi
Khi một requirement thay đổi, traceability giúp nhanh chóng tìm ra test condition, test case, test data và automated script cần cập nhật hoặc chạy regression.
4. Hỗ trợ audit và governance
Traceability cung cấp bằng chứng rằng yêu cầu, rủi ro và tiêu chí tuân thủ đã được kiểm thử, đặc biệt hữu ích trong các domain có quy định nghiêm ngặt.
5. Báo cáo dễ hiểu hơn
Thay vì chỉ báo “80% test case đã chạy”, đội testing có thể nói rõ requirement hoặc business risk nào đã được xác nhận, phần nào còn lỗi và phần nào chưa được kiểm thử.
Traceability nên hai chiều
- Từ requirement đến test case: requirement đã có test bao phủ chưa?
- Từ test case về requirement: test case này tồn tại để kiểm tra điều gì?
Traceability hai chiều giúp tránh cả hai vấn đề: requirement bị bỏ sót và test case không còn mục đích rõ ràng.
Cách áp dụng thực tế
- Gán ID ổn định cho requirement, risk và test case.
- Tạo liên kết ngay khi phân tích và thiết kế test, không đợi đến cuối dự án.
- Cập nhật liên kết khi requirement hoặc testware thay đổi.
- Dùng báo cáo traceability để theo dõi coverage, defect và residual risk.
Traceability tốt không cần phức tạp. Một bảng tính có thể đủ cho dự án nhỏ; dự án lớn có thể dùng công cụ quản lý requirement và test. Điều quan trọng là các liên kết phải chính xác, được duy trì và phục vụ quyết định thực tế.




