有没有办法在没有计划的情况下使用Test :: More中的diag()?

时间:2008-12-04 13:18:40

标签: perl unit-testing

我正在Perl中编写一些具有相当数量设置的测试。此设置都存在于测试脚本use的模块中。我希望能够从模块打印一些诊断,并打算使用diag中的Test::More函数。问题是,当你use Test::More时,它会写出计划,所以我得到了

  

你试图在lib / MyTest.pm第15行计划两次。

我有什么方法可以使用diag(或者是等效的),还是我坚持使用print STDERR

2 个答案:

答案 0 :(得分:4)

对我来说,代码如下:

  #!/usr/bin/perl
  use strict;
  use Test::More;
  diag('hello');

只需打印

  # hello

Test::More除非您告知,否则不会打印该计划。这是通过将args传递给它的导入来完成的:

  use Test::More tests => 30;

或明确致电计划。

  use Test::More;
  plan(tests => 30);

答案 1 :(得分:4)

use Test::More qw(no_plan)