加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

在开发过程中测试perl模块的正确方法是什么?

发布时间:2020-12-16 06:22:36 所属栏目:大数据 来源:网络整理
导读:我正在开发一个个人Perl模块来构建一个基本的脚本框架,并帮助我学习更多有关该语言的知识.我通过命令行工具 modulemaker 用 ExtUtils::ModuleMaker创建了一个名为“AWSTools :: Framework”的新模块.我试图找出在开发过程中测试它的合适方法. 创建的目录结构
我正在开发一个个人Perl模块来构建一个基本的脚本框架,并帮助我学习更多有关该语言的知识.我通过命令行工具 modulemaker用 ExtUtils::ModuleMaker创建了一个名为“AWSTools :: Framework”的新模块.我试图找出在开发过程中测试它的合适方法.

创建的目录结构包括以下内容:

./AWSTOOLS/Framework/lib/AWSTools/Framework.pm
./AWSTOOLS/Framework/t/001_load.t

自动生成的001_load.t文件如下所示:

# -*- perl -*-

# t/001_load.t - check module loading and create testing directory

use Test::More tests => 2;

BEGIN { use_ok( 'AWSTools::Framework' ); }

my $object = AWSTools::Framework->new ();
isa_ok ($object,'AWSTools::Framework');

如果我尝试直接运行脚本(从命令行或在我的TextMate编辑器中),它将失败:

Can't locate AWSTools/Framework.pm in @INC....

如果我尝试在./AWSTOOLS/Framework目录中运行prove,它也会失败.

问题是:在开发Perl模块时运行测试的正确方法是什么?

解决方法

如果你想运行一个测试文件,你需要告诉perl在哪里找到你的模块,就像你对任何其他程序一样.我使用 blib自动添加正确的路径:

$perl Makefile.PL; make; perl -Mblib t/some_test.t

你也可以用证明来做同样的事情.我不使用证明,但你可以阅读它的文档来弄清楚. -b开关应该这样做,但我遇到的问题是没有做正确的事情(可能只是我自己的愚蠢).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读