当我使用Test::Class
和Test::More
进行系统测试时,似乎测试用例并行执行。然而,我的测试之间存在依赖关系,因此我希望测试执行系列。我怎么能这样做?
答案 0 :(得分:3)
从底部的NOTES部分中的模块Test :: Unit :: TestCase的文档:
如果您需要指定测试订单,可以执行以下操作之一:
设置@TESTS
我们的@TESTS = qw(my_test my_test_2);
这是最简单,最推荐的方法。
覆盖list_tests()方法
返回方法名的有序列表
提供suite()方法
返回Test :: Unit :: TestSuite。
我个人2美分:
使用Test::Class
代替Test::Unit::TestCase
可能是更好的选择。模块文档甚至有一个很好的introduction,以及"Confused Junit Users"上有用的部分,即使你继续使用Test :: Unit :: TestCase,你应该阅读它。
答案 1 :(得分:3)
Test::Class按字母顺序执行测试。这很烦人,但是您可以按照以正确顺序执行它们的方式命名您的测试子程序。你确定他们并行运行吗?您是否可以在具有--jobs
标志的多个文件上使用prove?