Проверка модульного теста — разделение наборов тестов на разные файлы

#c #unit-testing

#c #модульное тестирование

Вопрос:

У меня есть небольшая библиотека, которая использует файлы helper .c для выполнения различных задач для API. Я хотел бы разделить наборы тестов, которые тестируют каждый компонент, на разные файлы. Есть ли способ сделать это в Check?

Например, если бы у меня была библиотека Money (как в примере) Возможно, я захочу написать набор тестов библиотеки конвертации валют в ее собственном файле (check_convert_currency.c). Возможно, я захочу создавать, отслеживать и т.д. В другом наборе тестов (check_manipulate_money.c). Я хотел бы проверить все наборы тестов с помощью check_money.c.

Я думаю, что лучшим способом сделать это было бы создать файлы .c и заголовки для вышеуказанных, включить их в check_money.c и добавить все наборы тестов в раннер набора в main.

Я хотел бы сделать это, чтобы тестовые файлы оставались читаемыми. Если есть лучший метод или подход для достижения этой цели, я открыт для изучения этого.

Ответ №1:

Один из используемых подходов заключается в том, чтобы иметь один make-файл для каждого тестового файла. Таким образом, у вас будет несколько тестовых исполняемых файлов для нескольких аспектов одного и того же тестируемого модуля. Таким образом, вы бы скомпилировали с разными исполняемыми файлами теста — check_convert_currency и check_manipulate_money.

Если вы хотите иметь один и тот же исполняемый файл для всех тестов, тогда у вас могут быть реализации тестов только для заголовков в check_manipulate_money.h и check_convert_currency.h .

Спасибо