Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

COMAQA.BY Conf #2: "Codeception + PHP for QA Automation", Евгений Борисик, COMAQA.BY

507 Aufrufe

Veröffentlicht am

COMAQA.BY Conf #2: "Codeception + PHP for QA Automation"

Veröffentlicht in: Technologie
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

COMAQA.BY Conf #2: "Codeception + PHP for QA Automation", Евгений Борисик, COMAQA.BY

  1. 1. Codeception + PHP for QA Automation Евгений Борисик ISSoft / Coherent Solutions
  2. 2. Что такое Codeception 1. Тестирование на PHP в стиле BDD 2. 100% на базе PHPUnit 3. Тестирование баз данных 4. Тестирование веб-сервисов 5. Тестирование функциональных PHP фреймворков 6. Параллельный запуск тестов
  3. 3. Когда стоит начать использовать Codeception 1. Тестируемое приложение написано на PHP и использует такие фреймворки, как Lavarel, Symfony2, Phalcon, Zend, Yii и др. 2. Вы хотите максимально быстро и понятно для самого себя начать тестировать REST, SOAP api 3. Есть необходимость тестирования баз данных 4. Вы заинтересованы в быстром прохождении тестов 5. Функциональное и Unit-тестирование у Вас в приоритете 6. Вы тестируете статическое приложение 7. Вас интересует относительно невысокий уровень вхождения в автоматизацию
  4. 4. Когда стоит отказаться от использования Codeception 1. Преобладающее количество тестов – UI 2. Вы хотите получать Allure репорты  3. Вы выбрали Codeception только из-за совместимости с Selenium 4. Вас интересует относительно невысокий уровень вхождения в автоматизацию
  5. 5. Посредством чего запускаются тесты • PhpBrowser – эмулятор браузера; • Selenium WebDriver – настоящий браузер; • Движок подключенного Вами модуля функционального фреймворка;
  6. 6. PhpBrowser Плюсы: 1. Очень быстрый 2. Работает посредством curl-запросов Минусы: 1. Не подходит для приложений, которые активно используют js 2. Сложно фиксить ошибки в тестах
  7. 7. Selenium WebDriver Плюсы: 1. Отлично работает со всеми приложениями 2. Удобный при дебаге Минусы: 1. Медленный 2. Требует запуска Selenium Server
  8. 8. Сравним скорость выполнения PhpBrowser Selenium WebDriver
  9. 9. Как настраивать запуск тестов
  10. 10. Как создавать тестовые классы «Классическим» способом с помощью IDE
  11. 11. Как создавать тестовые классы С помощью командной строки generate:cept (Codeception scenario) – задаём желаемый вид тестового класса; acceptance – указываем, к какой группе тестов будет относится новый класс; LogoutTest – имя тестового класса, к названию автоматически добавить приставка «Cept».
  12. 12. Тестовые классы вида Cept
  13. 13. Тестовые классы вида Cest
  14. 14. Тестирование веб-сервисов • REST and SOAP • Методы для аутентификации • Методы для проверки статусов и хэдеров • Методы для работы с результатами запросов
  15. 15. Пример теста
  16. 16. Тестирование баз данных Делаем дамп базы и помещаем его в папку _data.
  17. 17. Тестирование баз данных 1. Запросы INSERT and SELECT 2. После прохождения тестов база данных полностью очищается и заново заполняется с помощью скрипта
  18. 18. Codeception – «копаем» глубже Группировка тестов Запуск тестов: codecept run –g admin
  19. 19. Codeception – «копаем» глубже Использование StepObjects pattern
  20. 20. Codeception – «копаем» глубже Использование PageObjects pattern
  21. 21. Codeception – «копаем» глубже Использование PageObjects pattern Cest: Cept:
  22. 22. Codeception – «копаем» глубже Репортинг • Позволяет создавать отчёты в разном формате: html, xml, tap, json. • Тип отчёта задаётся во время запуска в качестве флага. • Нету интеграции со сторонними фреймворками репортинга.
  23. 23. Codeception – «копаем» глубже Репортинг
  24. 24. Подведём итоги 1. Codeception идеально подходит для php-приложений 2. Codeception работает очень быстро через PhpBrowser 3. Codeception создан в первую очередь для функционального и unit-тестирования, но это не значит, что с помощью его не стоит тестировать UI 4. Codeception – хороший выбор для тестирования БД, если нет необходимости делать UPDATE и DELETE запросы 5. Codeception – отличный выбор для тестирования REST и SOAP сервисов 6. Codeception позволяет генерировать html репорт со своей спецификой 7. Codeception не имеет интеграции со сторонними фреймворками для репортинга
  25. 25. Спасибо за внимание Евгений Борисик ISSoft / Coherent Solutions www.comaqa.by

×