Example usage for org.openqa.selenium WebDriver navigate

List of usage examples for org.openqa.selenium WebDriver navigate

Introduction

In this page you can find the example usage for org.openqa.selenium WebDriver navigate.

Prototype

Navigation navigate();

Source Link

Document

An abstraction allowing the driver to access the browser's history and to navigate to a given URL.

Usage

From source file:org.xframium.page.keyWord.step.spi.KWSBrowser.java

License:Open Source License

@Override
public boolean _executeStep(Page pageObject, WebDriver webDriver, Map<String, Object> contextMap,
        Map<String, PageData> dataMap, Map<String, Page> pageMap, SuiteContainer sC,
        ExecutionContextTest executionContext) throws Exception {

    if (getName().toUpperCase().startsWith(SwitchType.SWITCH_TO_ELEMENT.name)) {
        Element currentElement = getElement(pageObject, contextMap, webDriver, dataMap,
                getName().split("\\.")[1], executionContext);
        if (currentElement == null) {
            log.warn("Attempting to switch to frame identified by " + getName() + " that does not exist");
            return false;
        }/*from   w w w. j  a  v  a2s .  c o m*/

        WebElement nativeElement = (WebElement) currentElement.getNative();
        if (nativeElement instanceof MorelandWebElement)
            nativeElement = ((MorelandWebElement) nativeElement).getWebElement();
        webDriver.switchTo().frame(nativeElement);
    } else {
        switch (SwitchType.valueOf(getName().toUpperCase())) {
        case SWITCH_BY_TITLE:
            return verifySwitchWindow(webDriver, getName(), getParameterValue(getParameterList().get(0),
                    contextMap, dataMap, executionContext.getxFID()) + "");
        case SWITCH_BY_URL:
            return verifySwitchWindow(webDriver, getName(), getParameterValue(getParameterList().get(0),
                    contextMap, dataMap, executionContext.getxFID()) + "");

        case SWITCH_NAMED_FRAME:
            webDriver.switchTo().frame(getParameterValue(getParameterList().get(0), contextMap, dataMap,
                    executionContext.getxFID()) + "");
            break;
        case SWITCH_INDEX:
            webDriver.switchTo().frame(Integer.parseInt(getParameterValue(getParameterList().get(0), contextMap,
                    dataMap, executionContext.getxFID()) + ""));
            break;
        case PARENT_FRAME:
            webDriver.switchTo().parentFrame();
            break;
        case DEFAULT_FRAME:
            webDriver.switchTo().defaultContent();
            break;
        case CLOSE_WINDOW:
            webDriver.close();
            break;
        case NAVIGATE:
            if (isTimed())
                ((DeviceWebDriver) webDriver).getCloud().getCloudActionProvider()
                        .startTimer((DeviceWebDriver) webDriver, null, executionContext);

            webDriver.get(getParameterValue(getParameterList().get(0), contextMap, dataMap,
                    executionContext.getxFID()) + "");
            break;

        case MAXIMIZE:
            webDriver.manage().window().maximize();
            break;
        case GET_TITLE:
            String pageTitle = webDriver.getTitle();
            if (getParameterList().size() > 1) {
                String compareTo = getParameterValue(getParameterList().get(0), contextMap, dataMap,
                        executionContext.getxFID()) + "";
                if (!compareTo.equals(pageTitle)) {
                    throw new ScriptException(
                            "Expected Title of [" + compareTo + "] but received [" + pageTitle + "]");
                }
            }

            if (!validateData(pageTitle))
                throw new ScriptException("GET_TITLE Expected a format of [" + getValidationType() + "("
                        + getValidation() + ") for [" + pageTitle + "]");

            if (getContext() != null && !getContext().trim().isEmpty())
                contextMap.put(getContext(), pageTitle);

            break;

        case GET_URL:
            String currentUrl = webDriver.getCurrentUrl();
            if (getParameterList().size() > 1) {
                String compareTo = getParameterValue(getParameterList().get(0), contextMap, dataMap,
                        executionContext.getxFID()) + "";
                if (!compareTo.equals(currentUrl)) {
                    throw new ScriptException(
                            "Expected Title of [" + compareTo + "] but received [" + currentUrl + "]");
                }
            }

            if (!validateData(currentUrl))
                throw new ScriptException("GET_URL Expected a format of [" + getValidationType() + "("
                        + getValidation() + ") for [" + currentUrl + "]");

            if (getContext() != null && !getContext().trim().isEmpty())
                contextMap.put(getContext(), currentUrl);

            break;

        case BACK:
            if (isTimed())
                ((DeviceWebDriver) webDriver).getCloud().getCloudActionProvider()
                        .startTimer((DeviceWebDriver) webDriver, null, executionContext);
            webDriver.navigate().back();
            break;
        case FORWARD:
            if (isTimed())
                ((DeviceWebDriver) webDriver).getCloud().getCloudActionProvider()
                        .startTimer((DeviceWebDriver) webDriver, null, executionContext);
            webDriver.navigate().forward();
            break;
        case REFRESH:
            webDriver.navigate().refresh();
            break;
        case SWITCH_WIN_INDEX:
            int i = 0;
            int index = 0;
            if (getParameterList().size() < 2)
                index = 0;
            else
                index = Integer.valueOf(getParameterValue(getParameterList().get(1), contextMap, dataMap,
                        executionContext.getxFID()) + "");

            for (String handle : webDriver.getWindowHandles()) {
                if (i == index) {
                    webDriver.switchTo().window(handle);
                    break;
                }
                i += 1;
            }
            break;
        case ADD_COOKIE:
            Cookie addCookie = new Cookie(
                    getParameterValue(getParameterList().get(0), contextMap, dataMap,
                            executionContext.getxFID()) + "",
                    getParameterValue(getParameterList().get(1), contextMap, dataMap,
                            executionContext.getxFID()) + "");
            if (webDriver instanceof RemoteWebDriver)
                ((RemoteWebDriver) webDriver).manage().addCookie(addCookie);
            else if (webDriver instanceof NativeDriverProvider
                    && ((NativeDriverProvider) webDriver).getNativeDriver() instanceof RemoteWebDriver) {
                ((RemoteWebDriver) ((NativeDriverProvider) webDriver).getNativeDriver()).manage()
                        .addCookie(addCookie);
            }

            break;

        case DELETE_COOKIE:

            if (getParameterList().size() < 1) {
                if (webDriver instanceof RemoteWebDriver)
                    ((RemoteWebDriver) webDriver).manage().deleteAllCookies();
                else if (webDriver instanceof NativeDriverProvider
                        && ((NativeDriverProvider) webDriver).getNativeDriver() instanceof RemoteWebDriver) {
                    ((RemoteWebDriver) ((NativeDriverProvider) webDriver).getNativeDriver()).manage()
                            .deleteAllCookies();
                }
            } else {
                if (webDriver instanceof RemoteWebDriver)
                    ((RemoteWebDriver) webDriver).manage()
                            .deleteCookieNamed(getParameterValue(getParameterList().get(0), contextMap, dataMap,
                                    executionContext.getxFID()) + "");
                else if (webDriver instanceof NativeDriverProvider
                        && ((NativeDriverProvider) webDriver).getNativeDriver() instanceof RemoteWebDriver) {
                    ((RemoteWebDriver) ((NativeDriverProvider) webDriver).getNativeDriver()).manage()
                            .deleteCookieNamed(getParameterValue(getParameterList().get(0), contextMap, dataMap,
                                    executionContext.getxFID()) + "");
                }
            }
            break;

        case GET_COOKIE:

            if (getParameterList().size() < 1) {
                Set<Cookie> cookieSet = null;
                if (webDriver instanceof RemoteWebDriver)
                    cookieSet = ((RemoteWebDriver) webDriver).manage().getCookies();
                else if (webDriver instanceof NativeDriverProvider
                        && ((NativeDriverProvider) webDriver).getNativeDriver() instanceof RemoteWebDriver) {
                    cookieSet = ((RemoteWebDriver) ((NativeDriverProvider) webDriver).getNativeDriver())
                            .manage().getCookies();
                }

                StringBuilder buffer = new StringBuilder();
                for (Cookie cookie : cookieSet) {
                    buffer.append(cookie.getName() + ":" + cookie.getValue()).append(";");
                    if (getContext() != null) {
                        contextMap.put(getContext() + "_" + cookie.getName(), cookie.getValue());
                    }
                }
                String cookieValue = buffer.toString();
                if (!validateData(cookieValue)) {
                    throw new IllegalStateException("Get cookie Expected a format of [" + getValidationType()
                            + "(" + getValidation() + ") for [" + cookieValue + "]");
                }

                if (getContext() != null) {
                    contextMap.put(getContext(), cookieValue);
                }

            } else {
                Cookie getCookie = null;
                if (webDriver instanceof RemoteWebDriver)
                    getCookie = ((RemoteWebDriver) webDriver).manage()
                            .getCookieNamed(getParameterValue(getParameterList().get(0), contextMap, dataMap,
                                    executionContext.getxFID()) + "");
                else if (webDriver instanceof NativeDriverProvider
                        && ((NativeDriverProvider) webDriver).getNativeDriver() instanceof RemoteWebDriver)
                    getCookie = ((RemoteWebDriver) ((NativeDriverProvider) webDriver).getNativeDriver())
                            .manage().getCookieNamed(getParameterValue(getParameterList().get(0), contextMap,
                                    dataMap, executionContext.getxFID()) + "");

                if (!validateData(getCookie.getValue())) {
                    throw new IllegalStateException("Get cookie Expected a format of [" + getValidationType()
                            + "(" + getValidation() + ") for [" + getCookie.getValue() + "]");
                }

                if (getContext() != null) {
                    contextMap.put(getContext(), getCookie.getValue());
                }
            }

            break;

        case PAGE_DOWN:
            int pageDown = 1;
            if (getParameter("Page Count") != null)
                pageDown = Integer.parseInt(getParameterValue(getParameter("Page Count"), contextMap, dataMap,
                        executionContext.getxFID()));

            if (webDriver instanceof JavascriptExecutor)
                ((JavascriptExecutor) webDriver)
                        .executeScript("window.scrollBy( 0, (window.innerHeight * " + pageDown + "));");
            break;

        case PAGE_UP:
            int pageUp = 1;
            if (getParameter("Page Count") != null)
                pageUp = Integer.parseInt(getParameterValue(getParameter("Page Count"), contextMap, dataMap,
                        executionContext.getxFID()));

            if (webDriver instanceof JavascriptExecutor)
                ((JavascriptExecutor) webDriver)
                        .executeScript("window.scrollBy( 0, -(window.innerHeight * " + pageUp + "));");
            break;

        case SCROLL_DOWN:
            int scrollDown = 250;
            if (getParameter("Scroll Size") != null)
                scrollDown = Integer.parseInt(getParameterValue(getParameter("Scroll Size"), contextMap,
                        dataMap, executionContext.getxFID()));

            if (webDriver instanceof JavascriptExecutor)
                ((JavascriptExecutor) webDriver).executeScript("window.scrollBy( 0, " + scrollDown + ");");
            break;

        case SCROLL_UP:
            int scrollUp = 250;
            if (getParameter("Scroll Size") != null)
                scrollUp = Integer.parseInt(getParameterValue(getParameter("Scroll Size"), contextMap, dataMap,
                        executionContext.getxFID()));

            if (webDriver instanceof JavascriptExecutor)
                ((JavascriptExecutor) webDriver).executeScript("window.scrollBy( 0, -" + scrollUp + ");");
            break;

        default:

            throw new ScriptConfigurationException("Unknown Window Operation Type " + getName());
        }
    }

    return true;
}

