За последние 24 часа нас посетили 22945 программистов и 1237 роботов. Сейчас ищут 730 программистов ...

PhpUnit - как и где размещать тесты?

Тема в разделе "Прочие вопросы по PHP", создана пользователем troinfo12, 14 янв 2022.

  1. troinfo12

    troinfo12 Активный пользователь

    С нами с:
    29 ноя 2019
    Сообщения:
    9
    Симпатии:
    0
    Всем привет!

    В настоящий момент изучаю книгу PHPUnit Manual (Sebastian Bergmann).
    Также прочитал небольшую статью - https://www.kobzarev.com/programming/phpunit/

    При прочтении PHPUnit Manual у меня вопросов не возникло.

    У меня следующие вопросы:
    У вопрос следующий при разработке проекта, тесты должны находиться в отдельной папке?
    PHPUnit тесты закачиваются в репозиторий?
     
  2. Дюран

    Дюран Активный пользователь

    С нами с:
    9 мар 2018
    Сообщения:
    257
    Симпатии:
    19
    да, отдельно где то в папочке

    да, закачиваются. Это же не для локальной разработки, а всем в команде они должны быть доступны, для запуска
     
  3. Sail

    Sail Старожил

    С нами с:
    1 ноя 2016
    Сообщения:
    1.591
    Симпатии:
    360
    Немного о безопасном расположении раздела vendor и PHPUnit, в частности.
    https://thephp.cc/articles/phpunit-a-security-risk
    Выводы - в разделе статьи, который называется "Мораль этой истории".
    PS: Есть, конечно, исключения... например, библиотеки, устанавливаемые composer'ом для фронт-энда (та-же jQuery, или bootstrap)
     
  4. Androbim

    Androbim Новичок

    С нами с:
    17 июн 2021
    Сообщения:
    49
    Симпатии:
    9
    В отдельной папке, она обычно tests называется. Причем в ней можете группировать тесты как угодно, главное, чтобы они расширяли TestCase (за точность имени базового сейчас не поручусь, но суть такая). Ну и, соответственно, порядок прохождения тестов должен быть обозначен в phpunit.xml в корне проекта. Также папка tests упоминается в composer.json, но это с целью запуска команды тестировать.
    Да! Если работаете с фреймворком, там эта структура обычно уже каркасно настроена.