SlideShare una empresa de Scribd logo
1 de 41
Selenium RC для QAинженеров: возможности, трудности и нюансы в использовании ЯнАлексеенко GGA Software Services
Содержание Возможности Наш подход к тестированию Недостатки Проблема синхронизации Проблемы кросс-браузерного тестирования Что нужно знать? Работа с файлами   XSS инъекции   Flash/Flex приложения   Silverlight приложения Демонстрации
ПоддержкаOS Windows  Solaris Apple Linux
ПоддержкаOS Selenium 2.0 дает возможность тестировать Мобильные версии сайтов, используя WebDriver
Демонстрация Пример работы с мобильными устройствами Установить Android SDK на ПК Установить Android WebDriver на телефон Подключить телефон к USB в     debug режиме Выполнить следующие команды cd/android_sdk/tools/adb devices Вернёт <serialID> adb-s <serialId> forward tcp:8080 tcp:8080 http://code.google.com/p/selenium/wiki/AndroidDriver
Поддерживаемые Браузеры Internet Explorer 6+ Safari 3+ Fire Fox 2+ Google Chrome 3+ Opera 8+
Популярность браузеров
Популярность браузеров
Время Тестирования
Языки Программирования Программируй на А так же создавай свои языки, используя API
Тестирование & Selenium Функциональность Web-приложений Работа JavaScript JavaScript ошибки Стиль страниц (вёрстка) Орфография Безопасность приложения XSS уязвимости SQL инъекции и д.р.   Flash, Silverlight…   Performance
Результаты тестирования Имена выполняемых операций,  а также имена бизнес-функций Время выполнения операций Функциональные ошибки   JavaScriptошибки Проверка валидности HTML (http://validator.w3.org/)   Screenshots & Locatorshots
Результаты тестирования Html формат txt формат log Удалённый доступ к результатам  с визуальным оформлением Упрощённый формат для  сканера логов Установка Errorcode при  завершении теста с ошибкой
Результаты тестирования
Результаты тестирования
Наш выбор + SVN: разработка тестов в команде Компилирует Запускает Хранит историю Hudson
Структура Фреймворка конфигурация теста сценарий тестирования Runner отчеты редактор сценариев код тестов вспомогательный функционал Локаторы объектов
Организациятестов Параметры теста Функциональность  приложения сценарий тестирования Тестирование код тестов Локаторы объектов
Проект на этапе разработки
Готовый проект
Демонстрация Web-application: Компоненты интерфейса: библиотека MooTools   HTML 5 CKEditor   Flash Видео ролик: http://screencast.com/t/KlhRzHxzn
Недостатки Selenium Нативные окна браузера Исключение: метод keyPressNative   Digest & NTLM Authentication Scheme forHTTP Необходимо настроить браузер   Flash/Flex, Silverlight Синхронизация
Digest & NTLM Authentication   Internet Explorer (regedit): Создать ключ HKEY_LOCAL_MACHINEOFTWAREicrosoftnternet ExploreraineatureControlEATURE_HTTP_USERNAME_PASSWORD_DISABLE СоздатьDWORDзначенияiexplore.exe & explorer.exeиустановить их значения0. FireFox (about:config): Установить network.http.phishy-userpass-length = 255 Добавить тестируемые домены вnetwork.automatic-ntlm-auth.trusted-uris http://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) – Воспользуйся асинхронной работой Selenium waitForPageToLoad(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   JavaScript Flash + JS + keyPressNative Download: Selenium +wget wget -q –header “Cookie:$cookie”  –P $path $url FireFox Profile keyPressNative
Проблемы кросс-браузерного тестирования VS
Демонстрация   Web-application: Загрузчик файлов использует: Flash Для скачивания используем: Wget Видео ролики: Safari: http://screencast.com/t/DGBoC41f Google Chrome: http://screencast.com/t/pvQjDkNuScqO
XSS injection Пример уязвимости: …   Selenium: Verify JS variable‘inject’ using http://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

Más contenido relacionado

La actualidad más candente

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

La actualidad más candente (20)

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

Destacado

A Whirlwind Tour of Test::Class
A Whirlwind Tour of Test::ClassA Whirlwind Tour of Test::Class
A Whirlwind Tour of Test::ClassCurtis Poe
 
Selenium Page Objects101
Selenium Page Objects101Selenium Page Objects101
Selenium Page Objects101Adam Goucher
 
Reliable tests with selenium web driver
Reliable tests with selenium web driverReliable tests with selenium web driver
Reliable tests with selenium web driverPawelPabich
 
Funcargs & other fun with pytest
Funcargs & other fun with pytestFuncargs & other fun with pytest
Funcargs & other fun with pytestBrianna Laugher
 
JavaScript Testing VIA Selenium
JavaScript Testing VIA SeleniumJavaScript Testing VIA Selenium
JavaScript Testing VIA SeleniumAdam Christian
 
Large scale automation with jenkins
Large scale automation with jenkinsLarge scale automation with jenkins
Large scale automation with jenkinsKohsuke Kawaguchi
 
Testing at Yammer with FooUnit, Jellyfish, and Sauce Labs
Testing at Yammer with FooUnit, Jellyfish, and Sauce LabsTesting at Yammer with FooUnit, Jellyfish, and Sauce Labs
Testing at Yammer with FooUnit, Jellyfish, and Sauce LabsSauce Labs
 
JUnit Kung Fu: Getting More Out of Your Unit Tests
JUnit Kung Fu: Getting More Out of Your Unit TestsJUnit Kung Fu: Getting More Out of Your Unit Tests
JUnit Kung Fu: Getting More Out of Your Unit TestsJohn Ferguson Smart Limited
 
Continuous Integration, the minimum viable product
Continuous Integration, the minimum viable productContinuous Integration, the minimum viable product
Continuous Integration, the minimum viable productJulian Simpson
 
Selenium Users Anonymous
Selenium Users AnonymousSelenium Users Anonymous
Selenium Users AnonymousDave Haeffner
 
Mobile Test Automation at eBay
Mobile Test Automation at eBayMobile Test Automation at eBay
Mobile Test Automation at eBayDominik Dary
 
Continuous Deployment - Lean LA
Continuous Deployment - Lean LAContinuous Deployment - Lean LA
Continuous Deployment - Lean LAAsh Maurya
 
Creating Maintainable Automated Acceptance Tests
Creating Maintainable Automated Acceptance TestsCreating Maintainable Automated Acceptance Tests
Creating Maintainable Automated Acceptance TestsJez Humble
 

Destacado (14)

Selenium for Designers
Selenium for DesignersSelenium for Designers
Selenium for Designers
 
A Whirlwind Tour of Test::Class
A Whirlwind Tour of Test::ClassA Whirlwind Tour of Test::Class
A Whirlwind Tour of Test::Class
 
Selenium Page Objects101
Selenium Page Objects101Selenium Page Objects101
Selenium Page Objects101
 
Reliable tests with selenium web driver
Reliable tests with selenium web driverReliable tests with selenium web driver
Reliable tests with selenium web driver
 
Funcargs & other fun with pytest
Funcargs & other fun with pytestFuncargs & other fun with pytest
Funcargs & other fun with pytest
 
JavaScript Testing VIA Selenium
JavaScript Testing VIA SeleniumJavaScript Testing VIA Selenium
JavaScript Testing VIA Selenium
 
Large scale automation with jenkins
Large scale automation with jenkinsLarge scale automation with jenkins
Large scale automation with jenkins
 
Testing at Yammer with FooUnit, Jellyfish, and Sauce Labs
Testing at Yammer with FooUnit, Jellyfish, and Sauce LabsTesting at Yammer with FooUnit, Jellyfish, and Sauce Labs
Testing at Yammer with FooUnit, Jellyfish, and Sauce Labs
 
JUnit Kung Fu: Getting More Out of Your Unit Tests
JUnit Kung Fu: Getting More Out of Your Unit TestsJUnit Kung Fu: Getting More Out of Your Unit Tests
JUnit Kung Fu: Getting More Out of Your Unit Tests
 
Continuous Integration, the minimum viable product
Continuous Integration, the minimum viable productContinuous Integration, the minimum viable product
Continuous Integration, the minimum viable product
 
Selenium Users Anonymous
Selenium Users AnonymousSelenium Users Anonymous
Selenium Users Anonymous
 
Mobile Test Automation at eBay
Mobile Test Automation at eBayMobile Test Automation at eBay
Mobile Test Automation at eBay
 
Continuous Deployment - Lean LA
Continuous Deployment - Lean LAContinuous Deployment - Lean LA
Continuous Deployment - Lean LA
 
Creating Maintainable Automated Acceptance Tests
Creating Maintainable Automated Acceptance TestsCreating Maintainable Automated Acceptance Tests
Creating Maintainable Automated Acceptance Tests
 

Similar a (Seleniumcamp) Selenium RC for QA Engineer

Каким будет Selenium 3.0 и Selenium 4.0
Каким будет Selenium 3.0 и Selenium 4.0Каким будет Selenium 3.0 и Selenium 4.0
Каким будет Selenium 3.0 и Selenium 4.0SQALab
 
Олександр Хотемський “Обзор архитектуры Selenium WebDriver”
Олександр Хотемський “Обзор архитектуры Selenium WebDriver”Олександр Хотемський “Обзор архитектуры Selenium WebDriver”
Олександр Хотемський “Обзор архитектуры Selenium WebDriver”Dakiry
 
3 zalomlenkov selenium
3 zalomlenkov   selenium3 zalomlenkov   selenium
3 zalomlenkov seleniumqasib
 
QA Fest 2019. Александр Хотемской. WebdriverIO + Puppeteer. Double gun - doub...
QA Fest 2019. Александр Хотемской. WebdriverIO + Puppeteer. Double gun - doub...QA Fest 2019. Александр Хотемской. WebdriverIO + Puppeteer. Double gun - doub...
QA Fest 2019. Александр Хотемской. WebdriverIO + Puppeteer. Double gun - doub...QAFest
 
ОЛЕКСАНДР ХОТЕМСЬКИЙ «Огляд екосистеми Selenium» QADay 2019
ОЛЕКСАНДР ХОТЕМСЬКИЙ «Огляд екосистеми Selenium» QADay 2019ОЛЕКСАНДР ХОТЕМСЬКИЙ «Огляд екосистеми Selenium» QADay 2019
ОЛЕКСАНДР ХОТЕМСЬКИЙ «Огляд екосистеми Selenium» QADay 2019GoQA
 
Автоматизируйте это немедленно или коллекция инструментов автотестирования с ...
Автоматизируйте это немедленно или коллекция инструментов автотестирования с ...Автоматизируйте это немедленно или коллекция инструментов автотестирования с ...
Автоматизируйте это немедленно или коллекция инструментов автотестирования с ...Andrey Rebrov
 
WebdriverIO + Puppeteer. Double gun – double fun
WebdriverIO + Puppeteer. Double gun – double funWebdriverIO + Puppeteer. Double gun – double fun
WebdriverIO + Puppeteer. Double gun – double funAlexandr Khotemskoy
 
Что нового в Visual Studio 2015
Что нового в Visual Studio 2015Что нового в Visual Studio 2015
Что нового в Visual Studio 2015GetDev.NET
 
Как и зачем мы тестируем UI
Как и зачем мы тестируем UIКак и зачем мы тестируем UI
Как и зачем мы тестируем UIVyacheslav Lyalkin
 
Vladimir Trandafilov - When you need your system of cross browser testing
Vladimir Trandafilov - When you need your system of cross browser testingVladimir Trandafilov - When you need your system of cross browser testing
Vladimir Trandafilov - When you need your system of cross browser testingIevgenii Katsan
 
Open Source Testing Framework: real project example and best practices
Open Source Testing Framework: real project example and best practicesOpen Source Testing Framework: real project example and best practices
Open Source Testing Framework: real project example and best practicesAliaksandr Ikhelis
 
Реализация тестового фреймворка на основе OPEN-SOURCE инструментов
Реализация тестового фреймворка на основе OPEN-SOURCE инструментовРеализация тестового фреймворка на основе OPEN-SOURCE инструментов
Реализация тестового фреймворка на основе OPEN-SOURCE инструментовSQALab
 
CodeFest 2012. Курносова Т. и Баяндин А. — Selenium2: полевые испытания
CodeFest 2012. Курносова Т. и Баяндин А. — Selenium2: полевые испытанияCodeFest 2012. Курносова Т. и Баяндин А. — Selenium2: полевые испытания
CodeFest 2012. Курносова Т. и Баяндин А. — Selenium2: полевые испытанияCodeFest
 
Системное тестирование приложений на Ruby on Rails с применением Rspec и Cap...
Системное тестирование  приложений на Ruby on Rails с применением Rspec и Cap...Системное тестирование  приложений на Ruby on Rails с применением Rspec и Cap...
Системное тестирование приложений на Ruby on Rails с применением Rspec и Cap...lshevtsov
 
Selenium на практике и подводные камни
Selenium на практике и подводные камниSelenium на практике и подводные камни
Selenium на практике и подводные камниSQALab
 
Тестирование web-приложений на базе технологий Ruby/Cucumber/Watir Webdriver
Тестирование web-приложений на базе технологий Ruby/Cucumber/Watir WebdriverТестирование web-приложений на базе технологий Ruby/Cucumber/Watir Webdriver
Тестирование web-приложений на базе технологий Ruby/Cucumber/Watir WebdriverAlex Mikitenko
 
Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере ...
Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере ...Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере ...
Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере ...SQADays_2009_Piter
 
Selenium 2.0: обзор новых возможностей
Selenium 2.0: обзор новых возможностейSelenium 2.0: обзор новых возможностей
Selenium 2.0: обзор новых возможностейPaul Stashevsky
 
Автоматизация тестирования многопоточности
Автоматизация тестирования многопоточностиАвтоматизация тестирования многопоточности
Автоматизация тестирования многопоточностиSQALab
 

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

Каким будет Selenium 3.0 и Selenium 4.0
Каким будет Selenium 3.0 и Selenium 4.0Каким будет Selenium 3.0 и Selenium 4.0
Каким будет Selenium 3.0 и Selenium 4.0
 
Олександр Хотемський “Обзор архитектуры Selenium WebDriver”
Олександр Хотемський “Обзор архитектуры Selenium WebDriver”Олександр Хотемський “Обзор архитектуры Selenium WebDriver”
Олександр Хотемський “Обзор архитектуры Selenium WebDriver”
 
3 zalomlenkov selenium
3 zalomlenkov   selenium3 zalomlenkov   selenium
3 zalomlenkov selenium
 
QA Fest 2019. Александр Хотемской. WebdriverIO + Puppeteer. Double gun - doub...
QA Fest 2019. Александр Хотемской. WebdriverIO + Puppeteer. Double gun - doub...QA Fest 2019. Александр Хотемской. WebdriverIO + Puppeteer. Double gun - doub...
QA Fest 2019. Александр Хотемской. WebdriverIO + Puppeteer. Double gun - doub...
 
ОЛЕКСАНДР ХОТЕМСЬКИЙ «Огляд екосистеми Selenium» QADay 2019
ОЛЕКСАНДР ХОТЕМСЬКИЙ «Огляд екосистеми Selenium» QADay 2019ОЛЕКСАНДР ХОТЕМСЬКИЙ «Огляд екосистеми Selenium» QADay 2019
ОЛЕКСАНДР ХОТЕМСЬКИЙ «Огляд екосистеми Selenium» QADay 2019
 
Автоматизируйте это немедленно или коллекция инструментов автотестирования с ...
Автоматизируйте это немедленно или коллекция инструментов автотестирования с ...Автоматизируйте это немедленно или коллекция инструментов автотестирования с ...
Автоматизируйте это немедленно или коллекция инструментов автотестирования с ...
 
WebdriverIO + Puppeteer. Double gun – double fun
WebdriverIO + Puppeteer. Double gun – double funWebdriverIO + Puppeteer. Double gun – double fun
WebdriverIO + Puppeteer. Double gun – double fun
 
Что нового в Visual Studio 2015
Что нового в Visual Studio 2015Что нового в Visual Studio 2015
Что нового в Visual Studio 2015
 
Как и зачем мы тестируем UI
Как и зачем мы тестируем UIКак и зачем мы тестируем UI
Как и зачем мы тестируем UI
 
Vladimir Trandafilov - When you need your system of cross browser testing
Vladimir Trandafilov - When you need your system of cross browser testingVladimir Trandafilov - When you need your system of cross browser testing
Vladimir Trandafilov - When you need your system of cross browser testing
 
Open Source Testing Framework: real project example and best practices
Open Source Testing Framework: real project example and best practicesOpen Source Testing Framework: real project example and best practices
Open Source Testing Framework: real project example and best practices
 
Реализация тестового фреймворка на основе OPEN-SOURCE инструментов
Реализация тестового фреймворка на основе OPEN-SOURCE инструментовРеализация тестового фреймворка на основе OPEN-SOURCE инструментов
Реализация тестового фреймворка на основе OPEN-SOURCE инструментов
 
CodeFest 2012. Курносова Т. и Баяндин А. — Selenium2: полевые испытания
CodeFest 2012. Курносова Т. и Баяндин А. — Selenium2: полевые испытанияCodeFest 2012. Курносова Т. и Баяндин А. — Selenium2: полевые испытания
CodeFest 2012. Курносова Т. и Баяндин А. — Selenium2: полевые испытания
 
Системное тестирование приложений на Ruby on Rails с применением Rspec и Cap...
Системное тестирование  приложений на Ruby on Rails с применением Rspec и Cap...Системное тестирование  приложений на Ruby on Rails с применением Rspec и Cap...
Системное тестирование приложений на Ruby on Rails с применением Rspec и Cap...
 
Selenium на практике и подводные камни
Selenium на практике и подводные камниSelenium на практике и подводные камни
Selenium на практике и подводные камни
 
Тестирование web-приложений на базе технологий Ruby/Cucumber/Watir Webdriver
Тестирование web-приложений на базе технологий Ruby/Cucumber/Watir WebdriverТестирование web-приложений на базе технологий Ruby/Cucumber/Watir Webdriver
Тестирование web-приложений на базе технологий Ruby/Cucumber/Watir Webdriver
 
Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере ...
Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере ...Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере ...
Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере ...
 
Selenium 2.0: обзор новых возможностей
Selenium 2.0: обзор новых возможностейSelenium 2.0: обзор новых возможностей
Selenium 2.0: обзор новых возможностей
 
Telerik Web aii
Telerik Web aiiTelerik Web aii
Telerik Web aii
 
Автоматизация тестирования многопоточности
Автоматизация тестирования многопоточностиАвтоматизация тестирования многопоточности
Автоматизация тестирования многопоточности
 

(Seleniumcamp) Selenium RC for QA Engineer

  • 1. Selenium RC для QAинженеров: возможности, трудности и нюансы в использовании ЯнАлексеенко GGA Software Services
  • 2. Содержание Возможности Наш подход к тестированию Недостатки Проблема синхронизации Проблемы кросс-браузерного тестирования Что нужно знать? Работа с файлами XSS инъекции Flash/Flex приложения Silverlight приложения Демонстрации
  • 3. ПоддержкаOS Windows Solaris Apple Linux
  • 4. ПоддержкаOS Selenium 2.0 дает возможность тестировать Мобильные версии сайтов, используя WebDriver
  • 5. Демонстрация Пример работы с мобильными устройствами Установить Android SDK на ПК Установить Android WebDriver на телефон Подключить телефон к USB в debug режиме Выполнить следующие команды cd/android_sdk/tools/adb devices Вернёт <serialID> adb-s <serialId> forward tcp:8080 tcp:8080 http://code.google.com/p/selenium/wiki/AndroidDriver
  • 6. Поддерживаемые Браузеры Internet Explorer 6+ Safari 3+ Fire Fox 2+ Google Chrome 3+ Opera 8+
  • 10. Языки Программирования Программируй на А так же создавай свои языки, используя API
  • 11. Тестирование & Selenium Функциональность Web-приложений Работа JavaScript JavaScript ошибки Стиль страниц (вёрстка) Орфография Безопасность приложения XSS уязвимости SQL инъекции и д.р. Flash, Silverlight… Performance
  • 12. Результаты тестирования Имена выполняемых операций, а также имена бизнес-функций Время выполнения операций Функциональные ошибки JavaScriptошибки Проверка валидности HTML (http://validator.w3.org/) Screenshots & Locatorshots
  • 13. Результаты тестирования Html формат txt формат log Удалённый доступ к результатам с визуальным оформлением Упрощённый формат для сканера логов Установка Errorcode при завершении теста с ошибкой
  • 16. Наш выбор + SVN: разработка тестов в команде Компилирует Запускает Хранит историю Hudson
  • 17. Структура Фреймворка конфигурация теста сценарий тестирования Runner отчеты редактор сценариев код тестов вспомогательный функционал Локаторы объектов
  • 18. Организациятестов Параметры теста Функциональность приложения сценарий тестирования Тестирование код тестов Локаторы объектов
  • 19. Проект на этапе разработки
  • 21. Демонстрация Web-application: Компоненты интерфейса: библиотека MooTools HTML 5 CKEditor Flash Видео ролик: http://screencast.com/t/KlhRzHxzn
  • 22. Недостатки Selenium Нативные окна браузера Исключение: метод keyPressNative Digest & NTLM Authentication Scheme forHTTP Необходимо настроить браузер Flash/Flex, Silverlight Синхронизация
  • 23. Digest & NTLM Authentication Internet Explorer (regedit): Создать ключ HKEY_LOCAL_MACHINEOFTWAREicrosoftnternet ExploreraineatureControlEATURE_HTTP_USERNAME_PASSWORD_DISABLE СоздатьDWORDзначенияiexplore.exe & explorer.exeиустановить их значения0. FireFox (about:config): Установить network.http.phishy-userpass-length = 255 Добавить тестируемые домены вnetwork.automatic-ntlm-auth.trusted-uris http://stackoverflow.com/questions/3021602
  • 24. Синхронизация Java: Sleep для потока Selenium: waitForPageToLoad Достаточно? Нет, т.к. На странице есть JavaScript Пути решения: Ждать конкретные объекты на странице Это не универсальный метод Флаги, вставляемые на страницуразработчиками Универсальный подход
  • 25. Синхронизация Загрузка/Выгрузка объекта по Xpath, CSS, ID Загрузка/Выгрузка текста целиком/частично Загрузка/Выгрузка объекта/текста после Refresh Загрузка объектов по их численности Ожидание изменений в JavaScript Ожидание новых окон
  • 26. Проблемы кросс-браузерного тестирования Самопроизвольное закрытие теста – Разбивай тесты на небольшие кусочки Медленная работа с Xpath – Используй CSS & JavaScript Рассинхронизация работымежду Xpath & CSS – Используй JavaScript Не поддерживает HTML 5 в полной мере
  • 27. Проблемы кросс-браузерного тестирования HTTP authentication (ver. 4) – Воспользуйся асинхронной работой Selenium waitForPageToLoad(ver. 5): Result of expression‘this.getCurrentWindow’[undefined] is not a function Работает только в режиме *safariproxy(ver. 5)
  • 28. Проблемы кросс-браузерного тестирования HTTP authentication Возможны проблемы с сертификатами waitForPageToLoad: Object[object HTMLIFrameElement] has no method 'getCurrentWindow‘
  • 29. Проблемы кросс-браузерного тестирования При обычном обновлении FireFoxс версии 3.5 до 3.6и использовании профиля для запуска тестов возникает проблемас сертификатом: services.addons.mozilla.org:443 – Необходимо устанавливать новую версию FireFox, полностью удалив старую, вместе с имеющимеся профилями.
  • 30. Работа с IFrame Для активации элемента используй и/или Пример:
  • 31. Что нужно знать Нет доступа к нативным формам Какие компоненты используются(будут использоваться) в Web приложении Трудности при работе с IFrame Digest & NTLM Authentication Нестабильная работа IE Медленная работа IE c XPath Асинхронное выполнение операций
  • 32. Работа с файлами Upload: keyPressNative JavaScript Flash + JS + keyPressNative Download: Selenium +wget wget -q –header “Cookie:$cookie” –P $path $url FireFox Profile keyPressNative
  • 34. Демонстрация Web-application: Загрузчик файлов использует: Flash Для скачивания используем: Wget Видео ролики: Safari: http://screencast.com/t/DGBoC41f Google Chrome: http://screencast.com/t/pvQjDkNuScqO
  • 35. XSS injection Пример уязвимости: … Selenium: Verify JS variable‘inject’ using http://ha.ckers.org/xss.html
  • 36. Демонстрация Web-application: SeleniumIDE для наглядности
  • 37. Flash/Flex application Открыть доступ к необходимым функциям, используяExternalInterface Воспользоваться JavaScript для вызова соответствующих функций Flash Native keyboard events Native mouse events Интеграция стороннихсредств тестирования
  • 38. Демонстрация Web-application: http://linux.ria.ua/JsFlash/simple.html http://www.uni-dubna.ru/~sidorov/workz/flash/operate2.html SeleniumIDE для наглядности
  • 39. Silverlight application Открыть доступ к необходимым функциям атрибут[ScriptableType]для странице атрибут[ScriptableMember]для функции Воспользоваться JavaScript для вызова соответствующих функций Silverlight Native keyboard events Native mouse events Интеграция сторонних средств тестирования
  • 40. Демонстрация Web-application: Демонстрационное приложение – Сумма чисел SeleniumIDE для наглядности
  • 41. Спасибо за внимание Вопросы ЯнАлексеенко GGA Software Services Санкт-Петербург alexeenko@ggasoftware.com

Notas del editor

  1. Демонстрация работы Selenium на мобильном устройстве (длительность 5 – 10 минут).Для этой демонстрации необходим WiFi + камера, для просмотра аудиторией телефона с проектора.
  2. Демонстрация включит в себя рассказ о framework, оргнизации тестов, отчетахЗапуск тестов реального проектаДлительность порядка 20 – 30 минут.
  3. Продолжительность демонстрации 5 – 10 минут.
  4. Продолжительность демонстрации 5 – 10 мин.
  5. Продолжительность демонстрации 5 мин.
  6. Продолжительность демонстрации 5 мин.