SlideShare a Scribd company logo
Yandex
experience in
screenshot
based testing
Selenium Camp, 28.02.14
Леонид Руденко
lead QA engineer
@leonsabr
leonsabr@yandex-team.ru
http://habrahabr.ru/
company/yandex/blog/
200968/
Серп
Колдунщик
Колдунщик
Вы тестируете представление?
Вы сравниваете скриншоты?
Знаете проблемы?
Yandex experience-in-screenshot-based-testing-seleniumcamp-2014
План
Зачем тестировать верстку
Проблемы и решения
Демо
А оно вам надо?
Зачем тестировать верстку
Проблемы и решения
Демо
А оно вам надо?
Обычные функциональные тесты
Слишком долго
«Сдвиг на пиксель – откатываем!»
Сравнение скриншотов
В основе
Зачем тестировать верстку
Проблемы и решения
Демо
А оно вам надо?
Проблемы
• Серп – «шумная» страница
• Кроссбраузерность
• Как сделать хороший отчет?
Страница выдачи изменчива
Страница выдачи изменчива
Так проще!
Selenium Grid
Yandex experience-in-screenshot-based-testing-seleniumcamp-2014
Специальная олимпиада браузеров
Opera: нужен скриншот?
Opera: нужен скриншот?

window.open(!
"http://www.yandex.ru", !
"ya",!
"height=400,width=1200”!
);!

26
Специальная олимпиада браузеров
IE
Windows
Потерянные клики
Специальная олимпиада браузеров
Функциональные тесты
WebDriver driver = ...;!
driver.get()/findElement()/...!
...!
assertThat(...);!
Функциональные тесты
WebDriver driver = ...;!
driver.get()/findElement()/...!
...!
assertThat(...);!
driver.get()/findElement()/...!
...!
assertThat(...);!
!
Функциональные тесты + скриншот
WebDriver driver = ...;!
driver.get()/findElement()/...!
...!
takeScreenshot(element);!
!
!
!
!
Как представить результаты?
Как представить результаты?
•  все важное – наверх
•  скриншоты не прятать
•  помочь в считывании диффа
•  разделять диффы скриншотов и broken
•  устаревшие сценарии не интересны
Зачем тестировать верстку
Проблемы и решения
Демо
А оно вам надо?
Кунсткамера: поехал текст
Кунсткамера: изображения
Кунсткамера: CSS
Кунсткамера: данные
Кунсткамера: переводы
В чем профит?
Зачем тестировать верстку
Проблемы и решения
Демо
А оно вам надо?
Стоит обратить внимание, если
•  нужно тестировать верстку
Стоит обратить внимание, если
•  нужно тестировать статическую графику
Стоит обратить внимание, если
•  у сервиса есть «темы оформления»
Твой сервис?
Что может доставить проблемы?
•  изменчивость сервиса
Что может доставить проблемы?
•  нужно больше браузеров
Что может доставить проблемы?
•  случайные ошибки (IE, фокус, …)
Что было дальше: весь серп
Что было дальше: CI
Вопросы?

More Related Content

PPTX
CodeFest
PPTX
Qa Automation - отбрасываем лишнее и тестируем суть
PPTX
Автоматизированное тестирование верстки веб-сайтов, используя сравнение с диз...
PPTX
Как играть без игрока
PPTX
Автоматизация визуального тестирования
PPTX
SECON'2016. Стахиевич Андрей, Selenide: используем listener-ы
PPTX
Cовременный контроль качества: давай сделаем это по-быстрому...
ODP
The fast and the continuous
CodeFest
Qa Automation - отбрасываем лишнее и тестируем суть
Автоматизированное тестирование верстки веб-сайтов, используя сравнение с диз...
Как играть без игрока
Автоматизация визуального тестирования
SECON'2016. Стахиевич Андрей, Selenide: используем listener-ы
Cовременный контроль качества: давай сделаем это по-быстрому...
The fast and the continuous

What's hot (17)

