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

Post on 16-Nov-2014

2.066 Views

Category:

Technology

4 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

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

инструментов автотестирования с примерами

Ребров АндрейLuxoft

Обо мне

Наконец-то инженерный доклад!

В детстве у нас были любимые игрушки

Мы выросли

В детстве я любил роботовВ детстве я любил роботов

Я повзрослел Я повзрослел

И роботы тоже

Но игрушки у меня уже другие

Java

Selenium 2 / WebDriver• Используются драйвера адаптированные под

конкретный бразуер• Паттерн PageObject позволяет отделить

логику тестов от реализации• Гибкая работа с ожиданиями на странице

Selenium 2 / WebDriverpublic 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 browserbrowser = Watir::Browser.new browser.goto test_site browser.text_field(:name, "q").set "pickaxe“ browser.button(:name, "btnG").clickif 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 чтобы писать тесты

Bwokentest '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

top related