在多年编写普通的单元测试后,我才开始使用CodeceptionPHPUnit
。困扰我的一件事是,我找不到一种方法来控制调用测试的顺序。
在纯旧PHPUnit
的情况下,我像这样手动构建测试结构:
$suite = new PHPUnit_Framework_TestSuite();
$suite->addTest('MyFirstTest');
$suite->addTest('MySecondTest');
并且测试将按照它们添加到套件的顺序被调用。Codeception
另一方面,似乎正在遍历目录并运行它可以找到的每个测试。
我希望能够在两个级别上控制测试的顺序:
- 调用不同类型测试的顺序(即我想在
unit tests
之前运行acceptance tests
) - 我想控制在特定测试类型中调用的测试顺序(以类似的方式
PHPUnit
构建套件)
广告。2:假设我在acceptance
目录中有两个测试:
AbcCept.php
WebGuy.php
XyzCept.php
我希望能够运行XyzCept.php
before AbcCept.php
。这甚至可能吗?
并期待挑剔的评论:是的,我知道测试应该能够以任何顺序运行,而不是相互依赖,但这不是我要问的。