Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Автоматизированное тестирование

646 views

Published on

Published in: Technology
  • Be the first to comment

Автоматизированное тестирование

  1. 1. Автоматизированное тестирование Symfony2, PHPUnit, Jenkins
  2. 2. О чем пойдет речь ● Проблемы и решение ● Теория тестирования и чем хороши авто- тесты ● Инструменты ○ PHPUnit ○ Symfony2 ○ Jenkins ● Как мы с этим живем
  3. 3. Проблемы ● Долго и дорого исправляются баги ● Кликать в браузере - медленно и скучно ● Качество кодовой базы выходит из под контроля, ошибки, печаль
  4. 4. Решение ● Избавить пользователя от ошибок ● Научиться находить ошибки на более ранних этапах, до внедрения новых функций ● Автоматизировать постоянные и монотонные проверки
  5. 5. Теория
  6. 6. Какое бывает тестирование ● Модульное ● Интеграционное ● Системное
  7. 7. Автоматизация и покрытие ● В первую очередь наиболее важный функционал ● 100% покрытие – зло ● Не забываем про баланс
  8. 8. Что мы получаем ● Проверка работоспособности компонента еще до его интеграции ● Быстрая проверка существующего функционала при небольших изменениях, доработках ● Больше уверенности в том, что ничего не сломалось
  9. 9. Непрерывная интеграция ● В идеальном мире позволяет выкатывать исправления и новые фишки быстро и без крови ● Автоматизирует сборки проекта ● Требует разработки большого количества тестов
  10. 10. Инструменты
  11. 11. PHPUnit ● Активно поддерживается ● Гибкая конфигурация ● Хорошо работает в связке с PhpStorm ● Стандарт при написании тестов на PHP
  12. 12. Symfony2 ● PHPUnit поддерживается фреймворком ○ Инициализация ядра с разным окружением ● Есть свои обвязки для функциональных тестов
  13. 13. Jenkins ● Активно поддерживается ● Постоянно прогоняет авто-тесты ● Не требует участия человека ...море других возможностей через плагины
  14. 14. На практике
  15. 15. Как это применимо к skinon.ru ● Новый компонент "Акции" обернут тестами ● Jenkins после каждого коммита следит за тем, чтобы "Акции" не ломались
  16. 16. Как сделать еще круче ● Покрытие существующего функционала тестами ● Выделенный сервер непрерывной интеграции ● Jenkins и PHP_CodeSniffer для принятия определенного стандарта кодинг-стайла и прекратить холивары о табах и пробелах
  17. 17. Пономарев Алексей :: alexey.detr.skinon@gmail.com

×