我有一个使用 Test::More 编写的 Perl 测试脚本。在退出之前,如果所有测试都通过,我想执行一些清理操作。如果任何测试失败,我希望保留所有内容以进行故障排除。
Test::More 内是否有标志或单个测试脚本中的其他最佳实践,以判断测试本身完成后是否“一切顺利”?
最佳答案
您可以使用 Test::Builder 访问测试的当前状态,可通过 Test::More->builder
获得:
use strict;
use warnings;
use Test::More tests => 1;
ok(int rand 2, 'this test randomly passes or fails');
if (Test::More->builder->is_passing)
{
print "hooray!\n";
}
else
{
print "aw... :(\n";
}
或者,您可以在脚本末尾进行清理,但如果出现问题,请提前退出,使用 Test::More
的 BAIL_OUT("reason Why you are保释”);
。
您可以收集有关测试状态的许多其他数据和统计数据;请参阅 Test::Builder 的文档.
关于perl - 我可以判断是否所有测试都通过了 Perl 的 Test::More 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1506674/