From source file:org.xframium.page.keyWord.step.spi.KWSNavigate.java

License:Open Source License

@Override
public boolean _executeStep(Page pageObject, WebDriver webDriver, Map<String, Object> contextMap,
        Map<String, PageData> dataMap, Map<String, Page> pageMap) {
    Boolean success = false;/*from   w w w  .  j ava2 s  .com*/
    if (pageObject == null)
        throw new IllegalStateException("There was no Page Object defined");

    if (getParameterList().size() < 1)
        throw new IllegalArgumentException("Please provide the type of navigation as the first parameter");

    try {
        String NavigateType = getParameterValue(getParameterList().get(0), contextMap, dataMap) + "";

        switch (NavigationType.valueOf(NavigateType)) {
        case BACK:
            webDriver.navigate().back();
            success = true;
            break;
        case FORWARD:
            webDriver.navigate().forward();
            success = true;
            break;
        case REFRESH:
            webDriver.navigate().refresh();
            success = true;
            break;
        default:
            throw new IllegalArgumentException(
                    "Parameter NavigationType should be FORWARD|BACK|REFRESH|MAXIMIZE");
        }
    } catch (Exception c) {
        throw new IllegalStateException(c);
    }
    return success;
}

From source file:org.xwiki.test.ui.po.ViewPage.java

