Automated Testing with Google Chrome - WebDriver- ChromeDriver

9,682 views

Published on

Presented these slides at the Google Conference that happened in Chennai.
Google Developer's Group DevFest 2013

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
9,682
On SlideShare
0
From Embeds
0
Number of Embeds
648
Actions
Shares
0
Downloads
79
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Automated Testing with Google Chrome - WebDriver- ChromeDriver

  1. 1. http://assertselenium.com
  2. 2. About Me Open source contributor Developer in Test Editor-in-chief AssertSelenium.com @manoj9788 http://facebook.com/AssertSelenium http://about.me/manoj9788 http://assertselenium.com
  3. 3. What’s In Store ?          Testing Automated testing Selenium WebDriver WebDriver API WebDriver for Google Chrome ChromeDriver ChromeDriver Architecture ChromeDriver Implementation Demo http://assertselenium.com
  4. 4. Testing ? Is the process of evaluating a system or its component(s) with the intent to find whether it satisfies what it needs to do. http://assertselenium.com
  5. 5. Automated Testing  Testing a system or its component(s) with an use of an automation tool is called Automation testing.  In a Robotic way http://assertselenium.com
  6. 6. Why Automation Testing ?  Automation does not require Human Intervention  Automation increases speed of test execution  Manual testing can be boring and hence error prone  Automation saves you money http://assertselenium.com
  7. 7. Automation Tool  Is a Software or a package that allows you to use high level languages or keywords to create scripts on top of a test framework to manage the build and run of scripts that communicate with the Application under test  To control execution of tests  To compare actual outcomes to expected outcomes  To report the status (PASS/FAIL) http://assertselenium.com
  8. 8. Selenium WebDriver  Browser Automation Framework  It automates browser’s  http://docs.seleniumhq.org/ http://assertselenium.com
  9. 9. Selenium WebDriver  Selenium is an open Source tool and its free.  Supports Cross Browser Testing. The Selenium tests can be run on multiple browsers.  Allows scripting in several languages like Java, C#, Groovy, Ruby, PHP and Python.  Assertion statements provide an efficient way of comparing expected and actual results.  Different browser implementations http://assertselenium.com
  10. 10. Selenium Suite of Tools  Selenium IDE  Selenium Remote Control (aka) Selenium 1.0 (Deprecated)  Selenium WebDriver (aka) Selenium 2.0(aka) WebDriver  Selenium GRID http://assertselenium.com
  11. 11. Selenium IDE  The Record and Playback tool http://assertselenium.com
  12. 12. Why WebDriver ? Because it’s a W3C Working Draft http://assertselenium.com
  13. 13. WebDriver API  How does the WebDriver API looks like ? driver.findElement(By.name("q")) http://assertselenium.com
  14. 14. UI Element Locators  We Human’s know what exactly to do on the web page, operations like click, double click…  Automation is a robotic process and we need instruct the bot to click ‘here’ by the element locators – the objects.  Different locators id css xpath linktext http://assertselenium.com
  15. 15. Transformation from Manual to a Automated Tester Manual Interaction Automated WebDriver API Human Opens a browser and loads the URL of app under test WebDriver driver = new ChromeDriver(); driver.get(http://google.com); Human Click on a button driver.findElement(By.linkText(”Google")).click(); Human types in a name in text field driver.findElement(By.name("firstName")).clear(); driver.findElement(By.name("firstName")).sendKe ys(”gdgChennai"); Human selects an option from a dropdown new Select(driver.findElement(By.id("glsel"))).selectBy VisibleText("GB"); http://assertselenium.com
  16. 16. CHROMEDRIVER Chromium Maintained and Developed by the Chromium Team at Google http://assertselenium.com
  17. 17. Browser Statistics http://assertselenium.com
  18. 18. Interrogation As a Web Developer, how can I automatically verify the critical functionality of my app works ? As a Tester, how can I automatically verify the critical functionality of app under test performs what it supposed to do ? http://assertselenium.com
  19. 19. ChromeDriver Interoperable with WebDriver Clients Open source and maintained by the members of Chromium project http://assertselenium.com
  20. 20. How does the test look like ? http://assertselenium.com
  21. 21. How ChromeDriver works ? http://assertselenium.com
  22. 22. ChromeDriver Implementation Dev Tools Provides access to internal of web app • • • • Query and Manipulate DOM tree Debugging JavaScript Network Monitoring Memory and Performance profiling Extensions Modify and enhance browser functionality • Window control http://assertselenium.com
  23. 23. Detailed Architecture View ChromeDriver http://assertselenium.com
  24. 24. Chrome Extensions  Chrome Extensions can be either packed or unpacked.  Packed extensions are single file with a .crx extension  Unpacked extensions are a directory containing the extension, including a manifest.json file http://assertselenium.com
  25. 25. http://assertselenium.com
  26. 26. Thank you!! Email at: manoj9788@gmail.com http://assertselenium.com

×