我想知道在 C++ 项目构建的测试阶段插入性能测试和测量是否是一个好习惯。
在我的项目中,我有一些方法,我有一些执行时间限制,并且我当前的实现足以尊重它们。我用 gtest 为这些方法实现了一些单元测试。我想利用它们来测试在我的实现的未来更新中我不会引入一些无意的性能下降。
这样的事情是正确的方法吗?
auto start = std::chrono::high_resolution_clock::now().time_since_epoch().count();
some_task();
auto end = std::chrono::high_resolution_clock::now().time_since_epoch().count();
EXPECT_LT((end-start), SOME_TASK_TIME_TRHESHOLD)
Run Code Online (Sandbox Code Playgroud)
或者有一些众所周知的替代方案/库来实现此类性能检查?