2011-08-07 22 views

答えて

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テストを含むすべてのテストの完全な診断詳細を提供します。

+0

Test :: Builderでtodoテストを作成できるのだろうかと思っています。 – xenoterracide

+0

はい、私はそれがあなたの質問に直接対処していないことに気付きました。 $ workで取るアプローチは、いくつかのテストスクリプトに「スキップされた」とフラグを立てることです。スクリプトの開始時に1行追加すると、それは早期に救済され、「ビルドを中断しない」。もちろん、それはスクリプトが_合っているかどうか私たちには言いません。 –

関連する問題