我已经浏览了documentation,无法找到对我的查询的确切答案。
在我的很多测试中,执行 SKIP
块是以先前测试成功为条件的。
所以,例如,这就是我写的:
ok( @results > $threshold , 'Threshold met' );
SKIP: {
skip 'due to insufficient results', 3
unless @results > $threshold;
# ...
}
如果我的测试发生变化,我不想更改两个位置,所以我想要一个DRY-er等价物:
SKIP: {
skip 'due to insufficient results', 3
unless ok( @results > $threshold , 'Threshold met' );
# ...
}
我的初步测试表明这两个片段是等效的。
但是,文档中的内容引起了我的注意:
每个
SKIP
块必须包含标签SKIP
,否则Test::More
无法发挥其魔力。
我在这里担心的是魔法可能会溢出到ok()
,因为它现在位于区块内。
答案 0 :(得分:2)
是。为什么不呢?