Submit Search
Стажировка 2016-08-04 02 Юлия Ашаева. Делаем тесты лучше
0 likes
225 views
S
SmartTools
Работа с Selenium
Education
Read more
1 of 11
Download now
Download to read offline
1
2
3
4
5
6
7
8
9
10
11
More Related Content
PDF
PayPal's NemoJS and Applitools Eyes - Visual Testing with Node.js
Applitools
PDF
Стажировка 2016-08-04 01 Денис Нелюбин. Шифрование и безопасность
SmartTools
PDF
Cтажировка 2016-08-02 02 Юлия Ашаева. Инструменты тестировщика
SmartTools
PDF
Стажировка 2016-07-27 02 Денис Нелюбин. PostgreSQL и jsonb
SmartTools
PDF
Стажировка 2016-08-11 01 Юлия Ашаева. Техники тест-анализа
SmartTools
PPTX
QA Fes 2016. Роман Якимчук. Продвинутое тестирование состояний и переходов
QAFest
PPT
Тестирование требований и документации
Uladzimir Kryvenka
PPTX
QA Fes 2016. Артем Быковец. Как выживать тестировщику в Agile среде
QAFest
PayPal's NemoJS and Applitools Eyes - Visual Testing with Node.js
Applitools
Стажировка 2016-08-04 01 Денис Нелюбин. Шифрование и безопасность
SmartTools
Cтажировка 2016-08-02 02 Юлия Ашаева. Инструменты тестировщика
SmartTools
Стажировка 2016-07-27 02 Денис Нелюбин. PostgreSQL и jsonb
SmartTools
Стажировка 2016-08-11 01 Юлия Ашаева. Техники тест-анализа
SmartTools
QA Fes 2016. Роман Якимчук. Продвинутое тестирование состояний и переходов
QAFest
Тестирование требований и документации
Uladzimir Kryvenka
QA Fes 2016. Артем Быковец. Как выживать тестировщику в Agile среде
QAFest
More from SmartTools
(6)
PDF
Стажировка 2016-07-14 02 Евгений Тарасенко. JavaScript
SmartTools
PDF
Стажировка 2016-07-12 02 Денис Нелюбин. Web, HTTP, TCP/IP
SmartTools
PPTX
Стажировка 2016-07-08 01 Евгений Тюменцев. S.O.L.I.D.
SmartTools
PPTX
Стажировка 2016-07-07 02 Евгений Тюменцев. Акторная модель
SmartTools
PDF
Стажировка 2016-07-06 03 Евгений Тарасенко. Основы HTML и CSS (часть 1).
SmartTools
PDF
Стажировка 2016-07-06 02 Денис Нелюбин. Linux и git.
SmartTools
Стажировка 2016-07-14 02 Евгений Тарасенко. JavaScript
SmartTools
Стажировка 2016-07-12 02 Денис Нелюбин. Web, HTTP, TCP/IP
SmartTools
Стажировка 2016-07-08 01 Евгений Тюменцев. S.O.L.I.D.
SmartTools
Стажировка 2016-07-07 02 Евгений Тюменцев. Акторная модель
SmartTools
Стажировка 2016-07-06 03 Евгений Тарасенко. Основы HTML и CSS (часть 1).
SmartTools
Стажировка 2016-07-06 02 Денис Нелюбин. Linux и git.
SmartTools
Ad
Recently uploaded
(6)
PPTX
Madison dsfnsd dslsf sada;sdmas;ds;dls.pptx
yaya441212
PDF
Cold positive punishment of the student سزادانی ئەرێنی ساردی قوتابی.pdf
ASOYGASHlak
PDF
15 AUG 2025 PS 15 AUG 2025 PS 15 AUG 2025 PS
ssuser787edf
PDF
Materi seni rupa untuk sekolah dasar materi tentang seni rupa
barryalan7
PDF
فورمولر عمومی مضمون فزیک برای همه انجنیران
esmatullahkamran1
PPTX
Tahfidz Qur’an TIMING tampa musik bagian 2.pptx
feninormalita2
Madison dsfnsd dslsf sada;sdmas;ds;dls.pptx
yaya441212
Cold positive punishment of the student سزادانی ئەرێنی ساردی قوتابی.pdf
ASOYGASHlak
15 AUG 2025 PS 15 AUG 2025 PS 15 AUG 2025 PS
ssuser787edf
Materi seni rupa untuk sekolah dasar materi tentang seni rupa
barryalan7
فورمولر عمومی مضمون فزیک برای همه انجنیران
esmatullahkamran1
Tahfidz Qur’an TIMING tampa musik bagian 2.pptx
feninormalita2
Ad
Стажировка 2016-08-04 02 Юлия Ашаева. Делаем тесты лучше
1.
Делаем тесты лучше Юлия
Ашаева
2.
Автотесты от Selenium
IDE Плюсы Быстрый старт Просто получить Минусы Нечитаемо Хрупкие (зависят от верстки) Тяжело поддерживать
3.
Приложение Test data Application
driver Test logic
4.
Domain Specific Language Test
logic DSL driver Application driver
5.
Selenium plugin for
Intellij IDEA Settings → Plugins →Browse repositories Look for Selenium plugin http://perfect-test.com/index.php/ru/instruments-rus-menu/15-selenium-plugin-rus
6.
public abstract class
Page { protected WebDriver driver; public Page(WebDriver driver) { this.driver = driver; } public abstract void open(); protected void type(WebElement webElement, String text) { webElement.clear(); webElement.sendKeys(text); } public boolean isElementPresent(WebElement element) { try { element.isDisplayed(); return true; } catch (NoSuchElementException e) { return false; } } }
7.
public class LoginPage
extends Page { @FindBy(className="login") public WebElement linkSignIn; @FindBy(id="username") WebElement fieldUsername; @FindBy(id="password") WebElement fieldPassword; @FindBy(name="login") WebElement buttonLogin; public LoginPage(WebDriver driver) { super(driver); } public HomePage loginAs(UserData user) { linkSignIn.click(); type(fieldUsername, user.name); type(fieldPassword, user.password); buttonLogin.click(); return PageFactory.initElements(driver, HomePage.class); } @Override public void open() { driver.get(ConfigProperties.getProperty("login.url")); } }
8.
public class BasicTestCase
{ protected static WebDriver driver; protected WebDriver getWebDriver() { if (driver == null) { driver = new FirefoxDriver(); driver.manage().timeouts().implicitlyWait( Long.parseLong(ConfigProperties.getProperty("imp.wait")), TimeUnit.SECONDS); } return driver; } @AfterTest public void tearDown() throws Exception { driver.quit(); } }
9.
public class TestLogin
extends BasicTestCase{ public final static UserData user = new UserData("jashaeva", "helloWorld"); private HomePage homePage = PageFactory.initElements(getWebDriver(), HomePage.class); private LoginPage loginPage = PageFactory.initElements(getWebDriver(), LoginPage.class); @Test public void testLogin() throws Exception { loginPage.open(); homePage = loginPage.loginAs(user); assertTrue(homePage.isLoggedIn()); homePage.logout(); assertTrue(homePage.isLoggedOut()); } }
10.
DSL
11.
Что дальше? PageElement Form Checkbox Button Select
Download