test automation with selenium using page object design
DESCRIPTION
TRANSCRIPT
Automated Web Testing
With Selenium In MJournal
Presented by:
Md. Humayun Kabir
Discussion on:What Is Selenium
Components of Selenium
What is Selenium 2.0
Selenium 2.0 Architecture.
WebdriverWebdriver Introduction
Automating With Selenium 2.0
The Webdriver API
Page Object DesignWhat is Page Object Design Pattern?
How Does It Work?
MJournal Automation.
Q & A.
What is Selenium?
Selenium is a set of tools for cross-platform automated
testing of web application.
Selenium Supports:
IE, Firefox, Safari, Opera and Other browsers.
Windows, OS x, Linux, Solaris and Others OS’s
C#, Java, Perl, PHP, Python, Ruby and Others Languages
Bromine, NUnit, JUnit, RSpec, TestNG, unittest
Components of Selenium?
What is Selenium 2.0
Webdriver Introduction
A different way of automating the browser.
Create a browser-specific driver to control the browser directly and have to do this for each browser.
Object oriented API
Doesn’t need a real browser.
No Javascript limitations
No need for a server.
The WebDriver API
Works well with a Page Object design model.
Page Object Design Pattern
A Page Object is a design pattern become popular for Enhancing test maintenance &
Reducing code duplication
A Page Object is a object oriented class that serves as an interface to a page of your AUT(Application Under Test). If
UI change, tests don’t need to be change, only the code within the page object need to be changed.
How does it work?
Each page is defined as it’s own class.
Actions (including navigation) are represented as functions for a class.
Each function returns a new Page object, signifying what page the actions stops on.
Tests only talk to the page objects.
Page objects only talk to the driver.
Elements on the page are stored as variables for the page object
Tests become a string of well defined functions, not meaningless gibberish.
Class Inheritance can be used to define functionality to a set of pages.
MJournal Automation
Page Object Pattern:
Page Object Pattern: Open Frontpage
Page Object Pattern: How Search working?
How is it easy to handle [base class]
Page object Class
Page Object Design: Create User, check it, delete it, & Check it again (in base class)
Page Object Design: Create User, check it, delete it, & Check it again (in Page object class)
Add test cases to NUnit
Expecting this screen
Mjournal Test automation
Lets go to real automation: going to code
Q & A
Thank you!!!