Порядок испытаний на улов
Я хотел бы использовать Catch для выполнения модульного тестирования на C++ lib. Однако мне нужно, чтобы большинство тестовых случаев выполнялось в порядке. то есть библиотека должна быть инициирована определенным образом, а затем пользователи вошли в систему и т. д. Есть ли какой-либо шаблон проектирования для достижения этой цели.
Заранее спасибо.
1 ответ
Тесты запускаются последовательно, как вы описали. Таким образом, простой ответ заключается в том, что вам не нужно ничего делать, чтобы получить эту функциональность.
Однако сверхдлинные тестовые функции со смесью создания и утверждений считаются плохой формой при модульном тестировании: их становится сложнее поддерживать, и для выявления проблемы требуется больше времени. Поймать способ решения этой проблемы довольно интересно, см. Учебник по разделам; Я также нашел эту презентацию (видео, 67 минут) Фила Нэша, где (примерно с 20:00 до 28:00) он довольно четко объясняет, как работают разделы и вложенные разделы.