我正在运行GCC测试套件,我想知道每个测试用例的时间。 GCC使用DejaGnu作为其测试套件,我知道可以在脚本中使用time
来获取测试用例的时间。我想知道是否有任何可以通过runtest
传递的标志强制所有测试用例的计时(不更改测试脚本)。
答案 0 :(得分:2)
我不知道通用方法。
DejaGNU并没有内置的测试边界概念。例如,单个概念测试多次调用“通过”或“失败”是相当常见的。例如,在GCC中,编译测试可以检查来自给定源文件的多个警告 - 但是每个单独的警告以及检查过量警告将是单独的通过或失败。但是,这些都可能来自GCC的单一调用。
我认为您可以采取两种方法。
您可以破解您关注的.exp
个文件,并使用他们正在做的事情的知识来跟踪您感兴趣的时间。
您可以单独运行单个.exp
文件,并计算所需的时间。这在一般情况下不太有用,但这是我在使GDB测试套件更完全可并行化时所做的。