SlideShare une entreprise Scribd logo
1  sur  28
CRAWLJAX Четвертый закон робототехники Высоцкий Сергей, ДатаВоркс
[object Object],[object Object],[object Object]
1. Crawljax . Что это?
Crawljax. WTF!?!?! AJAX Testing heuristics Crawler False positives Test Testing Oracles State-flow graph Events Invariants False negatives
Crawljax.  Начало ,[object Object],[object Object]
2.  Как работает  Crawljax?
Ливер/Фарш/Мясо : Java + WebDriver
Plugins: ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Moar  опций ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
3.  Что можно делать при помощи  Crawljax?
Получить  State-flow  граф
Регресионные тесты ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Как получить модель? Запустить  Crawljax  с  SaveCrawlSessionPlugin На выходе:  state-flow graph  и все пути в виде  XML- файла.
Как получить  test suite ? Запустить  Crawljax  с  RegressionTester  плагином. На вход подать полученный ранее  XML -файл. На выходе:  JUnit TestSuite
Гибкие настройки ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Зачистка  False Positives ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Отчет об ошибках: ErrorReport  плагин:
Визуализация ошибок: ErrorReport  плагин:
DOM diff : ErrorReport  плагин:
Инварианты Wikipedia: “ Инвариант в математике — это свойство некоторого класса (множества) математических объектов оставаться неизменными при преобразованиях определённого типа. ”
Инварианты. Примеры: ,[object Object],[object Object],[object Object],[object Object],[object Object]
Инварианты. Как? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
X-Files
Уже есть плагины: ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Итого: ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Где взять? crawljax.com  - родной сайт проекта spci.st.ewi.tudelft.nl/demo/crawljax/  - старый сайт code.google.com/p/crawljax-plugins/  - плагины
Вопросы? Высоцкий Сергей, ДатаВоркс [email_address]
Четвертый Закон Робототехники “ A robot must reproduce.” Harry Harrison, “The Fourth Law of Robotics”

Contenu connexe

Tendances

Тестирование REST-сервисов с применением инженерных практик
Тестирование REST-сервисов с применением инженерных практикТестирование REST-сервисов с применением инженерных практик
Тестирование REST-сервисов с применением инженерных практикSQALab
 
Selenium grid on-demand
Selenium grid on-demandSelenium grid on-demand
Selenium grid on-demandSQALab
 
Денис Кандров, Пушкова Евгения, QSpec: тестирование графических приложений на Qt
Денис Кандров, Пушкова Евгения, QSpec: тестирование графических приложений на QtДенис Кандров, Пушкова Евгения, QSpec: тестирование графических приложений на Qt
Денис Кандров, Пушкова Евгения, QSpec: тестирование графических приложений на QtSergey Platonov
 
Apache JMeter vs LoadRunner: на заре справедливости, сравнение инструментов н...
Apache JMeter vs LoadRunner: на заре справедливости, сравнение инструментов н...Apache JMeter vs LoadRunner: на заре справедливости, сравнение инструментов н...
Apache JMeter vs LoadRunner: на заре справедливости, сравнение инструментов н...SQALab
 
Let's Talk About Junit 5
Let's Talk About Junit 5Let's Talk About Junit 5
Let's Talk About Junit 5SQALab
 
End-2-End UI автоматизация в мобильном приложении. Наша реализация
End-2-End UI автоматизация в мобильном приложении. Наша реализацияEnd-2-End UI автоматизация в мобильном приложении. Наша реализация
End-2-End UI автоматизация в мобильном приложении. Наша реализацияSQALab
 
Speeding up UI tests, profiling of UI tests
Speeding up UI tests, profiling of UI testsSpeeding up UI tests, profiling of UI tests
Speeding up UI tests, profiling of UI testsAnton Stepanenko
 
Илья Кудинов «Развитие процессов тестирования в Badoo за три года, или как мы...
Илья Кудинов «Развитие процессов тестирования в Badoo за три года, или как мы...Илья Кудинов «Развитие процессов тестирования в Badoo за три года, или как мы...
Илья Кудинов «Развитие процессов тестирования в Badoo за три года, или как мы...WrikeTechClub
 
SQADAYS 21 Москва 2017
SQADAYS 21 Москва 2017SQADAYS 21 Москва 2017
SQADAYS 21 Москва 2017Adam Sandman
 
Микросервисы для автоматизации тестирования - опыт "Одноклассников"
Микросервисы для автоматизации тестирования - опыт "Одноклассников"Микросервисы для автоматизации тестирования - опыт "Одноклассников"
Микросервисы для автоматизации тестирования - опыт "Одноклассников"SQALab
 
