SlideShare ist ein Scribd-Unternehmen logo
1 von 33
Автоматизируйте это
  немедленно или коллекция
        инструментов
автотестирования с примерами

         Ребров Андрей
             Luxoft
Обо мне
Наконец-то инженерный доклад!
В детстве у нас были
 любимые игрушки
Мы выросли
В детстве я любил роботов
Я повзрослел 
И роботы тоже
Но игрушки у меня уже другие
Java
Selenium 2 / WebDriver
• Используются драйвера адаптированные под
  конкретный бразуер
• Паттерн PageObject позволяет отделить
  логику тестов от реализации
• Гибкая работа с ожиданиями на странице
Selenium 2 / WebDriver
public class GoogleSearchPage {
     // The element is now looked up using the name attribute
     @FindBy(how = How.NAME, using = "q")
     private WebElement searchBox;

      public void searchFor(String text) {
        // We continue using the element just as before
        searchBox.sendKeys(text);
        searchBox.submit();
      }
  }
JBehave
• Тесты можно писать человеческим языком
• Такие тесты может использовать Product
  Owner
• Можно отказаться от привычной
  документации
• Поддержка Groovy, Spring и прочая, прочая
JBehave
Robot Framework
• Поддержка BDD и коробки
• Поддержка Selenium из коробки
• Может тестировать десктопные приложение
  (java), ssh, telnet
Robot Framework
*** Testcases ***
Login Should Succeed When the Correct Username and Password are Entered
 Start Selenium Server
 Open Browser http://zdiles.chaosnet.org/ ie
 Maximize Browser Window
 Input Text uname BUser
 Input Text pwd TestPass
 Click Button login
 Page Should Contain Welcome
 Close Browser
 Stop Selenium Server
Ruby
Watir
• Очень быстро работает
• Очень активное сообщество
Watir
# set a variable
test_site = "http://www.google.com"
# open a browser
browser = Watir::Browser.new
browser.goto test_site
browser.text_field(:name, "q").set "pickaxe“
browser.button(:name, "btnG").click
if browser.text.include? "Programming Ruby"
       puts " Test Passed. Found the test string: 'Programming Ruby'. Actual Results
match Expected Results."
else
       puts " Test Failed! Could not find: 'Programming Ruby'." end
Cucumber
См. JBehave
Cucumber
Bwoken
• Единственный в своем роде фреймворк для
  тестирования iOS приложений
• Не нужно учить Objective C чтобы писать тесты
Bwoken
test 'Favoriting a repository', (target, app) ->
    RepositoriesScreen.tapRepositoryNamed 'CITravis by Travis-ci'
    BuildsScreen.addToFavorites(app)
    BuildsScreen.back()
    RepositoriesScreen.tapFavorites()
    FavoritesScreen.assertFavoriteNamed 'CITravis by Travis-ci'
    FavoritesScreen.tapAll()
C#
SWAT (Simple Web Automation
             Toolkit)
• Есть возможность записать скрипты с
  помощью UI
• Легко встроить в Fitness
• Есть встроенные инструменты для работы с
  SQL
SWAT (Simple Web Automation
              Toolkit)
[Test]
public void MyFirstTest() {
   SWAT.WebBrowser browser = new
   SWAT.WebBrowser(BrowserType.InternetExplorer);
   browser.OpenBrowser();
   browser.NavigateBrowser("http://google.com");
   browser.AssertElementExists(IdentifierType.Name, "q");
   browser.CloseBrowser();
}
PHP
С миру по нитке
• Selenium
• Symfony
•?
Не все роботы
одинаково полезны
Вопросы?

•   andrebrov@gmail.com
•   Twitter: andrebrov
•   Skype: rebrov.andrey
•   Блог: andrebrov.net

Weitere ähnliche Inhalte

Was ist angesagt?

Причины и способы имитации back-end'а
Причины и способы имитации back-end'аПричины и способы имитации back-end'а
Причины и способы имитации back-end'аOksana Avchinnikova
 
