При просмотре кода покрытия я заметил, что многие тесты Unit не смогли проверить, наконец, блоки, которые пытаются закрыть открытые InputStreams в блоках finally.Модульные тесты, наконец, блокируются на Java 6
Один пример отрывок:
try {
f = new BufferedInputStream(new FileInputStream(source));
f.read(buffer);
} finally {
if (f != null)
try {
f.close();
} catch (IOException ignored) {
}
}
}
Есть ли соответствующее решение проверить все внутри, наконец, блок с помощью JUnit4?
Я знаю, что покрытие кода 100% не достижимо при сохранении максимальной производительности. Однако эти красные линии являются своего рода глазником в отчете.
Согласен. Я нахожу вариант просто переопределить метод в тесте очень полезным, но часто это промежуточный шаг на пути выбора композиции. C# является PITA в этом отношении, поскольку методы по умолчанию не являются виртуальными, поэтому я нахожу, что мне часто приходится прыгать целиком (что раздражает, поскольку вы хотите работать с минимальными возможными изменениями). –
Спасибо, что это именно то, что я искал :) Спасибо также Джеффу – fyr