gpt4 book ai didi

c++ - 使用 googletest 选择性地执行单元测试

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:50:13 24 4
gpt4 key购买 nike

假设我有 A、B、C 类,并且每个类在 gtest 中都有自己的单元测试。

如何只运行 A 测试?我有这个 main.cpp 用于执行所有可用的单元测试。

This page建议在类名前使用DISABLED_,但这需要我更改很多部分的测试代码。

我想可能有更好的方法来控制运行或不运行哪个测试。

#include <iostream>
#include <gtest/gtest.h>

int main(int argc, char ** argv)
{
std::cout << "Running main() from gtest_main.cc\n";

testing::InitGoogleTest(&argc, argv);
return RUN_ALL_TESTS(); // <-- return "RUN_XYZ_TEST()" ???

return 0;
}

最佳答案

当你编译这个程序时,你会得到一个我称之为program的可执行文件。

现在,如果您使用 --gtest_list_tests ( https://github.com/google/googletest/blob/master/docs/advanced.md#listing-test-names ) 调用 program,您将获得所有可以运行的测试。如果您想运行一个特定的(如您的示例中的测试 A),只需将您的应用程序命名为 ( https://github.com/google/googletest/blob/master/docs/advanced.md#running-a-subset-of-the-tests ):

program --gtest_filter=A

请注意,您也可以应用通配符。要获取所有选项的列表,请尝试:

program --help

关于c++ - 使用 googletest 选择性地执行单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17093772/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com