【发布时间】:2013-06-30 05:30:50
【问题描述】:
有没有办法使用标准的 Test 等模块自动测试 Perl 程序是否正在读取输入,例如标准输入正确吗?例如。测试一个从 STDIN 读取两个整数并打印它们的和的程序。
【问题讨论】:
-
use Data::Dumper; print Dumper <STDIN>? -
首先,将 STDIN 重定向到一个文件,甚至是测试脚本中的一个 DATA 段。其次,验证您的读取是否产生了预期值。
-
谢谢,这正是我想做的!刚刚看到这个,但我最终设法自己解决了这个问题:让测试打开一个带有测试输入作为 STDIN 的文件;这样,输入会自动通过管道传输到正在测试的程序中,就好像它们来自命令行一样。