Инструментация среды исполнения в арсенале тестировщика
Инструментация среды исполнения в арсенале тестировщикаИнструментация среды исполнения в арсенале тестировщика
Инструментация среды исполнения в арсенале тестировщикаSQALab
 
Как Cluster Membership Software может помочь QA
Как Cluster Membership Software может помочь QAКак Cluster Membership Software может помочь QA
Как Cluster Membership Software может помочь QASQALab
 
Практика тестирования web сервисов
Практика тестирования web сервисовПрактика тестирования web сервисов
Практика тестирования web сервисовSQALab
 
Threads & LinkedClone. Как сократить время на развертывание продукта и подгот...
Threads & LinkedClone. Как сократить время на развертывание продукта и подгот...Threads & LinkedClone. Как сократить время на развертывание продукта и подгот...
Threads & LinkedClone. Как сократить время на развертывание продукта и подгот...SQALab
 
Автоматизированное тестирование - от сложного к простому, или Запускаем автот...
Автоматизированное тестирование - от сложного к простому, или Запускаем автот...Автоматизированное тестирование - от сложного к простому, или Запускаем автот...
Автоматизированное тестирование - от сложного к простому, или Запускаем автот...SQALab
 
Опыт тестирования API САПР платформы
Опыт тестирования API САПР платформыОпыт тестирования API САПР платформы
Опыт тестирования API САПР платформыSQALab
 
Визуализация покрытия автоматизированными UI тестами
Визуализация покрытия автоматизированными UI тестамиВизуализация покрытия автоматизированными UI тестами
Визуализация покрытия автоматизированными UI тестамиSQALab
 
Использование Mock объектов в модульном тестировании
Использование Mock объектов в модульном тестированииИспользование Mock объектов в модульном тестировании
Использование Mock объектов в модульном тестированииGetDev.NET
 

Tendances (20)

Тестирование REST-сервисов с применением инженерных практик
Тестирование REST-сервисов с применением инженерных практикТестирование REST-сервисов с применением инженерных практик
Тестирование REST-сервисов с применением инженерных практик
 
Selenium grid on-demand
Selenium grid on-demandSelenium grid on-demand
Selenium grid on-demand
 
Денис Кандров, Пушкова Евгения, QSpec: тестирование графических приложений на Qt
Денис Кандров, Пушкова Евгения, QSpec: тестирование графических приложений на QtДенис Кандров, Пушкова Евгения, QSpec: тестирование графических приложений на Qt
Денис Кандров, Пушкова Евгения, QSpec: тестирование графических приложений на Qt
 
Apache JMeter vs LoadRunner: на заре справедливости, сравнение инструментов н...
Apache JMeter vs LoadRunner: на заре справедливости, сравнение инструментов н...Apache JMeter vs LoadRunner: на заре справедливости, сравнение инструментов н...
Apache JMeter vs LoadRunner: на заре справедливости, сравнение инструментов н...
 
Let's Talk About Junit 5
Let's Talk About Junit 5Let's Talk About Junit 5
Let's Talk About Junit 5
 
End-2-End UI автоматизация в мобильном приложении. Наша реализация
End-2-End UI автоматизация в мобильном приложении. Наша реализацияEnd-2-End UI автоматизация в мобильном приложении. Наша реализация
End-2-End UI автоматизация в мобильном приложении. Наша реализация
 
Speeding up UI tests, profiling of UI tests
Speeding up UI tests, profiling of UI testsSpeeding up UI tests, profiling of UI tests
Speeding up UI tests, profiling of UI tests
 
Илья Кудинов «Развитие процессов тестирования в Badoo за три года, или как мы...
Илья Кудинов «Развитие процессов тестирования в Badoo за три года, или как мы...Илья Кудинов «Развитие процессов тестирования в Badoo за три года, или как мы...
Илья Кудинов «Развитие процессов тестирования в Badoo за три года, или как мы...
 
SQADAYS 21 Москва 2017
SQADAYS 21 Москва 2017SQADAYS 21 Москва 2017
SQADAYS 21 Москва 2017
 
Микросервисы для автоматизации тестирования - опыт "Одноклассников"
Микросервисы для автоматизации тестирования - опыт "Одноклассников"Микросервисы для автоматизации тестирования - опыт "Одноклассников"
Микросервисы для автоматизации тестирования - опыт "Одноклассников"
 
