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

perl – Module :: Starter的manifest.t中的预期开发过程是什么

发布时间:2020-12-15 21:45:07 所属栏目:大数据 来源:网络整理
导读:当 Module::Starter初始化项目时,它会创建一个名为manifest.t的测试. #!perl -Tuse strict;use warnings;use Test::More;unless ( $ENV{RELEASE_TESTING} ) { plan( skip_all = "Author tests not required for installation" );}eval "use Test::CheckManif
当 Module::Starter初始化项目时,它会创建一个名为manifest.t的测试.
#!perl -T

use strict;
use warnings;
use Test::More;

unless ( $ENV{RELEASE_TESTING} ) {
    plan( skip_all => "Author tests not required for installation" );
}

eval "use Test::CheckManifest 0.9";
plan skip_all => "Test::CheckManifest 0.9 required" if $@;
ok_manifest();

使用Build test运行测试时,这是输出的一部分:

t0-load.t ....... ok
tboilerplate.t ... ok
tmanifest.t ...... skipped: Author tests not required for installation

我从狭义上理解结果($ENV {RELEASE_TESTING}未设置,因此测试被跳过),但我并没有完全掌握全局.什么是预期的开发过程?我认为运行测试以确认我的模块的清单是准确的是个好主意.我应该设置该环境变量吗?如果是这样,在开发过程中的哪个阶段?

解决方法

许多模块发行版都有测试,不检查代码是否有效,但是发布是否处于合适的发布状态.像MANIFEST一样是最新的,是否所有功能都记录在POD中等等.

为了节省时间,除非设置了RELEASE_TESTING环境变量,否则可以编写这些测试以跳过它们自己.这是一个非正式的标准.这样,当人们安装模块时,这些测试不会运行,当作者只是检查代码更改是否破坏时,它们也不会运行.

在释放你的dist之前,你应该运行RELEASE_TESTING = 1 make test(或Build等效).如果您使用Dist::Zilla(我强烈推荐),您可以使用dzil test –release运行发布测试.该标志也是由TestRelease plugin自动设置的,如果你使用dzil,你肯定会使用它.

通常用于控制测试的其他环境变量是AUTOMATED_TESTING和AUTHOR_TESTING. AUTOMATED_TESTING由CPAN testers运行自动烟雾测试设置.

(编辑:李大同)

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

    推荐文章
      热点阅读