我有一个 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)");
在这种情况下,它工作正常。但是,如果我有稍微复杂一些的例程和测试,这似乎不是很干净,因为当我重新使用变量时,测试之间可能存在泄漏。
添加第二个测试的正确(“干净”)方法是什么?是否有一种干净的方法可以做到这一点testSub.t
(在我再次测试子例程之前由上述测试生成的拆卸arrayref
和其他变量),还是我只是在 中编写另一个测试testSub2.t
?