【发布时间】:2017-03-10 21:58:16
【问题描述】:
如果我想编写自己的 test.cpp 来检查另一个 .cpp 文件是否以我希望的方式输出,是否可以在不显式打印的情况下执行此操作?
也就是说,有没有像
这样的东西assert(output_of_file_being_tested, "this is the correct output");
其中 output_of_file_being_tested 应该是“cout”的东西。
【问题讨论】:
-
你可以做类似这样的事情:stackoverflow.com/questions/10150468/…
-
如果您避免直接写入
std::cout之类的内容并写入std::ostream&引用,则代码更具可测试性。然后测试框架可以传入std::ostringstream对象,而应用程序传入std::cout。
标签: c++ unit-testing output assert cout