我正在驾驶SeleniumRC,一个页面挂起,所以我点击Ctrl-C停止测试并解决这个问题。如果我通过命令行传递一个txt文件,如下所示:
prove -v some.t :: data.csv > testresults.txt
我要么一无所获,要么在文本文件中显示"终止批处理作业(Y/N)?"。请注意,如果我没有通过命令行传递输出文件,结果会按预期滚动。
prove是否有通过stdout写入非-v文件的选项?
当我将任何形式的$| = 1;
添加到prove.pm
或some.t
时,此问题仍然存在。有什么东西在证明或测试中::线束覆盖了我的自动冲洗设置吗?
我也尝试过这种变体:prove -v some.t > testresults.txt :: data.csv
听起来像是缓冲问题。输出是缓冲的(当不发送到终端时),当使用Ctrl-C填充应用程序时,这些缓冲区不会被刷新。
如果输出来自Perl脚本,请尝试将$| = 1;
添加到其中。