Инструментация среды исполнения в арсенале тестировщика
Инструментация среды исполнения в арсенале тестировщикаИнструментация среды исполнения в арсенале тестировщика
Инструментация среды исполнения в арсенале тестировщика
 
Как Cluster Membership Software может помочь QA
Как Cluster Membership Software может помочь QAКак Cluster Membership Software может помочь QA
Как Cluster Membership Software может помочь QA
 
Telerik Web aii
Telerik Web aiiTelerik Web aii
Telerik Web aii
 
Практика тестирования web сервисов
Практика тестирования web сервисовПрактика тестирования web сервисов
Практика тестирования web сервисов
 
Threads & LinkedClone. Как сократить время на развертывание продукта и подгот...
Threads & LinkedClone. Как сократить время на развертывание продукта и подгот...Threads & LinkedClone. Как сократить время на развертывание продукта и подгот...
Threads & LinkedClone. Как сократить время на развертывание продукта и подгот...
 
Автоматизированное тестирование - от сложного к простому, или Запускаем автот...
Автоматизированное тестирование - от сложного к простому, или Запускаем автот...Автоматизированное тестирование - от сложного к простому, или Запускаем автот...
Автоматизированное тестирование - от сложного к простому, или Запускаем автот...
 
Опыт тестирования API САПР платформы
Опыт тестирования API САПР платформыОпыт тестирования API САПР платформы
Опыт тестирования API САПР платформы
 
Визуализация покрытия автоматизированными UI тестами
Визуализация покрытия автоматизированными UI тестамиВизуализация покрытия автоматизированными UI тестами
Визуализация покрытия автоматизированными UI тестами
 
Unit тесты java
Unit тесты javaUnit тесты java
Unit тесты java
 
Использование Mock объектов в модульном тестировании
Использование Mock объектов в модульном тестированииИспользование Mock объектов в модульном тестировании
Использование Mock объектов в модульном тестировании
 

Similaire à CodeFest 2011. Высоцкий С. — Crawljax. Четвертый закон робототехники

Ошибки, которые сложно заметить на code review, но которые находятся статичес...
Ошибки, которые сложно заметить на code review, но которые находятся статичес...Ошибки, которые сложно заметить на code review, но которые находятся статичес...
Ошибки, которые сложно заметить на code review, но которые находятся статичес...Andrey Karpov
 
Graal, Truffle, SubstrateVM and other perks: what are those and why do you ne...
Graal, Truffle, SubstrateVM and other perks: what are those and why do you ne...Graal, Truffle, SubstrateVM and other perks: what are those and why do you ne...
Graal, Truffle, SubstrateVM and other perks: what are those and why do you ne...Oleg Chirukhin
 
(Seleniumcamp) Selenium RC for QA Engineer
(Seleniumcamp) Selenium RC for QA Engineer(Seleniumcamp) Selenium RC for QA Engineer
(Seleniumcamp) Selenium RC for QA EngineerYan Alexeenko
 
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
 
анализ кода: от проверки стиля до автоматического тестирования
анализ кода: от проверки стиля до автоматического тестированияанализ кода: от проверки стиля до автоматического тестирования
анализ кода: от проверки стиля до автоматического тестированияRuslan Shevchenko
 
Client Side Autotesting Flash
Client Side Autotesting FlashClient Side Autotesting Flash
Client Side Autotesting Flashguestb0af15
 
Илья Евлампиев - Grinder
Илья Евлампиев - GrinderИлья Евлампиев - Grinder
Илья Евлампиев - GrinderAlexey Chumagin
 
«Тестируем веб приложения», Павел Сташевский
«Тестируем веб приложения», Павел Сташевский«Тестируем веб приложения», Павел Сташевский
«Тестируем веб приложения», Павел СташевскийDevDay
 
OpenSource инструменты. Тестируем Web-приложения
OpenSource инструменты. Тестируем Web-приложенияOpenSource инструменты. Тестируем Web-приложения
OpenSource инструменты. Тестируем Web-приложенияlugnsk
 
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNGДмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNGDataArt
 
Java 9: what is there beyond modularization
Java 9: what is there beyond modularizationJava 9: what is there beyond modularization
Java 9: what is there beyond modularizationIvan Krylov
 
Automation Flex Applications with Selenium rc
Automation  Flex Applications with Selenium rcAutomation  Flex Applications with Selenium rc
Automation Flex Applications with Selenium rcautomated-testing.info
 
Тестируй это / Виктор Русакович (GP Solutions)
Тестируй это / Виктор Русакович (GP Solutions)Тестируй это / Виктор Русакович (GP Solutions)
Тестируй это / Виктор Русакович (GP Solutions)Ontico
 
