是否可以在Perl中进行软测试失败?软故障我的意思是测试失败,但它不会导致测试套件失败。
答案 0 :(得分:6)
这个可以帮助......你可以将一块测试标记为'TODO',如下所示:
#!/usr/bin/perl
use strict;
use warnings;
use Test::More;
ok(1);
TODO: {
local $TODO = 'is_odd() implementation still flakey';
is( is_odd(3), 1, '3 is odd' );
};
done_testing();
sub is_odd {
return rand() > 0.5 ? 1 : 0;
}
TODO块中的测试是通过还是失败不会影响脚本的结果。但是,如果测试执行,则prove
的摘要输出将告诉您“意外”通过了哪个测试。来自prove -v
的详细输出将为所有测试提供完整的诊断详细信息,包括TODO测试失败。