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

174,971 views

Published on

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

Published in: Technology
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
174,971
On SlideShare
0
From Embeds
0
Number of Embeds
172,169
Actions
Shares
0
Downloads
55
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide

Доклад Виталия Котова на конференции 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 минут.

×