在我的一个应用程序中,我有一个负责用户输入的类。默认的输入方法是控制台(键盘),我想为它写一些单元测试以确保它是正确的。
我正在考虑使用google-test框架进行单元测试,这使得自动化所有测试变得容易。但是,我不确定如何自动测试控制台输入。
有什么方法可以模拟键盘上的用户输入吗?还是我必须手动输入我的测试输入?或者可能重定向stdin
(在运行单元测试时在代码中或通过管道)?
编辑:我计划使用 GNU readline 进行用户输入。目前我看不到任何重定向这个库的输入流的方法——也许其他人有这方面的经验?