Tôi chỉ mới bắt đầu với một tập tin ví dụ (example.js) trong đó có những điều khoản sau đây:Hiểu mã số bảo hiểm của Istanbul
x = 42;
if(false)
x = -1;
tôi không có bất kỳ tập tin đơn vị kiểm tra. nhưng khi tôi chạy
istanbul cover example.js
tôi thấy một số dữ liệu bảo hiểm dưới đây
=============================== Coverage summary ===============================
Statements : 66.67% (2/3)
Branches : 50% (1/2)
Functions : 100% (0/0)
Lines : 66.67% (2/3)
==============================================================================
Liệu có ngụ ý tôi có 2 báo cáo ra khỏi 3 được bảo hiểm? Nếu vậy, làm thế nào nó có thể báo cáo rằng mã này được bảo hiểm khi tôi không có bất kỳ tập tin kiểm tra đơn vị nhắm mục tiêu mã đó?
Từ những gì tôi hiểu theo định nghĩa về phạm vi mã, mã được bao phủ bởi các kiểm tra đơn vị. Tôi không hiểu tại sao istabul lại nói rằng tôi có 2 câu được bảo vệ khi tôi chưa viết bất kỳ bài kiểm tra đơn vị nào.
2 trong 3 câu lệnh sẽ luôn thực thi và 1 sẽ không bao giờ thực thi. Điều này sẽ đúng bất kể thử nghiệm nào bạn chạy trên mã mẫu được cung cấp. – RacerNerd