License:Open Source License

/**
 * Waits until the page has the passed content by refreshing the page
 * /*from ww w  .j  a  v  a2 s . com*/
 * @param expectedValue the content value to wait for (in regex format)
 * @since 4.0M1
 */
public void waitUntilContent(final String expectedValue) {
    getUtil().waitUntilCondition(new ExpectedCondition<Boolean>() {
        private Pattern pattern = Pattern.compile(expectedValue, Pattern.DOTALL);

        @Override
        public Boolean apply(WebDriver driver) {
            driver.navigate().refresh();
            return Boolean.valueOf(pattern.matcher(getContent()).matches());
        }
    });
}

From source file:Practice.Tool.java

License:Open Source License

public static WebElement waitForNavigateBack(WebDriver driver, final By by, int timeOutInSeconds) {
    WebElement element;//from ww  w .  j a  va  2s  .c  o m
    try {
        driver.manage().timeouts().implicitlyWait(0, TimeUnit.SECONDS); //nullify implicitlyWait() 
        new WebDriverWait(driver, timeOutInSeconds) {
        }.until(new ExpectedCondition<Boolean>() {

            @Override
            public Boolean apply(WebDriver driverObject) {
                driverObject.navigate().back(); // Waiting to go back to the previous Page
                return isElementPresentAndDisplay(driverObject, by);
            }
        });
        element = driver.findElement(by);
        driver.manage().timeouts().implicitlyWait(DEFAULT_WAIT_4_PAGE, TimeUnit.SECONDS); //reset implicitlyWait
        return element; //return the element
    } catch (Exception e) {
        e.printStackTrace();
    }
    return null;
}

