1

我是 C++ 和 gtest 的新手。我有一个包含 29 个测试的案例,我想一次执行所有测试。但似乎 gtest 一次最多只能处理 3 个测试,它显示:

[==========] Running 29 tests from 1 test case.
[----------] Global test environment set-up.
[----------] 29 tests from StringTests
[ RUN      ] StringTests.DelimitedStringComponent
[       OK ] StringTests.DelimitedStringComponent (0 ms)
[ RUN      ] StringTests.boolToString
[       OK ] StringTests.boolToString (0 ms)
[ RUN      ] StringTests.checkFixSASNull
[       OK ] StringTests.checkFixSASNull (0 ms)
[ RUN      ] StringTests.doubleToString

然后,停了下来。它有什么问题?

4

1 回答 1

0

它会崩溃还是停止输出?

在第一种情况下,崩溃,它可能是测试代码中的崩溃。例如,任何断言都会立即终止进程。它不会被 gtest 捕获。

如果它只是停止提供输出,则可能是无限循环或繁重的演算。赔率是它仍在计算中。就我而言,添加几个 SCOPED_TRACE 会使测试减慢一到两个数量级。此外,一些经过测试的操作可能会很慢,完成测试可能需要几秒钟甚至几分钟的时间。

我们将需要更多数据来发现您的确切问题。希望能帮助到你!

于 2013-08-21T12:54:09.837 回答