Липский Павел
Липский ПавелЛипский Павел
Липский ПавелOntico
 
Lift, play, akka, rails part1
Lift, play, akka, rails part1Lift, play, akka, rails part1
Lift, play, akka, rails part1Eduard Antsupov
 
Node.js введение в технологию, КПИ #ITmeetingKPI
Node.js введение в технологию, КПИ  #ITmeetingKPINode.js введение в технологию, КПИ  #ITmeetingKPI
Node.js введение в технологию, КПИ #ITmeetingKPITimur Shemsedinov
 
Системное тестирование приложений на Ruby on Rails с применением Rspec и Cap...
Системное тестирование  приложений на Ruby on Rails с применением Rspec и Cap...Системное тестирование  приложений на Ruby on Rails с применением Rspec и Cap...
Системное тестирование приложений на Ruby on Rails с применением Rspec и Cap...lshevtsov
 
Как выглядит современный фронтенд
Как выглядит современный фронтендКак выглядит современный фронтенд
Как выглядит современный фронтендTimophy Chaptykov
 
2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной
2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной
2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полнойОмские ИТ-субботники
 

Similaire à CodeFest 2011. Высоцкий С. — Crawljax. Четвертый закон робототехники (20)

Ошибки, которые сложно заметить на code review, но которые находятся статичес...
Ошибки, которые сложно заметить на code review, но которые находятся статичес...Ошибки, которые сложно заметить на code review, но которые находятся статичес...
Ошибки, которые сложно заметить на code review, но которые находятся статичес...
 
Graal, Truffle, SubstrateVM and other perks: what are those and why do you ne...
Graal, Truffle, SubstrateVM and other perks: what are those and why do you ne...Graal, Truffle, SubstrateVM and other perks: what are those and why do you ne...
Graal, Truffle, SubstrateVM and other perks: what are those and why do you ne...
 
(Seleniumcamp) Selenium RC for QA Engineer
(Seleniumcamp) Selenium RC for QA Engineer(Seleniumcamp) Selenium RC for QA Engineer
(Seleniumcamp) Selenium RC for QA Engineer
 
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
 
анализ кода: от проверки стиля до автоматического тестирования
анализ кода: от проверки стиля до автоматического тестированияанализ кода: от проверки стиля до автоматического тестирования
анализ кода: от проверки стиля до автоматического тестирования
 
Client Side Autotesting Flash
Client Side Autotesting FlashClient Side Autotesting Flash
Client Side Autotesting Flash
 
Илья Евлампиев - Grinder
Илья Евлампиев - GrinderИлья Евлампиев - Grinder
Илья Евлампиев - Grinder
 
«Тестируем веб приложения», Павел Сташевский
«Тестируем веб приложения», Павел Сташевский«Тестируем веб приложения», Павел Сташевский
«Тестируем веб приложения», Павел Сташевский
 
OpenSource инструменты. Тестируем Web-приложения
OpenSource инструменты. Тестируем Web-приложенияOpenSource инструменты. Тестируем Web-приложения
OpenSource инструменты. Тестируем Web-приложения
 
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNGДмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
 
Java 9: what is there beyond modularization
Java 9: what is there beyond modularizationJava 9: what is there beyond modularization
Java 9: what is there beyond modularization
 
Automation Flex Applications with Selenium rc
Automation  Flex Applications with Selenium rcAutomation  Flex Applications with Selenium rc
Automation Flex Applications with Selenium rc
 
Тестируй это / Виктор Русакович (GP Solutions)
Тестируй это / Виктор Русакович (GP Solutions)Тестируй это / Виктор Русакович (GP Solutions)
Тестируй это / Виктор Русакович (GP Solutions)
 
Липский Павел
Липский ПавелЛипский Павел
Липский Павел
 
Lift, play, akka, rails part1
Lift, play, akka, rails part1Lift, play, akka, rails part1
Lift, play, akka, rails part1
 
Node.js введение в технологию, КПИ #ITmeetingKPI
Node.js введение в технологию, КПИ  #ITmeetingKPINode.js введение в технологию, КПИ  #ITmeetingKPI
Node.js введение в технологию, КПИ #ITmeetingKPI
 
Rx
RxRx
Rx
 
Системное тестирование приложений на Ruby on Rails с применением Rspec и Cap...
Системное тестирование  приложений на Ruby on Rails с применением Rspec и Cap...Системное тестирование  приложений на Ruby on Rails с применением Rspec и Cap...
Системное тестирование приложений на Ruby on Rails с применением Rspec и Cap...
 
