У меня есть программа Java, в которой я пытаюсь провалить тест в конце с помощью Assert.fail (), но в конце программы потоки продолжают работать, и программа не завершается.
@Test()
void function(){
try {
post_call = service.submit(new Counter(asyncUrl, input,transaction_id));
get_call = service.submit(new PathScanner(asyncUrl, input, transaction_id));
try {
post_call.get();
} catch (ExecutionException ex) {
Assert.fail();
ex.getCause().printStackTrace();
}
try {
get_call.get();
} catch (ExecutionException ex) {
Assert.fail();
ex.getCause().printStackTrace();
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
это фрагмент тестового метода, и тестовый пример также завершается неудачно, как и ожидалось, но программа не завершается после вызова Assert.fail ().
Если я удалю assert.fail (), тогда программа успешно завершается ... просто тогда она не показывает никаких сбоев.
Пожалуйста, предложите метод завершения всех активных потоков после вызова Assert.fail.