使用 googletest 时是否可以捕获标准输出和标准错误?框架?
例如,我想调用一个将错误写入控制台(stderr)的函数。 现在,在测试中调用函数时,我想断言那里没有输出。
或者,也许我想测试错误行为并断言当我(故意)产生错误时会打印某个字符串。
最佳答案
Googletest 为此提供了功能:
testing::internal::CaptureStdout();
std::cout << "My test";
std::string output = testing::internal::GetCapturedStdout();
关于c++ - 如何使用 googletest 捕获标准输出/标准错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3803465/