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.

Доклад Виталия Котова на конференции LoveQA. "Selenium тесты. От RC и одного пользователя к WebDriver, Page Object и пулу пользователей".

175,118 views

Published on

Презентация с первой конференции Badoo для тестировщиков LoveQA.

Published in: Technology
  • Be the first to comment

Доклад Виталия Котова на конференции LoveQA. "Selenium тесты. От RC и одного пользователя к WebDriver, Page Object и пулу пользователей".

  1. 1. Selenium тесты. От RC и одного пользователя к WebDriver, PageObject и пулу пользователей.
  2. 2. О чем это я... ● Обзор програмных продуктов Selenium. ● Этапы тестирования и о тестах на каждом из них. ● Наши первые автотесты. Как и почему мы потом многое переписали. ● Что мы получили в итоге.
  3. 3. Интеграционное тестирование - тестирование совокупности компонентов системы.
  4. 4. Selenium - инструмент для автоматизированного управления браузерами. Включает в себя: Selenium IDE Selenium Remote Control Selenium Webdriver Selenium Server & Selenium Grid
  5. 5. Selenium IDE - расширение для Firefox, позволяющее записывать и воспроизводить действия пользователя в браузере.
  6. 6. Selenium WebDriver - cемейство драйверов для различных браузеров и набор клиентских библиотек на разных языках программирования.
  7. 7. Selenium Remote Control - предшественник Selenium WD. На данный момент работа над проектом преостановлена и в дальнейшем он развиваться не планируется.
  8. 8. Selenium Server - это сервер, который позволяет управлять браузером с удалённой машины, по сети...
  9. 9. Grid - кластер из нескольких серверов Selenium.
  10. 10. Как мы используем Selenium тесты.
  11. 11. Когда мы используем Selenium тесты. ● Девел - работа с тестовыми даными. ● Шоты - опционально, по группам. ● Стейджинг - все тесты, всегда. ● Продакшн - только критические тесты.
  12. 12. Какие проверки мы автоматизировали.. ● Функциональность сайта ● Наличие ошибок в Javascript ● Расположение элементов (не верстку!)
  13. 13. Первые тесты Selenium.
  14. 14. Покрытие тестами web-версию Badoo. Покрыть быстро все фичи и запустить в ТС
  15. 15. Покрытие мобильной версии Badoo тестами. WD RC
  16. 16. С чем пришлось бороться… ● Тесты написаны на двух разных фреймворках. ● Библиотека разрослась и с ней сложно работать. ● Тесты слишком длинные.
  17. 17. “Прослойка” между RC и WD. Webdriver Тест для RC Тест для WD МАГИЯ!
  18. 18. Плюсы перехода на Webdriver ● Появилась возможность писать тесты для различных браузеров. ● Единая библиотека для всех тестов. ● Использовать selenium grid. Параллелить тесты.
  19. 19. Как было в начале... Тест BadooSeleniumTC ТестТест
  20. 20. Новый подход в организации библиотеки. Тест API BadooWebDriverTC Тест Тест UI UIUI APIAPI
  21. 21. Как здорово иметь удобную библиотеку!! ● Более читаемый код. Логика отдельно, взаимодействие с интерфейсом отдельно... ● Писать новые тесты с каждым разом проще!! ● При изменении компонента в проекте меняется только код UI, сам тест не меняется..
  22. 22. Почему тесты идут так долго?..
  23. 23. Подготовка данных для теста... ● ● Предустановленные пользователи Апи на стороне сервера.
  24. 24. Интеграция QaApi в тесты... Selenium Server Тест QaApi
  25. 25. Возможности QaApi ● Быстрая подготовка данных к тесту до его начала. ● Универсальный доступ к данным пользователя. ● Возможность “очистки” пользователей для повторного использование. ● Пул пользователей на почти все возможные кейзы.
  26. 26. Пул пользователей на все случаи жизни.....
  27. 27. Что мы получили в итоге ● Кроссплатформенные и кроссбраузерные тесты. ● Короткие тесты, проверяющие конкретный кейз. ● Возможность запускать тесты параллельно. ~30 тестов / 1 поток == 25 минут. ~300 тестов / 10 поток ~= 10 минут.

×