Bird
Raised Fist0
Selenium Javatesting~5 mins

Page title and URL retrieval in Selenium Java

Choose your learning style10 modes available
Introduction

We get the page title and URL to check if we are on the right webpage during testing.

To confirm the browser opened the correct webpage after clicking a link.
To verify the page title matches expected content in a test case.
To log the current URL for debugging test failures.
To ensure navigation happened correctly after form submission.
To check if redirects lead to the expected page.
Syntax
Selenium Java
WebDriver driver = new ChromeDriver();

// Open a webpage
driver.get("https://example.com");

// Get page title
String pageTitle = driver.getTitle();

// Get current URL
String currentUrl = driver.getCurrentUrl();

Use getTitle() to get the page title as a String.

Use getCurrentUrl() to get the current page URL as a String.

Examples
Prints the page title to the console.
Selenium Java
String title = driver.getTitle();
System.out.println("Title: " + title);
Prints the current URL to the console.
Selenium Java
String url = driver.getCurrentUrl();
System.out.println("URL: " + url);
Opens Google, then prints its title and URL.
Selenium Java
driver.get("https://www.google.com");
String title = driver.getTitle();
String url = driver.getCurrentUrl();
System.out.println("Title: " + title);
System.out.println("URL: " + url);
Sample Program

This program opens the browser, navigates to example.com, prints the page title and URL, then closes the browser.

Selenium Java
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;

public class PageInfoTest {
    public static void main(String[] args) {
        // Set path to chromedriver executable if needed
        // System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");

        WebDriver driver = new ChromeDriver();

        // Open example.com
        driver.get("https://example.com");

        // Get and print page title
        String pageTitle = driver.getTitle();
        System.out.println("Page Title: " + pageTitle);

        // Get and print current URL
        String currentUrl = driver.getCurrentUrl();
        System.out.println("Current URL: " + currentUrl);

        // Close the browser
        driver.quit();
    }
}
OutputSuccess
Important Notes

Getting the title and URL is fast and uses little memory (O(1) time and space).

Common mistake: calling these methods before the page fully loads can give wrong results.

Use these methods to verify navigation success instead of relying only on page content.

Summary

Use getTitle() to get the page title as a string.

Use getCurrentUrl() to get the current page URL as a string.

Check these values to confirm you are on the expected webpage during tests.

Practice

(1/5)
1. Which Selenium WebDriver method is used to retrieve the title of the current webpage as a string?
easy
A. getTitle()
B. getPageTitle()
C. getCurrentUrl()
D. getUrl()

Solution

  1. Step 1: Understand the purpose of getTitle()

    This method returns the title of the current webpage as a string, which helps verify the page loaded.
  2. Step 2: Compare with other methods

    getCurrentUrl() returns the URL, not the title. The other options are not valid Selenium methods.
  3. Final Answer:

    getTitle() -> Option A
  4. Quick Check:

    Page title retrieval = getTitle() [OK]
Hint: Remember: Title uses getTitle(), URL uses getCurrentUrl() [OK]
Common Mistakes:
  • Confusing getTitle() with getCurrentUrl()
  • Using non-existent methods like getPageTitle()
  • Trying to get title from URL method
2. Which of the following is the correct Java syntax to get the current page URL using Selenium WebDriver stored in variable driver?
easy
A. String url = driver.getUrl();
B. String url = driver.currentUrl();
C. String url = driver.getPageUrl();
D. String url = driver.getCurrentUrl();

Solution

  1. Step 1: Identify the correct method name

    The correct Selenium method to get the current URL is getCurrentUrl().
  2. Step 2: Check Java syntax correctness

    Assigning the result to a String variable with String url = driver.getCurrentUrl(); is correct syntax.
  3. Final Answer:

    String url = driver.getCurrentUrl(); -> Option D
  4. Quick Check:

    URL retrieval syntax = getCurrentUrl() [OK]
Hint: Use getCurrentUrl() exactly as shown for URL retrieval [OK]
Common Mistakes:
  • Using getUrl() instead of getCurrentUrl()
  • Missing String type declaration
  • Calling methods without parentheses
3. What will be the output of the following code snippet if the current page title is "Welcome Page" and URL is "https://example.com/home"?
String title = driver.getTitle();
String url = driver.getCurrentUrl();
System.out.println(title);
System.out.println(url);
medium
A. null null
B. https://example.com/home Welcome Page
C. Welcome Page https://example.com/home
D. Welcome Page null

Solution

  1. Step 1: Understand method outputs

    getTitle() returns the page title "Welcome Page" and getCurrentUrl() returns the URL "https://example.com/home".
  2. Step 2: Check print order

    The code prints title first, then URL, so output matches Welcome Page https://example.com/home exactly.
  3. Final Answer:

    Welcome Page https://example.com/home -> Option C
  4. Quick Check:

    Title then URL printed = Welcome Page https://example.com/home [OK]
Hint: Print order matches method call order: title then URL [OK]
Common Mistakes:
  • Mixing up title and URL order in output
  • Assuming methods return null without page loaded
  • Confusing getTitle() with getCurrentUrl() output
4. Identify the error in the following Selenium Java code snippet that tries to print the page title and URL:
System.out.println(driver.gettitle());
System.out.println(driver.getCurrentUrl);
medium
A. getCurrentUrl() returns void, cannot print
B. Method names are case-sensitive and parentheses are missing
C. driver object is not declared
D. No error, code will run fine

Solution

  1. Step 1: Check method name case sensitivity

    Java is case-sensitive; gettitle() should be getTitle().
  2. Step 2: Verify method call syntax

    getCurrentUrl is missing parentheses (), so it is not a valid method call.
  3. Final Answer:

    Method names are case-sensitive and parentheses are missing -> Option B
  4. Quick Check:

    Correct method names and parentheses needed [OK]
Hint: Check method names exactly and include () for calls [OK]
Common Mistakes:
  • Ignoring case sensitivity in method names
  • Forgetting parentheses on method calls
  • Assuming methods return void incorrectly
5. You want to verify that your Selenium test is on the correct page by checking both the page title and URL. Which of the following code snippets correctly asserts that the title is "Dashboard" and the URL contains "dashboard"?
hard
A. assertEquals(driver.getTitle(), "Dashboard"); assertTrue(driver.getCurrentUrl().contains("dashboard"));
B. assertTrue(driver.getTitle().equals("Dashboard")); assertEquals(driver.getCurrentUrl(), "dashboard");
C. assertEquals(driver.getTitle(), "dashboard"); assertTrue(driver.getCurrentUrl().contains("Dashboard"));
D. assertTrue(driver.getTitle().contains("Dashboard")); assertTrue(driver.getCurrentUrl().equals("dashboard"));

Solution

  1. Step 1: Verify title assertion

    assertEquals(driver.getTitle(), "Dashboard") correctly checks exact title match.
  2. Step 2: Verify URL assertion

    assertTrue(driver.getCurrentUrl().contains("dashboard")) correctly checks URL contains substring "dashboard".
  3. Final Answer:

    assertEquals(driver.getTitle(), "Dashboard"); assertTrue(driver.getCurrentUrl().contains("dashboard")); -> Option A
  4. Quick Check:

    Exact title and URL substring check = assertEquals(driver.getTitle(), "Dashboard"); assertTrue(driver.getCurrentUrl().contains("dashboard")); [OK]
Hint: Use assertEquals for exact title, assertTrue with contains for URL [OK]
Common Mistakes:
  • Using equals for URL when substring check needed
  • Mixing case sensitivity in title and URL checks
  • Using contains for title when exact match required
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard