Я пытался следовать руководству PHPUnit о том, как настроить набор тестов с пользовательским порядком выполнения теста.Теперь я понял, что мне нужны только эти строки и некоторые включения для работы набора:
public static function suite()
{
$suite = new PHPUnit_Framework_TestSuite('Package');
return $suite;
}
Но когда я использую вышеупомянутые строки, порядок выполнения теста определяется порядком сортировки моих включений.И когда я пытаюсь изменить его с помощью suite (), как следует, тесты выполняются дважды, сначала в порядке сортировки, как определено suite (), а затем в порядке сортировки include:
public static function suite()
{
$suite = new PHPUnit_Framework_TestSuite('Package');
$suite->addTestSuite('Package_Class1Test');
$suite->addTestSuite('Package_Class2Test');
$suite->addTestSuite('Package_Class3Test');
return $suite;
}
Включения выполняются:
require_once 'Package/Class3Test.php';
require_once 'Package/Class2Test.php';
require_once 'Package/Class1Test.php';
Результат (порядок выполнения теста):
1) Class1Test
2) Class2Test
3) Class3Test
4) Class3Test
5) Class2Test
6) Class1Test
Я использую Netbeans 7.0beta для запуска PHP 5.3.5 / PHPUnit 3.5.11 в Windows7. Я прочитал руководство по phpunit (http://www.phpunit.de/manual/3.5/en/organizing-tests.html), но понятия не имею, что я делаю неправильно ...
Пожалуйста, помогите.
PS: эту проблему можно решить путем автозагрузки классов.