我有多个测试用例,它们实际上使用 Boost 计时器测量计算的持续时间。
测试用例是使用 Boost Test 定义的。
为了运行测试,我使用 CTest,因为我使用 CMake。测试都是用 add_test() 指定的。由于 CTest 生成 XML 文件,我可以在相应的 Jenkins 作业中显示单元测试结果。
对于性能测试,我不仅要显示测试用例是否成功,还要显示测量的持续时间。
是否可以在 C++(使用 Boost Test/CMake)中以某种方式标记测量的持续时间并将它们转换为包含两列测试用例对的文件?
unittest0.dat:
test case | time
bla0 10 s
bla3 40 s
然后,我想将此文件和 Jenkins 中以前构建的所有类似文件显示为图。用户应该能够跟踪过去多个作业的测量值,以查看性能是否有所提高。
因此 Jenkins 必须将数据转换为如下文件:
bla0.dat:
build number | time
0 10 s
1 15 s
2 20 s
也许有一种我不知道的完全不同的方法。