我最近开始使用gtest,并遇到了问题。我想对文件夹中的文件运行一组测试,应该枚举这些测试。我已设法使用文件列表中的数据创建测试和实例化t,但遇到了概念性问题。
我所做的是创建一个全局列表来保存文件名并在调用testing::InitGoogleTest
之前填充它。这很有效。
然而,我使用全局变量的事实让我感到困扰。我试图将列表初始化移动到我自己的testing::Environment
后代,但这导致测试实例化失败。更准确地说,列表已填满但未使用其中的数据运行测试。
所以,我的问题是:
testing::Environment
应该包含什么类型的数据?答案 0 :(得分:0)
E.g:
std::vector<std::string> LoadValuesFromDisc() {
std::vector<std::string> result;
// Fill in result with data here...
return result; // RVO will ensure there are no unnecessary copies.
}
INSTANTIATE_TEST_CASE_P(
InstantiationName, TestFixture, testing::ValuesIn(LoadValuesFromDisc());