我正在编写科学计算代码(用 C++ 编写),除了对较小的组件执行单元测试之外,我还想通过与“已知良好”的比较来对某些数值输出进行回归测试之前修订版的答案。我想要一些功能:
- 允许将数字与指定的容差进行比较(对于舍入误差和宽松的期望)
- 能够区分整数、双精度数等,并在必要时忽略文本
- 格式正确的输出可以告诉您出了什么问题以及出在哪里:在多列数据表中,仅显示不同的列条目
- Return
EXIT_SUCCESS
or EXIT_FAILURE
取决于文件是否匹配
是否有任何好的脚本或应用程序可以执行此操作,或者我必须在 Python 中编写自己的脚本或应用程序来读取和比较输出文件?当然,我不是第一个有这种要求的人。
[以下内容并不严格相关,但它可能会影响决定要做什么。我使用 CMake 及其嵌入式 CTest 功能来驱动使用 Google Test 框架的单元测试。我想添加一些应该不难add_custom_command
我的陈述CMakeLists.txt
调用我需要的任何回归软件。]
你应该去PyUnit http://pyunit.sourceforge.net/pyunit.html#USING,现在是标准库的一部分,名称为unittest http://docs.python.org/library/unittest.html。它支持您所要求的一切。容差检查,例如,通过以下方式完成assertAlmostEqual() http://docs.python.org/library/unittest.html#unittest.TestCase.assertAlmostEqual.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)