Плюсы и минусы автоматизации, пример из жизни
Плюсы и минусы автоматизации, пример из жизниПлюсы и минусы автоматизации, пример из жизни
Плюсы и минусы автоматизации, пример из жизниz-tech
 
Qa Automation - отбрасываем лишнее и тестируем суть
Qa Automation - отбрасываем лишнее и тестируем сутьQa Automation - отбрасываем лишнее и тестируем суть
Qa Automation - отбрасываем лишнее и тестируем сутьIgor Khrol
 
Руководство по приготовлению бутербродов из Selenium
Руководство по приготовлению бутербродов из SeleniumРуководство по приготовлению бутербродов из Selenium
Руководство по приготовлению бутербродов из SeleniumUladzimir Kryvenka
 
Самодельная параметризация и параллелизация тестов на Webdriver (JS)
Самодельная параметризация и параллелизация тестов на Webdriver (JS) Самодельная параметризация и параллелизация тестов на Webdriver (JS)
Самодельная параметризация и параллелизация тестов на Webdriver (JS) COMAQA.BY
 
Автоматизация UI тестирования под Windows и Windows Phone
Автоматизация UI тестирования под Windows и Windows PhoneАвтоматизация UI тестирования под Windows и Windows Phone
Автоматизация UI тестирования под Windows и Windows PhoneCodeFest
 
автоматизация тестирования с помощью Selenium
автоматизация тестирования с помощью Seleniumавтоматизация тестирования с помощью Selenium
автоматизация тестирования с помощью Seleniumvyacheslavmaslov
 
Как улучшить тесты на Selenium с помощью "визуального тестирования"?
Как улучшить тесты на Selenium с помощью "визуального тестирования"?Как улучшить тесты на Selenium с помощью "визуального тестирования"?
Как улучшить тесты на Selenium с помощью "визуального тестирования"?Oksana Avchinnikova
 
Protrarctor and Angular
Protrarctor and AngularProtrarctor and Angular
Protrarctor and AngularSQALab
 
Alexander manuhin selenium_php_v2.0
Alexander manuhin selenium_php_v2.0Alexander manuhin selenium_php_v2.0
Alexander manuhin selenium_php_v2.0matroskin1980
 
Изоморфный JavaScript — будущее уже здесь
Изоморфный JavaScript — будущее уже здесьИзоморфный JavaScript — будущее уже здесь
Изоморфный JavaScript — будущее уже здесьCodeFest
 
Как играть без игрока
Как играть без игрокаКак играть без игрока
Как играть без игрокаSQALab
 
Test Driven Development in ASP.NET MVC 3
Test Driven Development in ASP.NET MVC 3Test Driven Development in ASP.NET MVC 3
Test Driven Development in ASP.NET MVC 3Anton Vidishchev
 
