gpt4 book ai didi

perl - 测试 Moose 和 MooseX::FollowPBP 生成的方法需要多少钱?

转载 作者:行者123 更新时间:2023-11-28 19:48:45 26 4
gpt4 key购买 nike

我想开始严格地进行测试驱动开发。但是,我想知道我应该测试多少由 Moose 和 MooseX::FollowPBP 生成的方法。例如,我有以下类(class):

package Neu::Series;
use Moose;
use MooseX::FollowPBP;

use File::Find::Wanted;

has 'file_regex' => (
isa=>'RegexpRef',
is=>'rw',
default => sub{
qr{
[A-Z] #Uppercase letter
[a-zA-Z]* #any letter, any number of times
[-] #dash
( #open capturing parenthesis
[0-9]
[0-9]
[0-9]
[0-9]
[a-zA-Z]? #any letter, optional
) #close capturing parenthesis
}xms;
},
);


has 'top_dir' => (
isa=>'Str',
is=>'rw',
);


has 'access' =>(
isa=>'Neu::Access',
is=>'ro',
required=>1,

);

1;

我当前的测试脚本是:

use strict;
use warnings;
use Test::More tests => 8;
use Neu::Access;

BEGIN{ use_ok('Neu::Series'); }

can_ok( 'Neu::Series', 'new');
can_ok( 'Neu::Series', 'set_file_regex');
can_ok( 'Neu::Series', 'get_file_regex');
can_ok( 'Neu::Series', 'set_top_dir');
can_ok( 'Neu::Series', 'get_top_dir');
can_ok( 'Neu::Series', 'get_access');

my $access = Neu::Access->new(dsn => 'test');
my $series_worker = Neu::Series->new(access => $access);

isa_ok($series_worker, 'Neu::Series');

这是足够的还是太多的测试? (也就是说,除了明显缺少的正则表达式测试之外)。

我以为我在某处看到过关于此的网页或其他帖子,但我今天找不到。

最佳答案

测试访问器是否正确生成确实没有意义。如果它们不是,您会很快发现,因为您编写的任何实际测试都会失败。

Moose 本身测试访问器是否正确生成,使用 Moose 的类是否获得构造函数,等等。使用依赖项的要点之一是您可以专注于编写和测试您的应用程序,而不是辅助代码。

我同意 daotoad 的观点,您自己编写的约束和强制可能值得测试

关于perl - 测试 Moose 和 MooseX::FollowPBP 生成的方法需要多少钱?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2269478/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com