我编写了一个程序/库,用于在文章中获取结果。(在这里,但我的问题是一般性的。)我有一些我经常使用的测试ctest
(运行需要几分钟)。为了重现文章中的一些表格或数字,我必须构建一个脚本或一个简单的驱动程序,它可能运行 10 分钟,有时甚至更长,所以我不想拥有这部分常规测试套件。同时,我想确保文章的结果可以是:
- 后来转载
- 确保在我继续开发库后它们仍然给出相同/正确的结果
目前,我尝试将一个小型驱动程序作为常规测试套件的一部分运行,如果我想重现文章中的结果,我会取消注释其中的一些行。当然,我永远不知道哪些确切的行以及是否必须调整其他一些参数才能获得与文章中完全相同的结果。
我还尝试了一个 Python 脚本来计算文章中的确切数字/表格。这样的脚本通常在库更新后停止工作,因为它没有定期运行(花费太多时间)。
我想到的最好方法是拥有一个 Fortran(或 C/C++)示例,该示例将定期编译(作为库的一部分),但不会在常规测试套件中运行。这样,至少我知道它编译得很好(因此希望也能运行)。作为常规测试套件的一部分,我将测试一些简单(较小)的示例。
处理这个问题的最佳方法是什么?