如何使Perl测试按给定顺序执行?

如何使Perl测试按给定顺序执行?,perl,testing,Perl,Testing,当我使用Test::Class和Test::More进行系统测试时,测试用例似乎是并行执行的。然而,我的测试在它们之间有依赖关系,因此我希望让测试以串行方式执行。我如何做到这一点?来自底部注释部分的模块测试::单元::测试用例文档: 如果需要指定测试顺序,可以执行以下操作之一: 设置@TESTS 我们的@TESTS=qw(我的测试我的测试2) 这是最简单的推荐方法 重写list_tests()方法 返回方法名的有序列表的步骤 提供一个suite()方法 它返回一个Test::Unit::Tes

当我使用
Test::Class
Test::More
进行系统测试时,测试用例似乎是并行执行的。然而,我的测试在它们之间有依赖关系,因此我希望让测试以串行方式执行。我如何做到这一点?

来自底部注释部分的模块测试::单元::测试用例文档:

如果需要指定测试顺序,可以执行以下操作之一:

  • 设置@TESTS

    我们的@TESTS=qw(我的测试我的测试2)

    这是最简单的推荐方法

  • 重写list_tests()方法

    返回方法名的有序列表的步骤

  • 提供一个suite()方法

    它返回一个Test::Unit::TestSuite

我个人的2美分:
使用
Test::Class
而不是
Test::Unit::TestCase
可能是更好的选择。模块文档甚至有一个好的、有用的部分,即使您一直使用Test::Unit::TestCase,您也应该阅读该部分。

按字母顺序执行其测试。这很烦人,但是您可以以一种方式命名您的测试子例程,使它们以正确的顺序执行。你确定它们是并行运行的吗?您是否可能在多个带有
--jobs
标志的文件上使用

如果他们是Moose用户,OP可能还想看看Test::Routine——这很不错。很抱歉,我发布了错误的perl测试模块。是的,我使用Test::类和Test::更多这样的模块来做我的测试用例。似乎没有任何信息教我如何按顺序执行测试用例。问题是我需要一个testcase的返回值用于以下测试用例。