Автоматизация тестирования Selenium WebDriver. Объектная модель страницы. (Лекция 6) презентация

www.a1qa.ru План лекции Проект Selenium Поддерживаемые платформы Компоненты Взаимодействие с браузером и UI Объектная модель страницы Манипуляции с элементами Синхронизация с UI

Слайд 1
Автоматизация тестирования
Selenium WebDriver.
Объектная модель страницы


Слайд 2www.a1qa.ru
План лекции
Проект Selenium
Поддерживаемые платформы
Компоненты
Взаимодействие с браузером и UI
Объектная модель страницы
Манипуляции

с элементами

Синхронизация с UI


Слайд 3www.a1qa.ru
Selenium, Webdriver
Selenium
это проект, в рамках которого разрабатывается серия программных продуктов с

открытым исходным кодом (open source):
Selenium WebDriver Selenium RC
Selenium Server Selenium Grid
Selenium IDE

Webdriver

драйвер браузера, то есть программная библиотека, которая позволяет разрабатывать программы, управляющие поведением браузера.


Слайд 4www.a1qa.ru
Selenium Server
Selenium Server – это сервер, который позволяет управлять браузером с

удалённой машины, по сети.

Слайд 5www.a1qa.ru
Selenium Grid
Selenium Grid – это кластер, состоящий из нескольких Selenium-серверов. Он

предназначен для организации распределённой сети, позволяющей параллельно запускать много браузеров на большом количестве машин.

Слайд 6www.a1qa.ru
Selenium IDE
Selenium IDE – плагин к браузеру Firefox, который может записывать

действия пользователя, воспроизводить их, а также генерировать код для WebDriver или Selenium RC, в котором выполняются те же самые действия

Слайд 7www.a1qa.ru
Поддерживаемые платформы
Windows Linux Mac OS X Solaris
Firefox (up to 30.x) IE 7-11

Safari (not stable)
Opera 8.x + Google Chrome (all)

Операционные системы

Браузеры


Слайд 8www.a1qa.ru
Компоненты


Слайд 9www.a1qa.ru
Взаимодействие с браузером и UI
Найти элемент UI;
Произвести действие с элементом.
Взаимодействие с

браузером

Взаимодействие с UI


Слайд 10Document Object Model
www.a1qa.ru


Слайд 11www.a1qa.ru
HTML DOM via JavaScript
Functions can be combined in sequences: document.getElementById("pnlLogin") .getElementsByTagName("input")[0]


Слайд 12www.a1qa.ru
Инструменты в браузере
FireFox + Add-ons: FireBug, FirePath (F12)
FireFox Web Developer (Ctrl

+ Shift + I)
Opera Dragonfly (Ctrl + Shift + I)
IE Developer Tools (F12)
Chrome Developer Tools (F12)

Слайд 13www.a1qa.ru
Как найти WebElement из Webdriver?


Слайд 14www.a1qa.ru
Манипуляции с элементами


Слайд 15www.a1qa.ru
Синхронизация с UI


Слайд 16www.a1qa.ru
Explicit Wait
WebDriver driver = new FirefoxDriver(); driver.get("http://somedomain/url_that_delays_loading");
WebElement myDynamicElement = (new

WebDriverWait(driver, 10))
.until(new ExpectedCondition(){
@Override
public WebElement apply(WebDriver d) {
return d.findElement(By.id("myDynamicElement"));
}});

Слайд 17www.a1qa.ru
Fluent Wait
Wait wait = new FluentWait(driver) .withTimeout(30, SECONDS)
.pollingEvery(5, SECONDS)
.ignoring(NoSuchElementException.class);



WebElement foo = wait.until(new Function() { public WebElement apply(WebDriver driver) {
return driver.findElement(By.id("foo"));
}
});

Слайд 18www.a1qa.ru
Implicit Wait
WebDriver driver = new FirefoxDriver(); driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); driver.get("http://somedomain/url_that_delays_loading");
WebElement myDynamicElement

= driver.findElement(By.id("myDynamicElement"));

Слайд 19www.a1qa.ru
Пример кода на Selenium 2
public class Selenium2Example {
public static

void main(String[] args) {
WebDriver driver = new FirefoxDriver();
driver.get("http://www.google.com");
// driver.navigate().to("http://www.google.com");
WebElement element = driver.findElement(By.name("q"));
element.sendKeys("Cheese!");
element.submit();
System.out.println("Page title is: " + driver.getTitle());
(new WebDriverWait(driver, 10)).until(new ExpectedCondition() {
public Boolean apply(WebDriver d) {
return d.getTitle().toLowerCase().startsWith("cheese!");
}
});
System.out.println("Page title is: " + driver.getTitle());
driver.quit();
}
}

Слайд 20

www.a1qa.ru
Спасибо


Обратная связь

Если не удалось найти и скачать презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое ThePresentation.ru?

Это сайт презентаций, докладов, проектов, шаблонов в формате PowerPoint. Мы помогаем школьникам, студентам, учителям, преподавателям хранить и обмениваться учебными материалами с другими пользователями.


Для правообладателей

Яндекс.Метрика