我有一个使用Test :: More编写的Perl测试脚本.在退出之前,如果所有测试都通过,我想执行一些清理操作.如果任何测试失败,我想留下一切用于故障排除.
Test :: More中是否有一个标志,或者在一个测试脚本中有一些其他最佳实践,一旦测试本身完成,就能判断"一切顺利"?
Eth*_*her 10
您可以使用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";
}
Run Code Online (Sandbox Code Playgroud)
或者,你可以做你清理在脚本的末尾,但退出早,如果事情出差错,用Test::More的BAIL_OUT("reason why you are bailing");.
您可以收集有关测试状态的大量其他数据和统计数据; 请参阅Test :: Builder的文档.