如何测试Perl程序是否从我的测试套件编译?
发布时间:2020-12-16 06:10:01 所属栏目:大数据 来源:网络整理
导读:我正在为一些Perl脚本构建回归系统(而不是单元测试). 该系统的核心组成部分是 `perl script.pl @params 1stdoutfile 2stderrfile`; 但是,在实际处理脚本的过程中,它们有时不会编译(Shock!).但是perl本身会正确执行.但是,我不知道如何在stderr上检测Perl是否
我正在为一些Perl脚本构建回归系统(而不是单元测试).
该系统的核心组成部分是 `perl script.pl @params 1>stdoutfile 2>stderrfile`; 但是,在实际处理脚本的过程中,它们有时不会编译(Shock!).但是perl本身会正确执行.但是,我不知道如何在stderr上检测Perl是否无法编译(因此写入stderr),或者我的脚本在输入上被禁止(因此写入stderr). 如何检测程序是否执行,没有详尽地查找Perl错误消息并轻击stderr文件? 解决方法
通过两个步骤执行此操作可能最简单:
system('$^X -c script.pl'); if ($? == 0) { # it compiled,now let's see if it runs system('$^X script.pl',@params,'1>stdoutfile','2>stderrfile'); # check $? } else { warn "script.pl didn't compile"; } 注意使用 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |