2
4

2 回答 2

0

如果您的程序使用推荐的方法来调用 google 测试,它应该能够默认将 --gtest_ 命令行选项转发到 google 测试框架。

这是通过简单地调用来完成的

::testing::InitGoogleTest(&argc, argv);

如果你想放弃你的 exe,你可以将你编译的测试链接到提供的 gtest_main 库,它提供了一个执行测试的标准主程序。

于 2012-09-04T09:18:29.097 回答
0

如果我正确理解了您的问题,那么您的程序将运行 Google 测试代码,但您还没有机制将与 Google 测试框架相关的命令行选项传递给调用 Google 测试框架的代码。

如果这是正确的,那么您将需要添加代码以将用于测试的命令行选项传递给您的程序。您可以添加一个选项--google-test="...",然后将参数值传递给 Google 测试基础架构。您将不得不担心从一个选项中解析多个选项等。

然后,您将能够调用:

 your_program --google-test="-gtest_output=xml:report.xml" ...

你的代码会管理它。不太可能有一个标准的方法来处理它;没有任何东西会自动将命令行参数传播到 Google 测试框架。(请注意,您的程序不会看到引号;它们会被 shell 删除。)

您可以使用环境变量而不是命令行参数,但作为一种方法不太理想。

于 2012-06-06T17:43:47.517 回答