との間の素数の数を返すperlサブルーチンがありa
ますb
。私はこれのテストを持っていますtestSub.t
:
my $arrayref = MyPackage::generatePrimes(1,2);
my @array = @$arrayref;
is ( scalar(@array), 1, "One primes between (1,2)");
MyPackage::generatePrimes
他のいくつかの入力(など)1..3
で再実行する必要があります。10..15
私はただすることができました:
my $arrayref;
my @array;
# Test between (1,2)
$arrayref = MyPackage::generatePrimes(1,2);
@array = @$arrayref;
is ( scalar(@array), 1, "One primes between (1,2)");
# Test between (1,3)
$arrayref = MyPackage::generatePrimes(1,3);
@array = @$arrayref;
is ( scalar(@array), 2, "Two primes between (1,3)");
この場合、これは正常に機能します。ただし、少し複雑なルーチンとテストがある場合、変数を再利用するとテスト間にリークが発生する可能性があるため、これはあまりクリーンではないようです。
2番目のテストを追加するための正しい(「クリーンな」)方法は何ですか?これを行うためのクリーンな方法はありますか(サブルーチンを再度テストする前に上記のテストによって生成されたtestSub.t
分解およびその他の変数)、または別のテストを書き込むだけですか?arrayref
testSub2.t