what is page object model in selenium c# code example
Example 1: page object model
Pom basically Creating java classes
for the each page of our application,
and storing related webelements,
and methods in their respective classes.
Advantages of POM =
First of all, it makes our code REUSABLE.
I don't have to repeatedly locate web elements
in every single other class.
Secondly it is EASY TO MAINTAIN. I store one
webelement in one class and it is a lot easier to
fix any issue with that web element because I know
exactly where everything is stored.
Thirdly is seperating webelements and our test cases.
Our test cases will be cleaner therefore
easy to manage overall.
HOW I CREATE POM =
#1-I Create constructor,
and pass PageFactory.initElements(objectOfClass, Driver)
#2- I use @FindBy annotation to locate web elements
- FindBy annotation comes from Selenium.
Example 2: how did you implement page object model
#1- We initialize the web elements using
PageFactory.initElements method
- We create connection in between our Driver
and the object of current class.
- So when we use the object of the class,
the object is already initialized with all
the web elements and able to use them.
PageFactory.initElements(Driver.getDriver(), this);
- #2 - We use @FindBy annotation to locate web elements.
@FindBy (xpath = "//something")
public WebElement exampleBox;