5

我正在开发一个程序,该程序从标准输入读取一些输入,对其进行处理,并将一些输出写入标准输出。这样我就不必每次都输入样本/测试输入,我已将输入保存到 TXT 文件,并将相应的预期输出保存到另一个 TXT 文件。

如何运行我的可执行文件(最好在调试或发布模式下,或者可能在分析器下),以便 VS 自动输入输入 TXT 文件?VS 可以自动检查程序的输出与预期的输出 TXT 文件吗?如果它们不一样,它会向我显示一个并排的差异,那就太好了。我可以设置测试框架以使用不同的输入/预期输出文件运行各种测试吗?

请注意,我不能只使用正常的单元测试,因为我必须进行集成测试。

编辑:为了它的价值,我正在使用 C++。

4

1 回答 1

1

如上所述您可以重定向来自某个文件的输入。

同样,您可以将输出重定向到某个临时文件,然后调用一些 diff 工具来比较您的文件:

在项目属性的“调试”类别的“命令参数”属性中添加:

>  actual.out.txt && diff actual.out.txt expected.out.txt

您可以diff用任何适当的差异工具替换。

通常,您可以在程序执行后使用&&.

于 2013-06-12T18:00:01.257 回答