From source file:ru.stqa.selenium.wrapper.EventFiringWrapperTest.java

License:Apache License

@Test
public void canFireEventForRefresh() {
    final WebDriver mockedDriver = mock(WebDriver.class);
    final WebDriver.Navigation mockedNavigation = mock(WebDriver.Navigation.class);
    final WebDriverListener mockedListener = mock(WebDriverListener.class);
    when(mockedDriver.navigate()).thenReturn(mockedNavigation);

    EventFiringWrapper wrapper = new EventFiringWrapper(mockedDriver);
    wrapper.addListener(mockedListener);
    final WebDriver driver = wrapper.getDriver();

    driver.navigate().refresh();/*  ww w.j a va  2s.  com*/

    verify(mockedNavigation, times(1)).refresh();
    verify(mockedListener, times(1)).beforeRefresh(mockedNavigation);
    verify(mockedListener, times(1)).afterRefresh(mockedNavigation);
}

From source file:scripts.LinkedInEmployeeCounter.java

/**
 * @param args the command line arguments
 *//*  ww  w.j  av  a 2 s .  com*/
public static void main(String[] args) throws Exception {
    String url;
    WebDriver driver = new FirefoxDriver();
    JavascriptExecutor js = (JavascriptExecutor) driver;
    Connection con = connectToDatabase(2);
    String num;
    driver.get("https://www.linkedin.com/uas/login");
    waitFor(driver, By.id("session_key-login"), "first4240@gmail.com");
    waitFor(driver, By.id("session_password-login"), "hashthepass");
    waitFor(driver, By.id("btn-primary"), true);
    System.out.println("Retrieving URL data....");
    ResultSet rs = con
            .prepareStatement("SELECT LINKEDIN_URL FROM radar_access_startupraw WHERE LINKEDIN_URL  != ''")
            .executeQuery();
    System.out.println("Retrieved data!");
    waitFor(driver, By.id("sharebox-container"));
    takeScreenshot("start", true);
    int cnt = 0;
    int c = 0;

    while (rs.next()) {
        url = rs.getString("LINKEDIN_URL");
        System.out.println(url);
        driver.navigate().to(url);
        try {
            waitFor(driver, By.className("density"), 10);
        } catch (TimeoutException te) {
            takeScreenshot("screen" + cnt);
            cnt++;
            continue;

        }
        while (driver.getTitle().contains("403: ")) {
            Thread.sleep(60000);
            driver.navigate().to(url);
            Thread.sleep(5000);
        }
        num = (String) js.executeScript("return document.getElementsByClassName('density')[0].textContent");
        if (!num.equals("")) {
            con.prepareStatement("UPDATE radar_access_startupraw SET num_employees = \"" + num
                    + "\" WHERE LINKEDIN_URL = \"" + url + "\"").executeUpdate();
        } else {
            con.prepareStatement(
                    "UPDATE radar_access_startupraw SET num_employees = \"DNE\" WHERE LINKEDIN_URL = \"" + url
                            + "\"")
                    .executeUpdate();
        }
        System.out.println(num);
        if (c == 4000) {
            message("Finished");
        }
        c++;
    }

}

