24
Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver и BrowserMobProxy Андрей Стахиевич | issoft.by

Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

Embed Size (px)

DESCRIPTION

Выступление в QA Club Minsk (5 апреля 2014) и на SQA Days - 15 (19 апреля 2014)

Citation preview

Page 1: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver и BrowserMobProxy

Андрей Стахиевич | issoft.by

Page 2: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

Немного о себе

Андрей СтахиевичКомпания [email protected]• ASP.Net developer с 2-летним стажем• Selenium Webdriver-based test automation

specialist с 2-летним стажем• Mobile test automation specialist cо стажем 1 год

Являюсь поклонником Selenium Webdriver и связанных с ним технологий.

Page 3: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

• Производительность веба. Немного теории.

• Хранение данных о производительности. HAR архив.

• Автоматизация сбора данных. Selenium Webdriver + Browser Mob Proxy.

• HAR Storage – агрегация и визуализация данных.

Поговорим…

Page 4: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

Законодатель мод

Interaction Domain

Rich Web Client Activity

Web Performance Working Group

World Wide Web Consortium

Page 5: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

Производительность Веб

Page 6: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

Стандарт по метрике

Page 7: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

Метрики навигации

Page 8: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

HAR архив

Page 9: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

• HAR – это HTTP архив, который хранит в JSON формате взаимодействия браузера с веб приложением.

Что такое HAR ?

Page 10: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

HAR – данные о производительности

Page 11: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

Визуализация данных

Page 12: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

Автоматизация

• Selenium WebDriverдрайвер браузера

• Browser Mob Proxyвстраиваемый прокси-сервер, позволяет собирать информацию о производительности приложения и сохранять ее в HAR формате.

Page 13: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

Автотест

Page 14: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

Хочу больше

• HAR архивы надо где-то хранить.

• Данные надо агрегировать и визуализировать.

• Анализ трендов производительности приложения.

Page 15: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

HAR Storage

HAR Storage – это репозиторий для автоматизированного тестирования веб производительности на стороне клиента. Он базируется на MongoDB и Pylons.

Page 16: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

Основные фичи

• Измение показателей во времени.

• Детальная статистика.

• Агрегация и сравнение результатов.

• Экспорт чартов и таблиц.

• Встроенный HAR Viewer.

• Кроссплатформенный, кроссбраузерный.

Page 17: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

Интеграция с тестом

Post

Page 18: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

Хранение

Page 19: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

ПросмотрСтраница

Запрос

Информация по запросу

Весь список запросов

Time line

Page 20: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

Визулизация

Page 21: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

Тренды

Page 22: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

Итого

• Высокая производительность веб приложения – это тренд.

• Сформированы стандартные подходы и лучшие практики для измерения и оптимизации производительности веб приложений.

• Тестирование производительности – вовсе не обязательно очень дорогостоящий процесс.

• Тестирование производительности можно и нужно автоматизировать.

Page 23: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

Инструменты

Page 24: Андрей Стахиевич - Измеряем производительность веб приложения на стороне клиента с помощью Selenium Webdriver

Андрей Стахиевич[email protected]

Компания ISSOF Solutionshttp://www.issoft.by/

Спасибо