• Selenium Video Tutorials

Selenium WebDriver - Browser Commands



Selenium Webdriver provides multiple commands which help to open a browser, perform some actions on an opened browser, and move out of the browser.

Some of the browser commands are discussed below −

driver.get("url of browser to be launched")

This command opens a browser then launches an application.

Syntax

driver.get("https://www.tutorialspoint.com/job_search.php");

driver.getTitle()

This command fetches the page title of the browser which is in focus as String. It accepts no parameters.

Syntax

String str = driver.getTitle();

driver.getCurrentUrl()

This command fetches the url of the browser which is in focus as String. It accepts no parameters.

Syntax

String str = driver.getCurrentUrl();

driver.getPageSource()

This command fetches the page source browser which is in focus as String. It accepts no parameters.

Syntax

String str = driver.getPageSource();

driver.close()

This command only closes the browser window in focus. It accepts no parameters and returns none.

Syntax

driver.close();

driver.quit()

This command closes everything associated with the driver session(browser and all background driver processes). It accepts no parameters and returns none.

Syntax

driver.quit();

Let us now discuss the identification of an element on a webpage shown in the below image. First, we would need to right click on the webpage, and then click on the Inspect button in the Chrome browser. Then, the corresponding HTML code for the whole page would be visible. For investigating a single element on a page, we would need to click on the left upward arrow, available to the top of the visible HTML code as highlighted below.

Selenium Browser Commands 1

Let us take an example on the below page, where we would first launch an application having the URL: https://www.tutorialspoint.com/selenium/ and then obtain browser title Selenium Practice - Student Registration Form.

Please note, we can get the browser title of a web page in the HTML code, within the title tag which resides inside the head tag. In the below image, we see that the title of the page is Selenium Practice - Student Registration Form.

<title>Selenium Practice - Student Registration Form</title>
Selenium Browser Commands 2

Then, we would click on the Login button, after which we would be navigated to another page having the browser title Selenium Practice - Login and url as: https://www.tutorialspoint.com/selenium/practice/login.php. Finally, we would quit the web driver session.

Selenium Browser Commands 3

Syntax

// Initiate the Webdriver
WebDriver driver = new ChromeDriver();

// launching a browser and open a  URL
driver.get("https://www.tutorialspoint.com/selenium/practice/login.php");

// Getting browser title after launch
System.out.println("Getting browser title after launch: " + driver.getTitle());

// Getting browser URL after launch
System.out.println("Getting URL after launch: " + driver.getCurrentUrl());

// Quitting browser
driver.quit();

Example

Code Implementation on BrowserCommand.java class file.

package org.example;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import java.util.concurrent.TimeUnit;

public class BrowserCommand {
   public static void main(String[] args) throws InterruptedException {

      // Initiate the Webdriver
      WebDriver driver = new ChromeDriver();

      // adding implicit wait of 15 secs
      driver.manage().timeouts().implicitlyWait(15, TimeUnit.SECONDS);

      // launching a browser and open a  URL
      driver.get("https://www.tutorialspoint.com/selenium/practice/selenium_automation_practice.php");

      // Getting browser title after launch
      System.out.println("Getting browser title after launch: " + driver.getTitle());

      // Getting browser URL after launch
      System.out.println("Getting URL after launch: " + driver.getCurrentUrl());

      // identify link then click
      WebElement l = driver.findElement(By.xpath("//*[@id='collapseTwo']/div/ul/li[2]/a"));
      l.click();

      // Getting browser title after clicking link
      System.out.println("Getting browser title after clicking link: " + driver.getTitle());

      // Getting browser URL after launch
      System.out.println("Getting URL after clicking link: " + driver.getCurrentUrl());

      // Quitting browser
      driver.quit();
   }
}

Output

Getting browser title after launch: Selenium Practice - Student Registration Form
Getting URL after launch: 
https://www.tutorialspoint.com/selenium/practice/selenium_automation_practice.php
Getting browser title after clicking link: Selenium Practice - Login
Getting URL after clicking link: 
https://www.tutorialspoint.com/selenium/practice/login.php

Process finished with exit code 0

In the above example, we had launched a URL in the opened browser and obtained the browser title and current URL with the message in the console - Getting browser title after launch: Selenium Practice - Student Registration Form and Getting URL after launch: https://www.tutorialspoint.com/selenium/ respectively. We had then clicked on the Login and received the browser title and current URL after navigation with the message in the console - Getting browser title after clicking link: Selenium Practice - Login and Getting URL after clicking link: https://www.tutorialspoint.com/selenium/practice/login.php. . Next, we had to quit the driver session.