Как выглядит современный фронтенд
Как выглядит современный фронтендКак выглядит современный фронтенд
Как выглядит современный фронтенд
 
2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной
2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной
2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной
 

Plus de CodeFest

Alexander Graebe
Alexander GraebeAlexander Graebe
Alexander GraebeCodeFest
 
Никита Прокопов
Никита ПрокоповНикита Прокопов
Никита ПрокоповCodeFest
 
Денис Баталов
Денис БаталовДенис Баталов
Денис БаталовCodeFest
 
Елена Гальцина
Елена ГальцинаЕлена Гальцина
Елена ГальцинаCodeFest
 
Александр Калашников
Александр КалашниковАлександр Калашников
Александр КалашниковCodeFest
 
Ирина Иванова
Ирина ИвановаИрина Иванова
Ирина ИвановаCodeFest
 
Marko Berković
Marko BerkovićMarko Berković
Marko BerkovićCodeFest
 
Денис Кортунов
Денис КортуновДенис Кортунов
Денис КортуновCodeFest
 
Александр Зимин
Александр ЗиминАлександр Зимин
Александр ЗиминCodeFest
 
Сергей Крапивенский
Сергей КрапивенскийСергей Крапивенский
Сергей КрапивенскийCodeFest
 
Сергей Игнатов
Сергей ИгнатовСергей Игнатов
Сергей ИгнатовCodeFest
 
Николай Крапивный
Николай КрапивныйНиколай Крапивный
Николай КрапивныйCodeFest
 
Alexander Graebe
Alexander GraebeAlexander Graebe
Alexander GraebeCodeFest
 
Вадим Смирнов
Вадим СмирновВадим Смирнов
Вадим СмирновCodeFest
 
Константин Осипов
Константин ОсиповКонстантин Осипов
Константин ОсиповCodeFest
 
Raffaele Rialdi
Raffaele RialdiRaffaele Rialdi
Raffaele RialdiCodeFest
 
Максим Пугачев
Максим ПугачевМаксим Пугачев
Максим ПугачевCodeFest
 
Rene Groeschke
Rene GroeschkeRene Groeschke
Rene GroeschkeCodeFest
 
Иван Бондаренко
Иван БондаренкоИван Бондаренко
Иван БондаренкоCodeFest
 
Mete Atamel
Mete AtamelMete Atamel
Mete AtamelCodeFest
 

Plus de CodeFest (20)

Alexander Graebe
Alexander GraebeAlexander Graebe
Alexander Graebe
 
Никита Прокопов
Никита ПрокоповНикита Прокопов
Никита Прокопов
 
Денис Баталов
Денис БаталовДенис Баталов
Денис Баталов
 
Елена Гальцина
Елена ГальцинаЕлена Гальцина
Елена Гальцина
 
Александр Калашников
Александр КалашниковАлександр Калашников
Александр Калашников
 
Ирина Иванова
Ирина ИвановаИрина Иванова
Ирина Иванова
 
Marko Berković
Marko BerkovićMarko Berković
Marko Berković
 
Денис Кортунов
Денис КортуновДенис Кортунов
Денис Кортунов
 
Александр Зимин
Александр ЗиминАлександр Зимин
Александр Зимин
 
Сергей Крапивенский
Сергей КрапивенскийСергей Крапивенский
Сергей Крапивенский
 
Сергей Игнатов
Сергей ИгнатовСергей Игнатов
Сергей Игнатов
 
Николай Крапивный
Николай КрапивныйНиколай Крапивный
Николай Крапивный
 
Alexander Graebe
Alexander GraebeAlexander Graebe
Alexander Graebe
 
Вадим Смирнов
Вадим СмирновВадим Смирнов
Вадим Смирнов
 
Константин Осипов
Константин ОсиповКонстантин Осипов
Константин Осипов
 
Raffaele Rialdi
Raffaele RialdiRaffaele Rialdi
Raffaele Rialdi
 
Максим Пугачев
Максим ПугачевМаксим Пугачев
Максим Пугачев
 
Rene Groeschke
Rene GroeschkeRene Groeschke
Rene Groeschke
 
Иван Бондаренко
Иван БондаренкоИван Бондаренко
Иван Бондаренко
 
Mete Atamel
Mete AtamelMete Atamel
Mete Atamel
 

CodeFest 2011. Высоцкий С. — Crawljax. Четвертый закон робототехники