(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
 
Selenide –  лаконичные тесты на Selenium 2 WebDriver + Java bindings
Selenide –  лаконичные тесты на Selenium 2 WebDriver + Java bindingsSelenide –  лаконичные тесты на Selenium 2 WebDriver + Java bindings
Selenide –  лаконичные тесты на Selenium 2 WebDriver + Java bindingsCOMAQA.BY
 
Полуавтоматизация third-party API
Полуавтоматизация third-party APIПолуавтоматизация third-party API
Полуавтоматизация third-party APISQALab
 
Автоматизация функционального тестирования REST API
Автоматизация функционального тестирования REST APIАвтоматизация функционального тестирования REST API
Автоматизация функционального тестирования REST APIPavel Asanov
 
Тестирование CSS-регрессий с Gemini — Сергей Татаринцев
Тестирование CSS-регрессий с Gemini — Сергей ТатаринцевТестирование CSS-регрессий с Gemini — Сергей Татаринцев
Тестирование CSS-регрессий с Gemini — Сергей ТатаринцевYandex
 

Was ist angesagt? (20)

Причины и способы имитации back-end'а
Причины и способы имитации back-end'аПричины и способы имитации back-end'а
Причины и способы имитации back-end'а
 
Плюсы и минусы автоматизации, пример из жизни
Плюсы и минусы автоматизации, пример из жизниПлюсы и минусы автоматизации, пример из жизни
Плюсы и минусы автоматизации, пример из жизни
 
Qa Automation - отбрасываем лишнее и тестируем суть
Qa Automation - отбрасываем лишнее и тестируем сутьQa Automation - отбрасываем лишнее и тестируем суть
Qa Automation - отбрасываем лишнее и тестируем суть
 
Руководство по приготовлению бутербродов из Selenium
Руководство по приготовлению бутербродов из SeleniumРуководство по приготовлению бутербродов из Selenium
Руководство по приготовлению бутербродов из Selenium
 
Самодельная параметризация и параллелизация тестов на Webdriver (JS)
Самодельная параметризация и параллелизация тестов на Webdriver (JS) Самодельная параметризация и параллелизация тестов на Webdriver (JS)
Самодельная параметризация и параллелизация тестов на Webdriver (JS)
 
Автоматизация UI тестирования под Windows и Windows Phone
Автоматизация UI тестирования под Windows и Windows PhoneАвтоматизация UI тестирования под Windows и Windows Phone
Автоматизация UI тестирования под Windows и Windows Phone
 
автоматизация тестирования с помощью Selenium
автоматизация тестирования с помощью Seleniumавтоматизация тестирования с помощью Selenium
автоматизация тестирования с помощью Selenium
 
Как улучшить тесты на Selenium с помощью "визуального тестирования"?
Как улучшить тесты на Selenium с помощью "визуального тестирования"?Как улучшить тесты на Selenium с помощью "визуального тестирования"?
Как улучшить тесты на Selenium с помощью "визуального тестирования"?
 
Protrarctor and Angular
Protrarctor and AngularProtrarctor and Angular
Protrarctor and Angular
 
Codeception Introduction
Codeception IntroductionCodeception Introduction
Codeception Introduction
 
Alexander manuhin selenium_php_v2.0
Alexander manuhin selenium_php_v2.0Alexander manuhin selenium_php_v2.0
Alexander manuhin selenium_php_v2.0
 
Изоморфный JavaScript — будущее уже здесь
Изоморфный JavaScript — будущее уже здесьИзоморфный JavaScript — будущее уже здесь
Изоморфный JavaScript — будущее уже здесь
 
Как играть без игрока
Как играть без игрокаКак играть без игрока
Как играть без игрока
 
Selenium vs AJAX
Selenium vs AJAXSelenium vs AJAX
Selenium vs AJAX
 
Test Driven Development in ASP.NET MVC 3
Test Driven Development in ASP.NET MVC 3Test Driven Development in ASP.NET MVC 3
Test Driven Development in ASP.NET MVC 3
 
(Seleniumcamp) Selenium RC for QA Engineer
(Seleniumcamp) Selenium RC for QA Engineer(Seleniumcamp) Selenium RC for QA Engineer
(Seleniumcamp) Selenium RC for QA Engineer
 
Selenide –  лаконичные тесты на Selenium 2 WebDriver + Java bindings
Selenide –  лаконичные тесты на Selenium 2 WebDriver + Java bindingsSelenide –  лаконичные тесты на Selenium 2 WebDriver + Java bindings
Selenide –  лаконичные тесты на Selenium 2 WebDriver + Java bindings
 
Полуавтоматизация third-party API
Полуавтоматизация third-party APIПолуавтоматизация third-party API
Полуавтоматизация third-party API
 
Автоматизация функционального тестирования REST API
Автоматизация функционального тестирования REST APIАвтоматизация функционального тестирования REST API
Автоматизация функционального тестирования REST API
 
Тестирование CSS-регрессий с Gemini — Сергей Татаринцев
Тестирование CSS-регрессий с Gemini — Сергей ТатаринцевТестирование CSS-регрессий с Gemini — Сергей Татаринцев
Тестирование CSS-регрессий с Gemini — Сергей Татаринцев
 

Ähnlich wie Автоматизируйте это немедленно или коллекция инструментов автотестирования с примерами

Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNGДмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNGDataArt
 
Automation Functional Testing in Agile Projects
Automation Functional Testing in Agile ProjectsAutomation Functional Testing in Agile Projects
Automation Functional Testing in Agile ProjectsAndrey Rebrov
 
Как построить свой фреймворк для автотестов?
Как построить свой фреймворк для автотестов?Как построить свой фреймворк для автотестов?
Как построить свой фреймворк для автотестов?Dmitry Buzdin
 
Решения для автоматизации тестирования Web-приложений на базе Selenium
Решения для автоматизации тестирования Web-приложений на базе SeleniumРешения для автоматизации тестирования Web-приложений на базе Selenium
Решения для автоматизации тестирования Web-приложений на базе SeleniumSQALab
 
автоматизация тестирования с помощью Selenium
автоматизация тестирования с помощью Seleniumавтоматизация тестирования с помощью Selenium
автоматизация тестирования с помощью Seleniumvyacheslavmaslov
 
Mobile automation uamobile
Mobile automation uamobileMobile automation uamobile
Mobile automation uamobileUA Mobile
 
Бодрящий микс из Selenium и TestNG- регрессионное тестирование руками разрабо...
Бодрящий микс из Selenium и TestNG- регрессионное тестирование руками разрабо...Бодрящий микс из Selenium и TestNG- регрессионное тестирование руками разрабо...
Бодрящий микс из Selenium и TestNG- регрессионное тестирование руками разрабо...Andrey Rebrov
 
iOS and Android Mobile Test Automation
iOS and Android Mobile Test AutomationiOS and Android Mobile Test Automation
iOS and Android Mobile Test AutomationAndrii Dzynia
 
Selenium 2.0: обзор новых возможностей
Selenium 2.0: обзор новых возможностейSelenium 2.0: обзор новых возможностей
Selenium 2.0: обзор новых возможностейPaul Stashevsky
 
Успешный кейс использования React Native в продакшне, Евгений Федоров (LOOKBUCK)
Успешный кейс использования React Native в продакшне, Евгений Федоров (LOOKBUCK)Успешный кейс использования React Native в продакшне, Евгений Федоров (LOOKBUCK)
Успешный кейс использования React Native в продакшне, Евгений Федоров (LOOKBUCK)Ontico
 
Фреймворк автотестирования веб-сервисов своими силами
Фреймворк автотестирования веб-сервисов своими силамиФреймворк автотестирования веб-сервисов своими силами
Фреймворк автотестирования веб-сервисов своими силамиSQALab
 
WebdriverIO + Puppeteer. Double gun – double fun
WebdriverIO + Puppeteer. Double gun – double funWebdriverIO + Puppeteer. Double gun – double fun
WebdriverIO + Puppeteer. Double gun – double funAlexandr Khotemskoy
 
Как и зачем мы тестируем UI
Как и зачем мы тестируем UIКак и зачем мы тестируем UI
Как и зачем мы тестируем UIVyacheslav Lyalkin
 
Автоматизация тестирования iOS приложений: от идеи к готовому решению
Автоматизация тестирования iOS приложений: от идеи к готовому решениюАвтоматизация тестирования iOS приложений: от идеи к готовому решению
Автоматизация тестирования iOS приложений: от идеи к готовому решениюSQALab
 
What's new in Visual Studio 2012
What's new in Visual Studio 2012What's new in Visual Studio 2012
What's new in Visual Studio 2012InTRUEdeR
 
CodeFest 2013. Родионов А. — От Selenium к Watir — путь к просветлению
CodeFest 2013. Родионов А. — От Selenium к Watir — путь к просветлениюCodeFest 2013. Родионов А. — От Selenium к Watir — путь к просветлению
CodeFest 2013. Родионов А. — От Selenium к Watir — путь к просветлениюCodeFest
 
Client Side Autotesting Flash
Client Side Autotesting FlashClient Side Autotesting Flash
Client Side Autotesting Flashguestb0af15
 

Ähnlich wie Автоматизируйте это немедленно или коллекция инструментов автотестирования с примерами (20)

Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNGДмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
 
Automation Functional Testing in Agile Projects
Automation Functional Testing in Agile ProjectsAutomation Functional Testing in Agile Projects
Automation Functional Testing in Agile Projects
 
Как построить свой фреймворк для автотестов?
Как построить свой фреймворк для автотестов?Как построить свой фреймворк для автотестов?
Как построить свой фреймворк для автотестов?
 
Решения для автоматизации тестирования Web-приложений на базе Selenium
Решения для автоматизации тестирования Web-приложений на базе SeleniumРешения для автоматизации тестирования Web-приложений на базе Selenium
Решения для автоматизации тестирования Web-приложений на базе Selenium
 
автоматизация тестирования с помощью Selenium
автоматизация тестирования с помощью Seleniumавтоматизация тестирования с помощью Selenium
автоматизация тестирования с помощью Selenium
 
Mobile automation uamobile
Mobile automation uamobileMobile automation uamobile
Mobile automation uamobile
 
Бодрящий микс из Selenium и TestNG- регрессионное тестирование руками разрабо...
Бодрящий микс из Selenium и TestNG- регрессионное тестирование руками разрабо...Бодрящий микс из Selenium и TestNG- регрессионное тестирование руками разрабо...
Бодрящий микс из Selenium и TestNG- регрессионное тестирование руками разрабо...
 
iOS and Android Mobile Test Automation
iOS and Android Mobile Test AutomationiOS and Android Mobile Test Automation
iOS and Android Mobile Test Automation
 
Selenium Begins
Selenium BeginsSelenium Begins
Selenium Begins
 
Behavior Driven Development
Behavior Driven DevelopmentBehavior Driven Development
Behavior Driven Development
 
Selenium 2.0: обзор новых возможностей
Selenium 2.0: обзор новых возможностейSelenium 2.0: обзор новых возможностей
Selenium 2.0: обзор новых возможностей
 
Успешный кейс использования React Native в продакшне, Евгений Федоров (LOOKBUCK)
Успешный кейс использования React Native в продакшне, Евгений Федоров (LOOKBUCK)Успешный кейс использования React Native в продакшне, Евгений Федоров (LOOKBUCK)
Успешный кейс использования React Native в продакшне, Евгений Федоров (LOOKBUCK)
 
Фреймворк автотестирования веб-сервисов своими силами
Фреймворк автотестирования веб-сервисов своими силамиФреймворк автотестирования веб-сервисов своими силами
Фреймворк автотестирования веб-сервисов своими силами
 
WebdriverIO + Puppeteer. Double gun – double fun
WebdriverIO + Puppeteer. Double gun – double funWebdriverIO + Puppeteer. Double gun – double fun
WebdriverIO + Puppeteer. Double gun – double fun
 
Как и зачем мы тестируем UI
Как и зачем мы тестируем UIКак и зачем мы тестируем UI
Как и зачем мы тестируем UI
 
Автоматизация тестирования iOS приложений: от идеи к готовому решению
Автоматизация тестирования iOS приложений: от идеи к готовому решениюАвтоматизация тестирования iOS приложений: от идеи к готовому решению
Автоматизация тестирования iOS приложений: от идеи к готовому решению
 
What's new in Visual Studio 2012
What's new in Visual Studio 2012What's new in Visual Studio 2012
What's new in Visual Studio 2012
 
CodeFest 2013. Родионов А. — От Selenium к Watir — путь к просветлению
CodeFest 2013. Родионов А. — От Selenium к Watir — путь к просветлениюCodeFest 2013. Родионов А. — От Selenium к Watir — путь к просветлению
CodeFest 2013. Родионов А. — От Selenium к Watir — путь к просветлению
 
Client Side Autotesting Flash
Client Side Autotesting FlashClient Side Autotesting Flash
Client Side Autotesting Flash
 
Telerik Web aii
Telerik Web aiiTelerik Web aii
Telerik Web aii
 

Mehr von Andrey Rebrov

Agile Testing in Enterprise: Way to transform - SQA Days 2014
Agile Testing in Enterprise: Way to transform - SQA Days 2014Agile Testing in Enterprise: Way to transform - SQA Days 2014
Agile Testing in Enterprise: Way to transform - SQA Days 2014Andrey Rebrov
 
Spec By Example or How to teach people talk to each other
Spec By Example or How to teach people talk to each otherSpec By Example or How to teach people talk to each other
Spec By Example or How to teach people talk to each otherAndrey Rebrov
 
Test Automation Canvas
Test Automation CanvasTest Automation Canvas
Test Automation CanvasAndrey Rebrov
 
How engineering practices help business
How engineering practices help businessHow engineering practices help business
How engineering practices help businessAndrey Rebrov
 
Don’t turn your logs into cuneiform
Don’t turn your logs into cuneiformDon’t turn your logs into cuneiform
Don’t turn your logs into cuneiformAndrey Rebrov
 
DevOps tools cargo tools
DevOps tools cargo toolsDevOps tools cargo tools
DevOps tools cargo toolsAndrey Rebrov
 
Agile тестирование в enterpise проектов: путь трансформации
Agile тестирование в enterpise проектов: путь трансформацииAgile тестирование в enterpise проектов: путь трансформации
Agile тестирование в enterpise проектов: путь трансформацииAndrey Rebrov
 
Building deployment pipeline - DevOps way
Building deployment pipeline - DevOps wayBuilding deployment pipeline - DevOps way
Building deployment pipeline - DevOps wayAndrey Rebrov
 
Test Automation Canvas - не наступайте на глабли автоматизации
Test Automation Canvas - не наступайте на глабли автоматизацииTest Automation Canvas - не наступайте на глабли автоматизации
Test Automation Canvas - не наступайте на глабли автоматизацииAndrey Rebrov
 
Не превращайте ваши логи в клинопись
Не превращайте ваши логи в клинописьНе превращайте ваши логи в клинопись
Не превращайте ваши логи в клинописьAndrey Rebrov
 
Карго культ инструментов в DevOps
Карго культ инструментов в DevOpsКарго культ инструментов в DevOps
Карго культ инструментов в DevOpsAndrey Rebrov
 
как инженерные практики помогают экономить бизнесу
как инженерные практики помогают экономить бизнесукак инженерные практики помогают экономить бизнесу
как инженерные практики помогают экономить бизнесуAndrey Rebrov
 
грабли автоматизации тестирования мобильного веба с помощью Selenium 2
грабли автоматизации тестирования мобильного веба с помощью Selenium 2грабли автоматизации тестирования мобильного веба с помощью Selenium 2
грабли автоматизации тестирования мобильного веба с помощью Selenium 2Andrey Rebrov
 
DevOps от и до - что, зачем и почему
DevOps от и до - что, зачем и почемуDevOps от и до - что, зачем и почему
DevOps от и до - что, зачем и почемуAndrey Rebrov
 
Agile Testing: вопросы и ответы
Agile Testing: вопросы и ответыAgile Testing: вопросы и ответы
Agile Testing: вопросы и ответыAndrey Rebrov
 
DevOps модное слово или следующая ступень эволюции
DevOps модное слово или следующая ступень эволюцииDevOps модное слово или следующая ступень эволюции
DevOps модное слово или следующая ступень эволюцииAndrey Rebrov
 
Как научить людей общаться с помощью Spec By Example
Как научить людей общаться с помощью Spec By ExampleКак научить людей общаться с помощью Spec By Example
Как научить людей общаться с помощью Spec By ExampleAndrey Rebrov
 
Rebrov selenium camp2013
Rebrov selenium camp2013Rebrov selenium camp2013
Rebrov selenium camp2013Andrey Rebrov
 
Курс молодого бойца-автоматизатора - как остаться в живых и стать ветераном
Курс молодого бойца-автоматизатора - как остаться в живых и стать ветераномКурс молодого бойца-автоматизатора - как остаться в живых и стать ветераном
Курс молодого бойца-автоматизатора - как остаться в живых и стать ветераномAndrey Rebrov
 

Mehr von Andrey Rebrov (20)

Agile Testing in Enterprise: Way to transform - SQA Days 2014
Agile Testing in Enterprise: Way to transform - SQA Days 2014Agile Testing in Enterprise: Way to transform - SQA Days 2014
Agile Testing in Enterprise: Way to transform - SQA Days 2014
 
Spec By Example or How to teach people talk to each other
Spec By Example or How to teach people talk to each otherSpec By Example or How to teach people talk to each other
Spec By Example or How to teach people talk to each other
 
Test Automation Canvas
Test Automation CanvasTest Automation Canvas
Test Automation Canvas
 
How engineering practices help business
How engineering practices help businessHow engineering practices help business
How engineering practices help business
 
Don’t turn your logs into cuneiform
Don’t turn your logs into cuneiformDon’t turn your logs into cuneiform
Don’t turn your logs into cuneiform
 
DevOps tools cargo tools
DevOps tools cargo toolsDevOps tools cargo tools
DevOps tools cargo tools
 
Agile Games
Agile GamesAgile Games
Agile Games
 
Agile тестирование в enterpise проектов: путь трансформации
Agile тестирование в enterpise проектов: путь трансформацииAgile тестирование в enterpise проектов: путь трансформации
Agile тестирование в enterpise проектов: путь трансформации
 
Building deployment pipeline - DevOps way
Building deployment pipeline - DevOps wayBuilding deployment pipeline - DevOps way
Building deployment pipeline - DevOps way
 
Test Automation Canvas - не наступайте на глабли автоматизации
Test Automation Canvas - не наступайте на глабли автоматизацииTest Automation Canvas - не наступайте на глабли автоматизации
Test Automation Canvas - не наступайте на глабли автоматизации
 
Не превращайте ваши логи в клинопись
Не превращайте ваши логи в клинописьНе превращайте ваши логи в клинопись
Не превращайте ваши логи в клинопись
 
Карго культ инструментов в DevOps
Карго культ инструментов в DevOpsКарго культ инструментов в DevOps
Карго культ инструментов в DevOps
 
как инженерные практики помогают экономить бизнесу
как инженерные практики помогают экономить бизнесукак инженерные практики помогают экономить бизнесу
как инженерные практики помогают экономить бизнесу
 
грабли автоматизации тестирования мобильного веба с помощью Selenium 2
грабли автоматизации тестирования мобильного веба с помощью Selenium 2грабли автоматизации тестирования мобильного веба с помощью Selenium 2
грабли автоматизации тестирования мобильного веба с помощью Selenium 2
 
DevOps от и до - что, зачем и почему
DevOps от и до - что, зачем и почемуDevOps от и до - что, зачем и почему
DevOps от и до - что, зачем и почему
 
Agile Testing: вопросы и ответы
Agile Testing: вопросы и ответыAgile Testing: вопросы и ответы
Agile Testing: вопросы и ответы
 
DevOps модное слово или следующая ступень эволюции
DevOps модное слово или следующая ступень эволюцииDevOps модное слово или следующая ступень эволюции
DevOps модное слово или следующая ступень эволюции
 
Как научить людей общаться с помощью Spec By Example
Как научить людей общаться с помощью Spec By ExampleКак научить людей общаться с помощью Spec By Example
Как научить людей общаться с помощью Spec By Example
 
Rebrov selenium camp2013
Rebrov selenium camp2013Rebrov selenium camp2013
Rebrov selenium camp2013
 
Курс молодого бойца-автоматизатора - как остаться в живых и стать ветераном
Курс молодого бойца-автоматизатора - как остаться в живых и стать ветераномКурс молодого бойца-автоматизатора - как остаться в живых и стать ветераном
Курс молодого бойца-автоматизатора - как остаться в живых и стать ветераном
 

Автоматизируйте это немедленно или коллекция инструментов автотестирования с примерами

  • 1. Автоматизируйте это немедленно или коллекция инструментов автотестирования с примерами Ребров Андрей Luxoft
  • 4. В детстве у нас были любимые игрушки
  • 6. В детстве я любил роботов
  • 9. Но игрушки у меня уже другие
  • 10. Java
  • 11. Selenium 2 / WebDriver • Используются драйвера адаптированные под конкретный бразуер • Паттерн PageObject позволяет отделить логику тестов от реализации • Гибкая работа с ожиданиями на странице
  • 12. Selenium 2 / WebDriver public class GoogleSearchPage { // The element is now looked up using the name attribute @FindBy(how = How.NAME, using = "q") private WebElement searchBox; public void searchFor(String text) { // We continue using the element just as before searchBox.sendKeys(text); searchBox.submit(); } }
  • 13. JBehave • Тесты можно писать человеческим языком • Такие тесты может использовать Product Owner • Можно отказаться от привычной документации • Поддержка Groovy, Spring и прочая, прочая
  • 15. Robot Framework • Поддержка BDD и коробки • Поддержка Selenium из коробки • Может тестировать десктопные приложение (java), ssh, telnet
  • 16. Robot Framework *** Testcases *** Login Should Succeed When the Correct Username and Password are Entered Start Selenium Server Open Browser http://zdiles.chaosnet.org/ ie Maximize Browser Window Input Text uname BUser Input Text pwd TestPass Click Button login Page Should Contain Welcome Close Browser Stop Selenium Server
  • 17. Ruby
  • 18. Watir • Очень быстро работает • Очень активное сообщество
  • 19. Watir # set a variable test_site = "http://www.google.com" # open a browser browser = Watir::Browser.new browser.goto test_site browser.text_field(:name, "q").set "pickaxe“ browser.button(:name, "btnG").click if browser.text.include? "Programming Ruby" puts " Test Passed. Found the test string: 'Programming Ruby'. Actual Results match Expected Results." else puts " Test Failed! Could not find: 'Programming Ruby'." end
  • 22. Bwoken • Единственный в своем роде фреймворк для тестирования iOS приложений • Не нужно учить Objective C чтобы писать тесты
  • 23. Bwoken test 'Favoriting a repository', (target, app) -> RepositoriesScreen.tapRepositoryNamed 'CITravis by Travis-ci' BuildsScreen.addToFavorites(app) BuildsScreen.back() RepositoriesScreen.tapFavorites() FavoritesScreen.assertFavoriteNamed 'CITravis by Travis-ci' FavoritesScreen.tapAll()
  • 24. C#
  • 25. SWAT (Simple Web Automation Toolkit) • Есть возможность записать скрипты с помощью UI • Легко встроить в Fitness • Есть встроенные инструменты для работы с SQL
  • 26.
  • 27.
  • 28.
  • 29. SWAT (Simple Web Automation Toolkit) [Test] public void MyFirstTest() { SWAT.WebBrowser browser = new SWAT.WebBrowser(BrowserType.InternetExplorer); browser.OpenBrowser(); browser.NavigateBrowser("http://google.com"); browser.AssertElementExists(IdentifierType.Name, "q"); browser.CloseBrowser(); }
  • 30. PHP
  • 31. С миру по нитке • Selenium • Symfony •?
  • 33. Вопросы? • andrebrov@gmail.com • Twitter: andrebrov • Skype: rebrov.andrey • Блог: andrebrov.net