Creating your First Script in WebDriver
Create a WebDriver script that would:
- fetch Mercury Tours' homepage
- verify its title
- print out the result of the comparison
- close it before ending the entire program.
Below is the actual WebDriver code for the logic presented by the scenario above
package
mypackage;
import
org.openqa.selenium.WebDriver;
import
org.openqa.selenium.firefox.FirefoxDriver;
public
class
myclass {
public
static
void
main(String[] args) {
// declaration and instantiation of objects/variables
WebDriver driver =
new
FirefoxDriver();
String baseUrl =
"http://newtours.demoaut.com"
;
String expectedTitle =
"Welcome: Mercury Tours"
;
String actualTitle =
""
;
// launch Firefox and direct it to the Base URL
driver.get(baseUrl);
// get the actual value of the title
actualTitle = driver.getTitle();
/*
* compare the actual title of the page witht the expected one and print
* the result as "Passed" or "Failed"
*/
if
(actualTitle.contentEquals(expectedTitle)){
System.out.println(
"Test Passed!"
);
}
else
{
System.out.println(
"Test Failed"
);
}
//close Firefox
driver.close();
// exit the program explicitly
System.exit(
0
);
}
}
Code Explanation
Importing Packages
To get started, you need to import following two packages:
- org.openqa.selenium.*- contains the WebDriver class needed to instantiate a new browser loaded with a specific driver
- org.openqa.selenium.firefox.FirefoxDriver - contains the FirefoxDriver class needed to instantiate a Firefox-specific driver onto the browser instantiated by the WebDriver class
If your test needs more complicated actions such as accessing another class, taking browser screenshots, or manipulating external files, definitely you will need to import more packages.
Instantiating objects and variables
Normally, this is how a driver object is instantiated.
A FirefoxDriver class with no parameters means that the default Firefox profile will be launched by our Java program. The default Firefox profile is similar to launching Firefox in safe mode (no extensions are loaded).
For convenience, we saved the Base URL and the expected title as variables.
Launching a Browser Session
WebDriver's get() method is used to launch a new browser session and directs it to the URL that you specify as its parameter.
Get the Actual Page Title
The WebDriver class has the getTitle() method that is always used to obtain the page title of the currently loaded page.
Compare the Expected and Actual Values
This portion of the code simply uses a basic Java if-else structure to compare the actual title with the expected one.
Terminating a Browser Session
The "close()" method is used to close the browser window.
Terminating the Entire Program
If you use this command without closing all browser windows first, your whole Java program will end while leaving the browser window open.
Running the Test
There are two ways to execute code in Eclipse IDE.
- On Eclipse's menu bar, click Run > Run.
- Press Ctrl+F11 to run the entire code.
If you did everything correctly, Eclipse would output "Test Passed!"
No comments:
Post a Comment