Коли ви пишете тести для одного програмного забезпечення, скажімо, бібліотеки, чи віддаєте перевагу скласти всі тести одиниці в один або розділити їх на кілька виконуваних файлів?
Причина, про яку я питаю, полягає в тому, що я зараз використовую CUnit для тестування бібліотеки, над якою працюю. Тести розбиваються на окремі набори, які компілюються в один виконуваний файл з надрукованим висновком для відмов. Тепер системою збірки для цієї бібліотеки є CMake (який, незважаючи на свою назву, має мало спільного з CUnit), який поставляється із власною рамкою тестування, CTest . CTest дозволяє мені зареєструвати список виконуваних файлів, які служать тестами.
Я розмірковую, чи використовувати CTest для автоматичних тестувань. Однак для цього знадобиться розділити тести, про які я писав, на окремі цілі компіляції. Інакше я не можу реально використовувати деякі вдосконалені функції CTests, наприклад, вибірково запущені тести.
Я усвідомлюю, що це більше питання про те, якими інструментами користуватися та поводження з ними, а крім того, чи є якісь інші причини віддати перевагу одному тесту, який можна виконати над окремими? Або навпаки?