@akon1982

Как тестировать сайт автоматически с уведомлением при проваленном тесте?

Добрый день. Подскажите, пожалуйста, как организовать тестирование сайта, написанного на PHP (например на Битриксе)

Я один разрабатываю и поддерживаю несколько сайтов. На данный момент у меня есть тесты на SELENIUM IDE (дополнение для Firefox). Они проверяют наличие на некоторых страницах сайта (работающего сайта. Насколько я понимаю это называют на production) некоторых html тегов, значения их атрибутов, и.т.д. Но запускать эти тесты надо вручную.

Ещё я ставил на локальный компьютер Сodeception. Мне он нравится больше. Но не знаю - можно ли и хорошо ли держать на работающем сайте codeception? При том, что тестировать какие-то вещи, вносящие изменения в базу данных MySQL я не буду.

А хотелось бы, чтобы тесты где-то запускались с некоторой заданной периодичностью и скоростью, проверяли работающий сайт (production). И если какой-то тест провален - присылалось бы сообщение на email. Или каким-то другим образом было бы мне уведомление о проваленном тесте.

Как это можно организовать? Или где про это прочитать?

P.S. На всякий случай упомяну, что на локальном компьютере у меня используется HG. Делаю коммиты. И периодически - push на Bitbucket. Но на сайт я загружаю файлы просто по SFTP.
  • Вопрос задан
  • 359 просмотров
Пригласить эксперта
Ответы на вопрос 2
@heahoh
Full stackoverflow developer
Правильнее будет тестировать локальную копию сайта, до выкатывания изменений в production - тем самым вы избавите себя от опасности внесения изменений в БД и более полно сможете провести приёмочные тесты. Так же сможете избавиться от проблем ложноположительных срабатываний из-за ошибок сети.
Посмотрите в сторону CI - по расписанию будет создаваться отдельный контейнер (ОС + amp + codeception), выгружаться проект из CVS, заливаться актуальная версия БД, прогоняться тесты и, если они успешно пройдены, заливать изменения в prod
Ответ написан
@AlexKuznec
Вроде бы можно делать имитацию запросов. С ходу в гугле не нашел, но что-то такое попадалось, кажется, в phpMyAdmin. В Yii2 тоже видел какие-то параметры насчет имитации. Я бы копал в эту сторону.
Теоретически, вручную можно через транзакции с обязательными откатами делать, и в случае ненормального выполнения отправлять себе письмо с ошибкой. И в базе ничего меняться не будет)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы