perl – 在TAP中发出警告

perl – 在TAP中发出警告,第1张

概述我的代码测试了一个糟糕的API调用,幸运的是代码会导致模块本身发出警告.但是当我测试失败的API调用时,我希望在TAP中看不到警告. t/01-pass.t .............. okt/02-fail.t .............. okt/03-noversion.t ......... okt/04-no-file.t ........... okUse of uninit 我的代码测试了一个糟糕的API调用,幸运的是代码会导致模块本身发出警告.但是当我测试失败的API调用时,我希望在TAP中看不到警告.

t/01-pass.t .............. okt/02-fail.t .............. okt/03-noversion.t ......... okt/04-no-file.t ........... okUse of uninitialized value $file in concatenation (.) or string at /home/xenoterracIDe/projects/Test-Version/lib/Test/Version.pm line 29.t/05-file-not-defined.t .. ok# unsorted oks: 001t/06-all.t ............... okAll tests successful.files=6,Tests=37,1 wallclock secs ( 0.04 usr  0.02 sys +  0.35 cusr  0.04 csys =  0.45 cpu)Result: PASS

这是实际的代码

#!/usr/bin/perluse 5.006;use strict;use warnings;use Test::Tester tests => 7;use Test::Version qw( version_ok );check_test(    sub {        version_ok; # correct call version_ok( $file )    },{        ok => 0,name => 'check version in ',diag => 'file_NOT_defineD',},'$file not defined');

有没有办法压制警告并防止它在TAP中结束(在原始模块中没有警告之外).

解决方法
local $SIG{__WARN__} = sub {};

会暂时停止警告.

总结

以上是内存溢出为你收集整理的perl – 在TAP中发出警告全部内容,希望文章能够帮你解决perl – 在TAP中发出警告所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/langs/1265163.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-08
下一篇2022-06-08

发表评论

登录后才能评论

评论列表(0条)

    保存