From source file:selenium.test.SeleniumTest.java

public static void main(String[] args) {

    extent = new ExtentReports("C:\\Users\\Crazzy King\\workspace\\Extent\\Reports\\Reports.html", true);
    logger = extent.startTest("VerifyBlogTitle");

    System.setProperty("webdriver.gecko.driver", "C:\\Selenium\\geckodriver.exe");
    WebDriver driver = new FirefoxDriver();

    ExtentTest test = extent.startTest("My First Test", "Sample description");
    test.log(LogStatus.INFO, "Started");
    driver.navigate().to("http:/www.doc.lk");

    logger.log(LogStatus.INFO, "Application is up and running");

    driver.findElement(By.cssSelector(//from  www .j a  va 2s.c om
            "#advertModel > div.modal-dialog > div.modal-content > div.modal-header > button.close")).click();
    logger.log(LogStatus.INFO, "close ad");
    driver.findElement(By.name("doctor")).clear();
    logger.log(LogStatus.INFO, "Search doc");
    driver.findElement(By.name("doctor")).sendKeys("sunil");
    logger.log(LogStatus.INFO, "Type Sunil");
    driver.findElement(By.xpath("//button[@type='submit']")).click();
    logger.log(LogStatus.INFO, "Submit");

    extent.endTest(test);

    extent.flush();

}

From source file:seleniumStudy.SeleniumTest1.java

public static void main(String[] args) throws InterruptedException, IOException {
    System.setProperty("webdriver.ie.driver", "D:\\IEDriverServer.exe");
    WebDriver driver = new InternetExplorerDriver();
    Timeouts timeout = driver.manage().timeouts();

    Navigation navigation = driver.navigate();
    navigation.to("http://pond.morningstar.com/index.php?c=China&cn=China");
    //        timeout.pageLoadTimeout(30, java.util.concurrent.TimeUnit.SECONDS);
    //        timeout.pageLoadTimeout(30, java.util.concurrent.TimeUnit.SECONDS);

    WebDriverWait wait = new WebDriverWait(driver, 20);

    WebElement sign = driver.findElement(By.linkText("Sign In"));
    sign.click();/*from  w  w  w. j  ava 2s. co m*/
    WebElement username = driver.findElement(By.name("log"));
    username.sendKeys("asun");
    WebElement pwd = driver.findElement(By.name("pwd"));
    pwd.sendKeys("Kwan_9123");
    WebElement login = driver.findElement(By.id("go_submit"));
    //        WebElement login = driver.findElement(By.cssSelector("css=#go_submit"));    
    login.click();
    wait.until(new ExpectedCondition<WebElement>() {
        @Override
        public WebElement apply(WebDriver d) {
            return d.findElement(By.name("input"));
        }
    }).sendKeys("adrian sun");

    WebElement go = driver.findElement(By.id("go"));
    go.click();

    Runtime runTime = Runtime.getRuntime();
    runTime.exec("tskill iexplore");
    runTime.exec("tskill IEDriverServer");
    //        driver.close();
}

From source file:taurustest.TestUtilities.java

License:Open Source License

public static void clickShare(WebDriver driver, int value) {
    menuButtonClick(driver);/*from w  w  w  .j  a  va 2  s.c  om*/
    waitClick(SHARE_BUTTON, driver, value);
    driver.navigate().back();
}

From source file:taurustest.TestUtilities.java

License:Open Source License

public static void clickAbout(WebDriver driver, int value) {
    menuButtonClick(driver);//from w  w  w.j  a v a 2 s .  c o m
    waitClick(ABOUT, driver, value);
    driver.navigate().back();
}