SlideShare a Scribd company logo
Selenium RC для QAинженеров: возможности, трудности и нюансы в использованииЯнАлексеенкоGGA Software Services
СодержаниеВозможностиНаш подход к тестированиюНедостаткиПроблема синхронизацииПроблемы кросс-браузерного тестированияЧто нужно знать?Работа с файлами  XSS инъекции  Flash/Flex приложения  Silverlight приложенияДемонстрации
ПоддержкаOSWindows SolarisAppleLinux
ПоддержкаOSSelenium 2.0 дает возможность тестироватьМобильные версии сайтов,используя WebDriver
ДемонстрацияПример работы с мобильнымиустройствамиУстановить Android SDK на ПКУстановить Android WebDriver нателефонПодключить телефон к USB в    debug режимеВыполнить следующие командыcd/android_sdk/tools/adb devicesВернёт <serialID>adb-s <serialId> forward tcp:8080 tcp:8080http://code.google.com/p/selenium/wiki/AndroidDriver
Поддерживаемые БраузерыInternet Explorer 6+Safari 3+Fire Fox 2+Google Chrome 3+Opera 8+
Популярность браузеров
Популярность браузеров
Время Тестирования
Языки ПрограммированияПрограммируй наА так же создавай свои языки, используя API
Тестирование & SeleniumФункциональность Web-приложенийРабота JavaScriptJavaScript ошибкиСтиль страниц (вёрстка)ОрфографияБезопасность приложенияXSS уязвимостиSQL инъекциии д.р.  Flash, Silverlight…  Performance
Результаты тестированияИмена выполняемых операций, а также имена бизнес-функцийВремя выполнения операцийФункциональные ошибки  JavaScriptошибкиПроверка валидности HTML(http://validator.w3.org/)  Screenshots & Locatorshots
Результаты тестированияHtml форматtxt форматlogУдалённый доступ к результатам с визуальным оформлениемУпрощённый формат для сканера логовУстановка Errorcode при завершении теста с ошибкой
Результаты тестирования
Результаты тестирования
Наш выбор+SVN: разработкатестов в командеКомпилируетЗапускаетХранит историюHudson
Структура Фреймворкаконфигурация тестасценарийтестированияRunnerотчетыредакторсценариевкод тестоввспомогательныйфункционалЛокаторы объектов
ОрганизациятестовПараметрытестаФункциональность приложениясценарий тестированияТестированиекод тестовЛокаторы объектов
Проект на этапе разработки
Готовый проект
ДемонстрацияWeb-application:Компоненты интерфейса:библиотека MooTools  HTML 5CKEditor  FlashВидео ролик:http://screencast.com/t/KlhRzHxzn
Недостатки SeleniumНативные окна браузераИсключение: метод keyPressNative  Digest & NTLM Authentication Scheme forHTTPНеобходимо настроить браузер  Flash/Flex, SilverlightСинхронизация
Digest & NTLM Authentication  Internet Explorer (regedit):Создать ключ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_HTTP_USERNAME_PASSWORD_DISABLEСоздатьDWORDзначенияiexplore.exe & explorer.exeиустановить их значения0.FireFox (about:config):Установить network.http.phishy-userpass-length = 255Добавить тестируемые домены вnetwork.automatic-ntlm-auth.trusted-urishttp://stackoverflow.com/questions/3021602
СинхронизацияJava: Sleep для потокаSelenium: waitForPageToLoadДостаточно? Нет, т.к. На странице есть JavaScriptПути решения: Ждать конкретные объекты на странице         Это не универсальный методФлаги, вставляемые на страницуразработчикамиУниверсальный подход
СинхронизацияЗагрузка/Выгрузка объекта по Xpath, CSS, IDЗагрузка/Выгрузка текста целиком/частичноЗагрузка/Выгрузка объекта/текста после RefreshЗагрузка объектов по их численностиОжидание изменений в JavaScriptОжидание новых окон
Проблемы кросс-браузерного тестирования  Самопроизвольное закрытие теста– Разбивай тесты на небольшие кусочки  Медленная работа с Xpath– Используй CSS & JavaScript  Рассинхронизация работымежду Xpath & CSS– Используй JavaScript  Не поддерживает HTML 5 в полной мере
Проблемы кросс-браузерного тестированияHTTP authentication (ver. 4)– Воспользуйся асинхронной работой SeleniumwaitForPageToLoad(ver. 5): Result of expression‘this.getCurrentWindow’[undefined] is not a functionРаботает только в режиме *safariproxy(ver. 5)
Проблемы кросс-браузерного тестированияHTTP authenticationВозможны проблемы с сертификатамиwaitForPageToLoad:Object[object HTMLIFrameElement] has no method 'getCurrentWindow‘
Проблемы кросс-браузерного тестированияПри обычном обновлении FireFoxс версии 3.5 до 3.6и использовании профиля для запуска тестов возникает проблемас сертификатом: services.addons.mozilla.org:443– Необходимо устанавливать новую версию FireFox, полностью удалив старую, вместе с имеющимеся профилями.
Работа с IFrameДля активации элемента используйи/или Пример:
Что нужно знатьНет доступа к нативным формамКакие компоненты используются(будут использоваться) в Web приложенииТрудности при работе с IFrame  Digest & NTLM AuthenticationНестабильная работа IEМедленная работа IE c XPathАсинхронное выполнение операций
Работа с файламиUpload:keyPressNative  JavaScriptFlash + JS + keyPressNativeDownload:Selenium +wgetwget -q –header “Cookie:$cookie”  –P $path $urlFireFox ProfilekeyPressNative
Проблемы кросс-браузерного тестированияVS
Демонстрация  Web-application:Загрузчик файлов использует:FlashДля скачивания используем:WgetВидео ролики:Safari: http://screencast.com/t/DGBoC41fGoogle Chrome: http://screencast.com/t/pvQjDkNuScqO
XSS injectionПример уязвимости:…  Selenium:Verify JS variable‘inject’ usinghttp://ha.ckers.org/xss.html
Демонстрация  Web-application:  SeleniumIDE для наглядности
Flash/Flex applicationОткрыть доступ к необходимым функциям,используяExternalInterfaceВоспользоваться JavaScript для вызова соответствующих функций Flash  Native keyboard events  Native mouse events	Интеграция стороннихсредств тестирования
Демонстрация  Web-application: 	http://linux.ria.ua/JsFlash/simple.html	http://www.uni-dubna.ru/~sidorov/workz/flash/operate2.html  SeleniumIDE для наглядности
Silverlight applicationОткрыть доступ к необходимым функцияматрибут[ScriptableType]для страницеатрибут[ScriptableMember]для функцииВоспользоваться JavaScript для вызова      соответствующих функций Silverlight  Native keyboard events  Native mouse events	Интеграция сторонних средств тестирования
Демонстрация  Web-application: Демонстрационное приложение 		       – Сумма чисел  SeleniumIDE для наглядности
Спасибо за вниманиеВопросыЯнАлексеенкоGGA Software ServicesСанкт-Петербургalexeenko@ggasoftware.com

More Related Content

What's hot (20)

PPTX
Причины и способы имитации back-end'а
Oksana Avchinnikova
 
PPTX
Экосистема Selenium
SQALab
 
PPTX
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
DataArt
 
PDF
Т. Черемных "Автоматизация тестирования верстки", DUMP-2014
it-people
 
PDF
Дело тестера боится: как в опытных руках могут заиграть Java и TestNg
IT61
 
PDF
Подводная часть айсберга: что делать, чтобы автотесты не превратились в Титаник
SQALab
 
PDF
Автоматизация функционального тестирования REST API
Pavel Asanov
 
PDF
Как мы приручили демона или процесс тестирования демонов в Badoo
SQALab
 
PPTX
Automation testing desktop applications
Алексей Стягайло
 
PPTX
QA Fest 2016. Александр Неделяев. Браузерные помощники тестировщика
QAFest
 
PPTX
GUI-автоматизация в Telerik Test Studio
SQALab
 
PPTX
Расширяемая платформа для создания и управления автоматизированными тестами н...
jazzteam
 
PDF
Тестирование CSS-регрессий с Gemini — Сергей Татаринцев
Yandex
 
PPTX
автоматизация тестирования с помощью Selenium
vyacheslavmaslov
 
PDF
«Winium — это как Selenium, только под Windows» – Глеб Головин, 2ГИС
2ГИС Технологии
 
PPT
Client Side Autotesting Flash
guestb0af15
 
PPTX
автоматизация тестирования с помощью Selenium
vyacheslavmaslov
 
PPTX
COMAQA.BY Conf #2: "Codeception + PHP for QA Automation", Евгений Борисик, CO...
COMAQA.BY
 
PPTX
Эволюция автотестирования на Selenium
SQALab
 
PDF
Концепция QaAPI: взгляд на тестирование с другой стороны баррикад
SQALab
 
Причины и способы имитации back-end'а
Oksana Avchinnikova
 
Экосистема Selenium
SQALab
 
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
DataArt
 
Т. Черемных "Автоматизация тестирования верстки", DUMP-2014
it-people
 
Дело тестера боится: как в опытных руках могут заиграть Java и TestNg
IT61
 
Подводная часть айсберга: что делать, чтобы автотесты не превратились в Титаник
SQALab
 
Автоматизация функционального тестирования REST API
Pavel Asanov
 
Как мы приручили демона или процесс тестирования демонов в Badoo
SQALab
 
Automation testing desktop applications
Алексей Стягайло
 
QA Fest 2016. Александр Неделяев. Браузерные помощники тестировщика
QAFest
 
GUI-автоматизация в Telerik Test Studio
SQALab
 
Расширяемая платформа для создания и управления автоматизированными тестами н...
jazzteam
 
Тестирование CSS-регрессий с Gemini — Сергей Татаринцев
Yandex
 
автоматизация тестирования с помощью Selenium
vyacheslavmaslov
 
«Winium — это как Selenium, только под Windows» – Глеб Головин, 2ГИС
2ГИС Технологии
 
Client Side Autotesting Flash
guestb0af15
 
автоматизация тестирования с помощью Selenium
vyacheslavmaslov
 
COMAQA.BY Conf #2: "Codeception + PHP for QA Automation", Евгений Борисик, CO...
COMAQA.BY
 
Эволюция автотестирования на Selenium
SQALab
 
Концепция QaAPI: взгляд на тестирование с другой стороны баррикад
SQALab
 

Viewers also liked (14)

PDF
Selenium for Designers
Fabio Fabbrucci
 
PDF
A Whirlwind Tour of Test::Class
Curtis Poe
 
PDF
Selenium Page Objects101
Adam Goucher
 
PPT
Reliable tests with selenium web driver
PawelPabich
 
PDF
Funcargs & other fun with pytest
Brianna Laugher
 
KEY
JavaScript Testing VIA Selenium
Adam Christian
 
PPTX
Large scale automation with jenkins
Kohsuke Kawaguchi
 
PDF
Testing at Yammer with FooUnit, Jellyfish, and Sauce Labs
Sauce Labs
 
PDF
JUnit Kung Fu: Getting More Out of Your Unit Tests
John Ferguson Smart Limited
 
KEY
Continuous Integration, the minimum viable product
Julian Simpson
 
PDF
Selenium Users Anonymous
Dave Haeffner
 
PPTX
Mobile Test Automation at eBay
Dominik Dary
 
PDF
Continuous Deployment - Lean LA
Ash Maurya
 
PDF
Creating Maintainable Automated Acceptance Tests
Jez Humble
 
Selenium for Designers
Fabio Fabbrucci
 
A Whirlwind Tour of Test::Class
Curtis Poe
 
Selenium Page Objects101
Adam Goucher
 
Reliable tests with selenium web driver
PawelPabich
 
Funcargs & other fun with pytest
Brianna Laugher
 
JavaScript Testing VIA Selenium
Adam Christian
 
Large scale automation with jenkins
Kohsuke Kawaguchi
 
Testing at Yammer with FooUnit, Jellyfish, and Sauce Labs
Sauce Labs
 
JUnit Kung Fu: Getting More Out of Your Unit Tests
John Ferguson Smart Limited
 
Continuous Integration, the minimum viable product
Julian Simpson
 
Selenium Users Anonymous
Dave Haeffner
 
Mobile Test Automation at eBay
Dominik Dary
 
Continuous Deployment - Lean LA
Ash Maurya
 
Creating Maintainable Automated Acceptance Tests
Jez Humble
 
Ad

Similar to (Seleniumcamp) Selenium RC for QA Engineer (20)

PDF
Доклад Виталия Котова на конференции LoveQA. "Selenium тесты. От RC и одного ...
Badoo Development
 
ODP
Selenium на практике и подводные камни
SQALab
 
PPTX
3 zalomlenkov selenium
qasib
 
PPT
Функциональное тестирование. Семейство продуктов Selenium
Stanislav Korchagin
 
KEY
Путеводитель в мире Selenium
Kirill Klimov
 
PPTX
Каким будет Selenium 3.0 и Selenium 4.0
SQALab
 
PDF
Testing with Selenium
OSLL
 
PPT
Selenium 2.0: обзор новых возможностей
Paul Stashevsky
 
PPTX
Олександр Хотемський “Обзор архитектуры Selenium WebDriver”
Dakiry
 
PDF
CodeFest 2012. Курносова Т. и Баяндин А. — Selenium2: полевые испытания
CodeFest
 
PPTX
Основы и нюансы параллельного тестрования
bearoff
 
PPTX
Автоматизированное тестирование UI на C# + Selenium WebDriver
Pavel Tsukanov
 
PPTX
Solit 2013, Эволюция тестирования на Selenium, Мычко Алексей
solit
 
PPT
(Seleniumcamp) Selenium IDE как артефакт пикника на обочине
Alexei Lupan
 
PPTX
Автоматизируем тестирование UI с Ruby, Cucumber и Selenium
SQALab
 
PPTX
ОЛЕКСАНДР ХОТЕМСЬКИЙ «Огляд екосистеми Selenium» QADay 2019
QADay
 
PPTX
Технологии тестирования Rich Web client, Андрей Плешков, Форум Технологий Mai...
tfmailru
 
PPTX
Selen framework
Alexander Khaerov
 
PPTX
Automation Functional Testing in Agile Projects
Andrey Rebrov
 
Доклад Виталия Котова на конференции LoveQA. "Selenium тесты. От RC и одного ...
Badoo Development
 
Selenium на практике и подводные камни
SQALab
 
3 zalomlenkov selenium
qasib
 
Функциональное тестирование. Семейство продуктов Selenium
Stanislav Korchagin
 
Путеводитель в мире Selenium
Kirill Klimov
 
Каким будет Selenium 3.0 и Selenium 4.0
SQALab
 
Testing with Selenium
OSLL
 
Selenium 2.0: обзор новых возможностей
Paul Stashevsky
 
Олександр Хотемський “Обзор архитектуры Selenium WebDriver”
Dakiry
 
CodeFest 2012. Курносова Т. и Баяндин А. — Selenium2: полевые испытания
CodeFest
 
Основы и нюансы параллельного тестрования
bearoff
 
Автоматизированное тестирование UI на C# + Selenium WebDriver
Pavel Tsukanov
 
Solit 2013, Эволюция тестирования на Selenium, Мычко Алексей
solit
 
(Seleniumcamp) Selenium IDE как артефакт пикника на обочине
Alexei Lupan
 
Автоматизируем тестирование UI с Ruby, Cucumber и Selenium
SQALab
 
ОЛЕКСАНДР ХОТЕМСЬКИЙ «Огляд екосистеми Selenium» QADay 2019
QADay
 
Технологии тестирования Rich Web client, Андрей Плешков, Форум Технологий Mai...
tfmailru
 
Selen framework
Alexander Khaerov
 
Automation Functional Testing in Agile Projects
Andrey Rebrov
 
Ad

(Seleniumcamp) Selenium RC for QA Engineer

Editor's Notes

  • #6: Демонстрация работы Selenium на мобильном устройстве (длительность 5 – 10 минут).Для этой демонстрации необходим WiFi + камера, для просмотра аудиторией телефона с проектора.
  • #22: Демонстрация включит в себя рассказ о framework, оргнизации тестов, отчетахЗапуск тестов реального проектаДлительность порядка 20 – 30 минут.
  • #35: Продолжительность демонстрации 5 – 10 минут.
  • #37: Продолжительность демонстрации 5 – 10 мин.
  • #39: Продолжительность демонстрации 5 мин.
  • #41: Продолжительность демонстрации 5 мин.