Я пытаюсь понять, как работает Трэвис, следуя различным подходам, предложенным в разных уроках в Интернете. То, что я пытаюсь сделать, - это пройти некоторые тесты, но ни один учебник не является достаточно хорошим, чтобы дать мне представление о том, что я делаю неправильно или отсутствует.
Вот мои технические характеристики travis.yml:
Требуется для запуска проекта в правильной среде.
язык: php
sudo: обязательно
dist: trusty
Версии PHP, с которыми вы хотите запускать свой проект.
PHP:
MySQL:
база данных: wordpress_test
имя пользователя: root
кодировка: utf8
Команды, запускаемые до запуска среды.
before_script:
самообновление композитора
composer install --prefer-source --no-взаимодействия
sudo add-apt-repository ppa: ondrej / php -y
sudo apt-get update> / dev / null
sudo apt-get install -y --force-yes apache2 libapache2-mod-php7.0 php7.0-curl php7.0-mysql php7.0-intl
sudo /etc/init.d/apache2 restart
phpenv config-rm xdebug.ini
mysql -e 'создать базу данных wordpress_test'
sh -e /etc/init.d/xvfb start
DISPLAY экспорта =: 99,0
wget http://selenium -release.storage.googleapis.com / 3.9 / selenium-server-standalone-3.9.1.jar
java -jar selenium-server-standalone-3.9.1.jar> / dev / null &
сон 5
Команды, которые вы хотите выполнить, которые будут проверять вашу сборку.
скрипт: vendor / bin / behat
allow_failures: разрешить сбой этой сборки в указанных средах.
fast_finish: Если ваша сборка не удалась, не пытайтесь продолжить сборку, просто остановитесь.
матрица:
allow_failures:
- php: 7.1
- php: hhvm
Простой тест behat, который я пытаюсь запустить:
особенность: ls
Для входа мне нужно перейти на страницу входа
Сценарий: посетите домашнюю страницу и нажмите на ссылку для входа
Когда я иду на "http://localhost/wordpress"
И я следую "Войти"
Тогда я должен быть на "http://localhost/wordpress/wp-login.php"
И журнал от travis CI об ошибке:
Ошибка Travis CI
Это может быть что-то в конфигурации Travis.yml, которое мне не хватает, чтобы запустить этот тест, так как при локальном запуске он проходит легко. Я также попытался сделать его локальным сбоем, прежде чем сделать его пригодным для тестирования, чтобы проверить, достаточно ли хорош тест. Во всяком случае, после того, как я потратил впустую потраченное время, чтобы выяснить, почему это не работает, я надеюсь, что кто-то увидит проблему, которую я пока не могу увидеть, и поможет мне понять, что я делаю неправильно.
Если есть какая-то другая важная информация, которой я забыл поделиться, дайте мне знать, и я обновлю вопрос.