8
經過積累足夠的測試後,運行它們都需要一些實時性,我查看了Test::Class::Load
doc以查找運行單個測試課程的提示。它提供了一種方式來做到這一點,但我必須錯過一些東西,因爲我無法做到這一點。下面是我有:如何使用Test :: Class :: Load運行單個測試?
我的測試目錄:
drewfus:~/sandbox$ ls t/
lib/ perlcriticrc PerlCritic.t Unit.t
t/Unit.t
由以下部分組成:
use strict;
use warnings;
use Test::Class;
use Test::More 'no_plan';
use Test::Class::Load 't/lib';
每建議在Test::Class::Load
doc,我有一個基類,我的每個測試要繼承的類,SG::TestBase
,生活在t/lib/SG/TestBase.pm
:
package SG::TestBase;
use strict;
use warnings;
use base 'Test::Class';
INIT { Test::Class->runtests }
1;
最後,這裏有一個例子測試類,SG::UtilsTest
在t/lib/SG/UtilsTest.pm
:
package SG::UtilsTest;
use strict;
use warnings;
use base 'SG::TestBase';
BEGIN { use_ok('SG::Utils') };
<etc>
一切還是桃色的,如果我想運行所有Build test
或prove
的測試,而是試圖運行單獨的測試沒有按「T工作:在點滴的錯誤文檔中:-)
最後一個參數應該是PA
drewfus:~/sandbox$ prove -lv SG::UtilsTest
Cannot determine source for SG::UtilsTest at /usr/share/perl/5.10/App/Prove.pm line 496
這可行,但七年後,文檔仍然有相同的錯誤。 – jja 2016-09-07 22:58:31