Я новичок в Rust и в настоящее время пытаюсь создать тестовые примеры для рефакторинга версии существующего скрипта. Я заметил, что по какой-то причине всякий раз, когда я запускаю cargo test
, я сначала получаю сообщение «выполняется 0 тестов», а затем «выполняется x тестов» (где x — количество написанных мной тестов).
Как я могу найти источник «запуска 0 тестов»?
Решение проблемы
Rust разделяет свой набор тестов на две категории: модульные и интеграционные тесты. Модульные тесты находятся в исходных файлах вместе с остальным кодом в приватном подмодуле (обычно условно называемом mod tests
). Интеграционные тесты помещаются в отдельный крейт, test
полностью не связанный с остальным кодом. Первый имеет доступ к закрытым данным в текущем модуле, а второй вынужден взаимодействовать с ним как независимая сторона.
cargo test
сначала запускает модульные тесты, а затем интеграционные тесты. Если у вас нет модульных тестов, он сообщит вам, что все 0 из них пройдены, а затем перейдет к написанным вами тестам.
Комментариев нет:
Отправить комментарий