2010-06-12 5 views
0

Иногда интеграционные тесты довольно сложны для написания или у разработчиков нет достаточного времени для проверки вывода - имеет ли смысл писать тесты, которые гарантируют, что «исключений не выбрасывают»? Такие тесты предоставляют некоторые параметры входных параметров и не проверяют результат, но только убедитесь, что код не сбой с исключением?Интеграционные тесты - подход «исключений исключен». Имеет ли это смысл?

Возможно, такие тесты не очень полезны, но подходят в ситуациях, когда у вас нет времени?

ответ

1

Интеграционный тест в основном такой же, как и в случае единичного теста, хотя и более сложный, более привлекательный из-за значительных дополнительных компонентов. Единичные тесты касаются предоставления некоторых входов и утверждения некоторых результатов, будь то значения или исключения и т. Д. То же самое должно применяться к вашим интеграционным тестам. В худшем случае, по крайней мере, проверьте, что фактический результат имеет смысл, а не просто означает, что никакие исключения не означают его одобрения. Такое предположение является крайне плохой практикой и запахами лени или, возможно, отсутствием мысли о подходе.

+0

Я полностью согласен, но задаюсь вопросом, как проверить выходные словарные документы, например. Должно быть это двоичное сравнение? –

+1

Вы всегда можете прочитать документ и выполнить элементарное сканирование текста. Двоичные сравнения потерпят неудачу, поскольку документы, без сомнения, будут включать отметки времени и другие инварианты. –