Trong khi xem xét phạm vi mã của tôi, tôi nhận thấy rất nhiều bài kiểm tra Đơn vị không kiểm tra các khối cuối cùng cố gắng đóng InputStreams mở trong các khối cuối cùng.Kiểm tra đơn vị cuối cùng chặn trong Java 6
Một Ví dụ đoạn trích là:
try {
f = new BufferedInputStream(new FileInputStream(source));
f.read(buffer);
} finally {
if (f != null)
try {
f.close();
} catch (IOException ignored) {
}
}
}
Có bất kỳ giải pháp thích hợp để kiểm tra tất cả mọi thứ bên trong khối finally sử dụng Junit4?
Tôi biết rằng mức độ bao phủ mã 100% không đạt được trong khi vẫn giữ được hiệu suất tối đa. Tuy nhiên, những đường màu đỏ này là một loại kính mắt trong báo cáo.
Tôi đồng ý. Tôi thấy tùy chọn chỉ ghi đè một phương pháp trong một bài kiểm tra rất hữu ích, nhưng nó thường là một bước trung gian trên con đường để chọn bố cục. C# là một PITA ở khía cạnh đó vì các phương thức không phải là ảo theo mặc định vì vậy tôi thấy tôi thường phải nhảy toàn bộ con đường (điều này gây phiền nhiễu khi bạn muốn làm việc với những thay đổi nhỏ nhất có thể). –
Cảm ơn đó là chính xác những gì tôi đang tìm kiếm :) Cảm ơn Jeff – fyr