Лучшие практики PHPUnit для организации тестов

Сейчас я собираюсь начать с нуля с тестами phpunit для проекта. Поэтому я изучал некоторые проекты (например, Zend), чтобы увидеть, как они делают вещи и как они организуют свои тесты.

Большинство вещей довольно понятны, единственное, с чем у меня возникли проблемы, это как правильно организовать тестовые наборы. У Zend есть AllTests.php, из которого загружаются другие тестовые наборы.
Если посмотреть на класс, то он использует PHPUnit_Framework_TestSuite для создания объекта набора и последующего добавления в него других наборов, но если я посмотрю в документации PHPUnit по организации тестов в PHPUnit версий после 3.4, то там есть только описание для XML или FileHierarchy. Вариант с использованием классов для организации тестов был удален.
Я не нашел ничего о том, что этот метод устарел, и такие проекты, как Zend, все еще используют его.

Но если он устарел, как я смогу организовать тесты в той же структуре с помощью xml-конфигурации? Выполнение всех тестов - это не проблема, но как бы я организовал тесты (в xml), если я хочу выполнить только несколько тестов. Может быть, создать несколько xmls, где я укажу только несколько тестов/наборов тестов для выполнения?

Так, если я хочу протестировать только модуль1 и модуль2 приложения, я должен завести дополнительный xml для каждого и определить в нем наборы тестов только для этих модулей (классов, используемых модулем). А также один, определяющий тестовый набор для всех тестов?

Или лучше использовать аннотацию @group для конкретных тестов, чтобы отметить, что они предназначены для модуля1 или модуля2?

Заранее спасибо за то, что указали мне на лучшие практики.

67
задан Prof. Falken 9 August 2012 в 08:19
поделиться