где я могу хранить файлы модульного теста в своем проекте php? - PullRequest
1 голос
/ 29 октября 2010

У меня есть php-проект в subversion, с типичной структурой /project/trunk/, /project/test/, /project/branches/. Я хочу начать писать модульные тесты с PHPUnit. Где хорошее место для хранения этих файлов в системе контроля версий?

Если я введу их в /project/unittests/, мне придется проверить каталог, который они тестируют параллельно, так что это небольшая проблема, которую я должен убедиться, что я делаю правильно. Если я оставлю их в проекте, скажем, на /project/trunk/unittests/, то они будут там, когда я разверну сайт, если у меня нет дополнительных ловушек, чтобы не экспортировать их или, по крайней мере, убедиться, что мой .htaccess не позволяет их обслуживать ,

Ответы [ 3 ]

3 голосов
/ 29 октября 2010

Я храню их в своем каталоге проектов, а не в отдельном каталоге svn, так как юнит-тесты напрямую связаны с состоянием проекта и могут отличаться в зависимости от состояния.Вы просто должны позаботиться о том, чтобы они не были доступны через Интернет.

Например, для каждого состояния моя структура выглядит следующим образом (с использованием Zend Framework), веб - единственный доступный через Интернет каталог:

  • приложение (контроллер, конфигурация)
  • библиотека (библиотека Zend, собственная библиотека)
  • unittests (unittests;)
  • web (index.php, .htaccess, изображения и другие неисполняемые файлы)
  • logs
1 голос
/ 29 октября 2010

Я бы поставил юнит-тесты с остальной частью вашего кода. Конечно, в отдельной папке, но это должно быть с веткой, над которой вы работаете. Я не вижу проблемы с их развертыванием на производстве. Возможно, вы захотите запустить тесты в рабочей среде, чтобы убедиться, что все работает с рабочей версией php.

1 голос
/ 29 октября 2010

Вы можете поместить их в любом месте. Лично я всегда настраиваю свой проект так:

 project
   |-- trunk/
   |     |-- ... Other directory
   |     `-- tests
   |-- branches
   |     `-- development
   `-- tags

Когда я объединяю транк с веткой разработки, я не фиксирую каталог "trunk / tests".

Таким образом, любой тег, созданный с использованием ветви разработки, не включает тесты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...