• 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.

Basic Browser Commands in Selenium Webdriver

Some of the browser commands are discussed below −

get(String URL) command

This command opens a browser then launches the URL passed as a parameter.

Syntax

driver.get("https://www.tutorialspoint.com/selenium/practice/nestedframes.php");

getTitle() command

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

Syntax

String str = driver.getTitle();

getCurrentUrl() command

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

Syntax

String str = driver.getCurrentUrl();

getPageSource() command

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

Syntax

String str = driver.getPageSource();

close() command

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

Syntax

driver.close();

quit() command

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();

How to Inspect Elements on a Web Page?

First right click on the web page, then click on the Inspect button in the Chrome browser. This will be followed by the opening of the HTML code for the complete page. For investigating on a particular element on the page, click on the left upward arrow at the top of the visible HTML code as highlighted below.

Selenium Browser Commands 1

Example 1

Let us take an example on the below page, where we would first launch an application having the URL: Selenium Automation Practice Form 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.

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: Selenium Automation Practice Form. Finally, we would quit the web driver session.

Selenium Browser Commands 3

Code Implementation

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: Selenium Automation Practice Form 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: Selenium Automation Practice Form. 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.

Example 2

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

Selenium Browser Commands 4

After that, we would obtain another window having text New Tab.

Selenium Browser Commands 5

Then we would close the new window with text New Tab and move back to the original window and access text - Browser Windows there. Finally, we would quit the session.

Selenium Browser Commands 6

Code Implementation

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

In the above example, we had 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.

Example 3

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

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.

Conclusion

This concludes our comprehensive take on the tutorial on Selenium WebDriver Browser Commands. Weve started with describing basic browser commands in Selenium Webdriver, how to inspect elements on a web page, and walked through examples on how to use the browser commands with Selenium Webdriver. This equips you with in-depth knowledge of the Selenium WebDriver Browser Commands. It is wise to keep practicing what youve learned and exploring others relevant to Selenium to deepen your understanding and expand your horizons.

Advertisements