0
0
Selenium Javatesting~10 mins

Navigation (back, forward, refresh) in Selenium Java - Test Execution Trace

Choose your learning style9 modes available
Test Overview

This test opens a website, navigates to another page, then uses browser navigation commands: back, forward, and refresh. It verifies the page titles after each navigation step to confirm correct behavior.

Test Code - JUnit with Selenium WebDriver
Selenium Java
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.junit.jupiter.api.*;
import static org.junit.jupiter.api.Assertions.*;

public class NavigationTest {
    static WebDriver driver;

    @BeforeAll
    public static void setup() {
        driver = new ChromeDriver();
    }

    @Test
    public void testNavigationBackForwardRefresh() {
        driver.get("https://example.com");
        String firstPageTitle = driver.getTitle();

        driver.navigate().to("https://example.com/more-info");
        String secondPageTitle = driver.getTitle();

        driver.navigate().back();
        String backPageTitle = driver.getTitle();
        assertEquals(firstPageTitle, backPageTitle, "Back navigation should return to first page");

        driver.navigate().forward();
        String forwardPageTitle = driver.getTitle();
        assertEquals(secondPageTitle, forwardPageTitle, "Forward navigation should go to second page");

        driver.navigate().refresh();
        String refreshedTitle = driver.getTitle();
        assertEquals(secondPageTitle, refreshedTitle, "Refresh should keep the same page title");
    }

    @AfterAll
    public static void teardown() {
        if (driver != null) {
            driver.quit();
        }
    }
}
Execution Trace - 7 Steps
StepActionSystem StateAssertionResult
1Test starts and Chrome browser opensBrowser window is open, no page loaded yet-PASS
2Navigate to https://example.comBrowser displays the example.com homepagePage title is captured as firstPageTitlePASS
3Navigate to https://example.com/more-infoBrowser displays the more-info pagePage title is captured as secondPageTitlePASS
4Navigate back to previous pageBrowser displays the example.com homepage againAssert page title equals firstPageTitlePASS
5Navigate forward to more-info pageBrowser displays the more-info page againAssert page title equals secondPageTitlePASS
6Refresh the current pageBrowser reloads the more-info pageAssert page title equals secondPageTitlePASS
7Test ends and browser closesBrowser window is closed-PASS
Failure Scenario
Failing Condition: Page title after navigation does not match expected title
Execution Trace Quiz - 3 Questions
Test your understanding
What does the test verify after calling driver.navigate().back()?
AThe page title matches the first page visited
BThe browser closes
CThe page URL changes to a new site
DThe page content is refreshed
Key Result
Always verify page titles or unique page elements after navigation commands to ensure the browser is on the expected page.