Я написал программу / библиотеку, которую использовал для получения результатов в статье. (Вот и все , но мой вопрос общий.) У меня есть тесты, которые я регулярно использую ctest
(для запуска требуется несколько минут). Чтобы воспроизвести некоторые таблицы или рисунки в статье, мне нужно создать скрипт или простую программу-драйвер, которая будет работать, может быть, 10 минут, иногда больше, поэтому я не хочу иметь эту часть обычного набора тестов. В то же время я хочу убедиться, что результаты статьи могут быть:
- воспроизведено позже
- убедитесь, что они продолжают давать те же / правильные результаты после того, как я продолжу разработку библиотеки
В настоящее время я пытаюсь использовать небольшую драйверную программу, которая запускается как часть обычного набора тестов, и если я хочу воспроизвести результаты из этой статьи, я раскомментирую некоторые строки там. Конечно, я никогда не знаю, какие именно линии и нужно ли настраивать некоторые другие параметры, чтобы получить точно такие же результаты, как в статье.
Я также попытался использовать скрипт Python, который вычисляет точные цифры / таблицы из статьи. Такой скрипт обычно перестает работать после обновления библиотеки, потому что он не запускается на регулярной основе (занимает слишком много времени).
Лучший способ, который мне пришёл в голову, это иметь пример на Fortran (или C / C ++), который будет регулярно компилироваться (как часть библиотеки), но не запускаться в обычном тестовом наборе. Таким образом, по крайней мере, я знаю, что он компилируется нормально (и, следовательно, надеюсь, что также работает). И я протестирую несколько простых (меньших) примеров в рамках обычного набора тестов.
Каковы оптимальные способы решения этой проблемы?