Statement coverage là gì?
- ★
- ★
- ★
- ★
- ★
Statement coverage là một thước đo cho biết liệu tất cả các câu lệnh (statement) có thể thực thi được trong mã nguồn (source code) đã được thực thi ít nhất một lần hay chưa. Đây là một phương pháp để đảm bảo rằng mỗi dòng của mã nguồn được cover ít nhất một lần bởi các bài kiểm tra.
Điều này nghe có vẻ đơn giản nhưng cần phải thận trọng khi đo lường statement coverage. Lý do là trong mã nguồn có thể có một điều kiện (condition) nào đó có thể không được thực thi tùy thuộc vào các giá trị đầu vào.
Điều này có nghĩa là tất cả các dòng code sẽ không được cover. Do đó, chúng ta có thể phải sử dụng các bộ giá trị đầu vào khác nhau để cover tất cả các điều kiện như vậy trong mã nguồn.
Add (int a, int b) {
If (b > a) {
b = b - a
Print b
}
If (a > b) {
b = a – b
Print b
}
Else Print ‘0’
}
Ví dụ: trong mã nguồn ở trên nếu các giá trị đầu vào được coi là 2 & 3 thì phần 'Else' của code sẽ không được thực thi. Tuy nhiên, nếu các giá trị đầu vào thuộc loại 3 & 2 thì phần If của code sẽ không được thực thi.
Điều này có nghĩa là với một trong hai bộ giá trị, statement coverage của chúng ta sẽ không phải là 100%. Trong trường hợp như vậy, chúng tôi có thể phải thực hiện kiểm tra với cả ba bộ giá trị [(2, 3), (3, 2), (0, 0)] để đảm bảo statement coverage là 100%.
Learning English Everyday