Finally, the message Process finished with exit code 0 was received, signifying successful execution of the code.

Let us take another example as shown in the below image where we would click on the New Tab button.

Selenium Browser Commands 4

Then, on clicking the New Tab, we would get another window having the text New Tab.

Selenium Browser Commands 5

Next, we would close the new window having the text New Tab and switch back to the original window and access the text - Browser Windows there. Finally, we would quit the session.

Selenium Browser Commands 6

Syntax

WebDriver driver = new ChromeDriver();

// Get the window handle of the original window
String oW = driver.getWindowHandle();

// get all opened windows handle ids
Set<String> windows = driver.getWindowHandles();

// Iterating through all window handles
for (String w : windows) {
   if(!oW.equalsIgnoreCase(w)) {

      // switching to child window
      driver.switchTo().window(w);
      
      // accessing element in new window
      WebElement e = driver.findElement(By.xpath("value of xpath"));
      System.out.println("Text in new window is: " + e.getText());
      
      // closing the new window
      driver.close();
      break;
   }
}

// switching to parent window
driver.switchTo().window(oW);

// accessing element in parent window
WebElement e1 = driver.findElement(By.xpath("value of xpath"));
System.out.println("Text in parent window is: " + e1.getText());

// quitting the browser session
driver.quit();

Example

Code Implementation on WindowClose.java class file.

package org.example;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import java.util.Set;
import java.util.concurrent.TimeUnit;

public class WindowClose {
   public static void main(String[] args) throws InterruptedException {

      // Initiate the Webdriver
      WebDriver driver = new ChromeDriver();

      // adding implicit wait of 12 secs
      driver.manage().timeouts().implicitlyWait(12, TimeUnit.SECONDS);

      // Opening the webpage where we will open a new window
      driver.get("https://www.tutorialspoint.com/selenium/practice/browser-windows.php");

      // click button and navigate to next window
      WebElement b =  driver.findElement
         (By.xpath("/html/body/main/div/div/div[2]/button[1]"));
      b.click();

      // Get the window handle of the original window
      String oW = driver.getWindowHandle();

      // get all opened windows handle ids
      Set<String> windows = driver.getWindowHandles();

      // Iterating through all window handles
      for (String w : windows) {
         if(!oW.equalsIgnoreCase(w)) {

            // switching to child window
            driver.switchTo().window(w);

            // accessing element in new window
            WebElement e = driver.findElement
               (By.xpath("/html/body/main/div/div/h1"));
            System.out.println("Text in new window is: " + e.getText());

            // closing new window
            driver.close();
            break;
         }
      }
      // switching to parent window
      driver.switchTo().window(oW);

      // accessing element in parent window
      WebElement e1 = driver.findElement
         (By.xpath("/html/body/main/div/div/div[2]/h1"));
      System.out.println("Text in parent window is: " + e1.getText());

      // quitting the browser session
      driver.quit();
   }
}

Output

Text in new window is: New Tab
Text in parent window is: Browser Windows

Process finished with exit code 0

In the above example, we captured the text on the new window and received the message in the console - Text in new window is: New Tab. Then we closed the child window and switched back to the parent window. Lastly, obtain the text on the parent window in the console - TText in parent window is: Browser Windows.

Finally, the message Process finished with exit code 0 was received, signifying successful execution of the code.

Let us take another example of the above page, where we would get the page source using the getPageSource() method.

Syntax

// launching a browser and open a  URL
driver.get("https://www.tutorialspoint.com/selenium/practice/browser-windows.php");

// Getting browser page source
System.out.println("Getting page source: " + driver.getPageSource());

Example

Code Implementation on WindowPagSource.java class file.

package org.example;

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import java.util.concurrent.TimeUnit;

public class WindowPagSource {
   public static void main(String[] args) throws InterruptedException {

      // Initiate the Webdriver
      WebDriver driver = new ChromeDriver();

      // adding implicit wait of 12 secs
      driver.manage().timeouts().implicitlyWait(12, TimeUnit.SECONDS);

      // Opening the webpage where we will open a new window
      driver.get("https://www.tutorialspoint.com/selenium/practice/browser-windows.php");

      // Getting browser page source
      System.out.println("Getting page source: " + driver.getPageSource());

      // quitting the browser session
      driver.quit();
   }
}

In the above example, we captured the page source of the web page launched on a web page with the message in the console.

Thus, in this tutorial, we had discussed various browser commands using the Selenium Webdriver.

Advertisements