PPSX
История HERE Maps for Windows: меняемся не изменяя качеству
PPTX
Автоматизированное тестирование UI на C# + Selenium WebDriver
PPTX
Построение процесса тестирования производительности игрового клиента
PPTX
Тестирование производительности клиентсайда
PDF
Т. Черемных "Автоматизация тестирования верстки", DUMP-2014
PPTX
Webium: Page Objects in Python
PPTX
Автоматизация тестирования: доступна каждому или удел избранных?
PPTX
Selenide –  лаконичные тесты на Selenium 2 WebDriver + Java bindings
PPTX
SoapUI one key to all doors
PPTX
Selenide
PDF
Встреча "Front-end: на старт, внимание, разработка!", Сергей Пузанков
PDF
Grail - CodeFest'2015
PPTX
UXspb / Популярные ux-грабли 260214
PPT
Юрий Цыганенко
PPTX
One drive code spacemalinina 2
PPTX
Андрей Стахиевич - Тестирование в облаках
PDF
Andrew Stepanov, Epam Systems "Zend Framework Projects Optimization by Andrew...
История HERE Maps for Windows: меняемся не изменяя качеству
Автоматизированное тестирование UI на C# + Selenium WebDriver
Построение процесса тестирования производительности игрового клиента
Тестирование производительности клиентсайда
Т. Черемных "Автоматизация тестирования верстки", DUMP-2014
Webium: Page Objects in Python
Автоматизация тестирования: доступна каждому или удел избранных?
Selenide –  лаконичные тесты на Selenium 2 WebDriver + Java bindings
SoapUI one key to all doors
Selenide
Встреча "Front-end: на старт, внимание, разработка!", Сергей Пузанков
Grail - CodeFest'2015
UXspb / Популярные ux-грабли 260214
Юрий Цыганенко
One drive code spacemalinina 2
Андрей Стахиевич - Тестирование в облаках
Andrew Stepanov, Epam Systems "Zend Framework Projects Optimization by Andrew...
Ad

Similar to Yandex experience-in-screenshot-based-testing-seleniumcamp-2014 (20)

PPTX
Автоматизация визуального тестирования адаптивного дизайна на примере Galen F...
PPTX
Автоматизация визуального тестирования адаптивного дизайна на примере Galen F...
PDF
Изоморфные React-приложения: производительность и масштабирование
PPTX
Изоморфные React-приложения производительность и масштабирование / Денис Изма...
ODP
The fast and the continuous - SQA Days 16
PDF
Алексей Авдеев — Применение Backbone.js для рефакторинга фронтенда веб-прилож...
PPTX
Automating Canvas: difficult but possible
PDF
Сергей Кокшаров. Особенности SEO для сайтов на JavaScript
ODP
Системное тестирование приложений на Ruby on Rails с применением Rspec и Cap...
PDF
Изоморфные react-приложения
PDF
Доклады с прошедшей JiraMania: про обновления, зависимости и дедлоки
PDF
Экономически эффективный процесс тестирования
PPTX
Фреймворк автотестирования веб-сервисов своими силами
PPTX
Web driver история одной миграции
PPT
Решения для автоматизации тестирования Web-приложений на базе Selenium
PPTX
Как улучшить тесты на Selenium с помощью "визуального тестирования"?
PPTX
Roman Marinsky "Ретроспектива вивчення UI автоматизації"
PDF
Организация процесса ручного тестирования
PDF
Процесс тестирования в распределенной команде
PDF
Светлана Федянина - Процесс тестирования в распределенной команде
Автоматизация визуального тестирования адаптивного дизайна на примере Galen F...
Автоматизация визуального тестирования адаптивного дизайна на примере Galen F...
Изоморфные React-приложения: производительность и масштабирование
Изоморфные React-приложения производительность и масштабирование / Денис Изма...
The fast and the continuous - SQA Days 16
Алексей Авдеев — Применение Backbone.js для рефакторинга фронтенда веб-прилож...
Automating Canvas: difficult but possible
Сергей Кокшаров. Особенности SEO для сайтов на JavaScript
Системное тестирование приложений на Ruby on Rails с применением Rspec и Cap...
Изоморфные react-приложения
Доклады с прошедшей JiraMania: про обновления, зависимости и дедлоки
Экономически эффективный процесс тестирования
Фреймворк автотестирования веб-сервисов своими силами
Web driver история одной миграции
Решения для автоматизации тестирования Web-приложений на базе Selenium
Как улучшить тесты на Selenium с помощью "визуального тестирования"?
Roman Marinsky "Ретроспектива вивчення UI автоматизації"
Организация процесса ручного тестирования
Процесс тестирования в распределенной команде
Светлана Федянина - Процесс тестирования в распределенной команде
Ad

Yandex experience-in-screenshot-based-testing-seleniumcamp-2014