QA Club N.NovgorodJava + WebDriver + TestNG   Знакомствос WebDriver
О себе:Павел Попов  2 года разработки автоматизированных тестов на       Selenium/WebDriver  Automation Test Lead в Exigen...
1   Что такое WebDriver?                     Основы основ
WebDriver    WebDriver пришел на замену Selenium RC, в 2010 году. РазработчикиWebDriver отказались от техники применения S...
2   Попробуем?                 Посмотрим своими глазами
Вводный курсSelenium IDE - легкий Firefox pluginдля создания тестов на языкеSelenium. Не требует знаний языковпрограммиров...
Selenium IDE как начало пути к WebDriver
Настраиваем окружениеEclipse: http://www.eclipse.org/downloads/            JDK: http://www.oracle.com/technetwork/java/jav...
Первый тест на WebDriver
Domain-Specific Language        Предметно-ориентированный язык       программирования (англ. domain-specific  programming ...
Пример применения DSL@Testpublic void registerShouldBeUseLoginAndPassword(){   openApplication();   setLogin("User");   se...
Page Object & Page Elementsfinal public class PageLogin extends ElementsSet              /** Field IDs */{                ...
Page Object & Page Elements         TextBox                 Button               CheckBox   •    type                     ...
Refactoring
ВопросыНе стесняемся задавать любые вопросы ;)                                          Спасибо, что не спите :)
Upcoming SlideShare
Loading in …5
×

знакомство с Web driver

2,866 views

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,866
On SlideShare
0
From Embeds
0
Number of Embeds
1,464
Actions
Shares
0
Downloads
9
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

знакомство с Web driver

  1. 1. QA Club N.NovgorodJava + WebDriver + TestNG Знакомствос WebDriver
  2. 2. О себе:Павел Попов 2 года разработки автоматизированных тестов на Selenium/WebDriver Automation Test Lead в Exigen Services Один из преподавателей в ITCollege for Junior Testers (Exigen) Участник конференций: SQADays, SelenuimCamp
  3. 3. 1 Что такое WebDriver? Основы основ
  4. 4. WebDriver WebDriver пришел на замену Selenium RC, в 2010 году. РазработчикиWebDriver отказались от техники применения Serverа и перевода споддерживаемых машинных языков в JavaScript язык. Теперь WebDriver -это вызов API функций браузера, и для каждого языкапрограммирования/каждого браузера описаны свои интерпретаторы.
  5. 5. 2 Попробуем? Посмотрим своими глазами
  6. 6. Вводный курсSelenium IDE - легкий Firefox pluginдля создания тестов на языкеSelenium. Не требует знаний языковпрограммирования, имеетдружелюбный интерфейс, позволяетавтоматизированно тестировать Webстраницы. http://seleniumhq.org/projects/ide/
  7. 7. Selenium IDE как начало пути к WebDriver
  8. 8. Настраиваем окружениеEclipse: http://www.eclipse.org/downloads/ JDK: http://www.oracle.com/technetwork/java/javase/downloads/index.html TestNG: http://beust.com/eclipse
  9. 9. Первый тест на WebDriver
  10. 10. Domain-Specific Language Предметно-ориентированный язык программирования (англ. domain-specific programming language, domain-specific language, DSL) — язык программирования, специально разработанный для решения определённого круга задач, в отличие от языков программирования общего назначения, таких, как Си, или языков моделирования общего назначения наподобие UML и др.
  11. 11. Пример применения DSL@Testpublic void registerShouldBeUseLoginAndPassword(){ openApplication(); setLogin("User"); setPassword("12345"); clickOnRegistration(); assertEquals("User", getLoginNameFromHeader());}
  12. 12. Page Object & Page Elementsfinal public class PageLogin extends ElementsSet /** Field IDs */{ static public final class FieldId /** Creates instance of accessor */ { public PageLogin() /** Hidden constructor */ { private FieldId(){} setFieldAccessors(fieldAccessors); static public final String LOGIN = "Login"; addActionAccessors(actionAccessors); static public final String PASSWORD = "Password"; } } /** Field accessors. Pairs "field ID - field accessor" */ /** static private final Map<String, Element> fieldAccessors; * Types user name and password and clicks appropriate button for submit /** Action accessors. Pairs "action ID - action accessor" */ * @param user - user name static private final Map<String, Element> actionAccessors; * @param password - password static */ { public void submitCredentials(final String user, final String password) //[ Field accessors { fieldAccessors = new LinkedHashMap<String, Element>(); changeValue(FieldId.LOGIN, user); changeValue(FieldId.PASSWORD, password); String fieldId = FieldId.LOGIN; dispatchAction(ActionId.LOGIN); String fieldLocator = "id=loginForm:j_username"; } fieldAccessors.put(fieldId, new TextBox(fieldLocator));
  13. 13. Page Object & Page Elements TextBox Button CheckBox • type • • getValue • click • check • focus • isEnabled • uncheck • clear • doubleClick • isChecked • isEditable • ... • click • ... ... Form Menu Table Panel ...
  14. 14. Refactoring
  15. 15. ВопросыНе стесняемся задавать любые вопросы ;) Спасибо, что не спите :)

×