gpt4 book ai didi

perl - 我怎样才能在 Perl 发行版中只运行特定的测试?

转载 作者:行者123 更新时间:2023-11-28 19:41:05 27 4
gpt4 key购买 nike

这个问题与this question I asked before有关.我创建了多个测试文件(A.t、B.t、C.t 等)来测试它们各自的模块 A、B、C 等。但是当我进行 make 测试时,它会运行所有测试。但是,当我在一个特定的模块上工作时,比如 B,我想为该模块运行单元测试。完成更改后,我将运行整个套件。

那么有什么方法可以像 make test B 那样只运行使用 B.t 的测试吗?当我说“make test all”之类的话时,它会在“t”目录下运行所有​​测试吗?谢谢。

最佳答案

我只是运行我想运行的测试:

 % make; perl -Mblib t/B.t

您也可以使用 prove 做同样的事情。


-Mblib 加载模块 blib它只是为您将 blib/lib(及其下的各种特殊目录)添加到 @INC。它与 Perl 一起提供。 prove 应该用 -b 开关做同样的事情。

我的命令实际上分为两部分:make(或 ./Build for Module::Build)。这将构建源代码并将 Perl 模块和其他文件移动到“构建库”或 blib 中,作为完整安装的中间步骤。通常 make test 会针对 blib 中的版本工作,并为我刷新它。由于我是自己测试,所以我确保自己刷新 blib 并将其包含在 Perl 的模块搜索路径中。

尽管我知道这一切,但您可能会感到惊讶,因为我经常忘记执行其中一个步骤并最终针对错误的版本进行测试,无论是完全安装的旧版本(忘记 -Mblib ) 或旧的开发源代码(忘记 make)。这导致我调试语句,例如:

print "No really, this is the Foo version. kthnxbye\n";

关于perl - 我怎样才能在 Perl 发行版中只运行特定的测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2203994/

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