Example usage for org.openqa.selenium WebDriver quit

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

Introduction

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

Prototype

void quit();

Source Link

Document

Quits this driver, closing every associated window.

Usage

From source file:marmotinni.MarmotinniRunner.java

License:Apache License

public static void main(String[] args) {
    ArrayList<String> scripts = new ArrayList<String>();
    Map<String, String> argsMap = new HashMap<String, String>();
    for (String arg : args) {
        String[] keyValuePair = arg.split("=");
        if (keyValuePair[0].equals("script"))
            scripts.add(keyValuePair[1]);
        else// w w  w .  j a  va 2s  .c  o  m
            argsMap.put(keyValuePair[0], keyValuePair[1]);
    }
    final String showScriptsArg = argsMap.get("showScripts");
    TestStep.showScripts = showScriptsArg != null && showScriptsArg.equalsIgnoreCase("true");
    final String showStepsArg = argsMap.get("showSteps");
    TestCase.showSteps = showStepsArg != null && showStepsArg.equalsIgnoreCase("true");

    final String url = argsMap.get("url");
    System.out.println(url);

    final String browser = argsMap.get("browser");
    WebDriver driver;
    if (browser != null && browser.equalsIgnoreCase("chrome"))
        driver = new ChromeDriver();
    else
        driver = new FirefoxDriver();

    driver.get(url);

    int exitCode = 0;
    try {
        MarmotinniRunner mr = new MarmotinniRunner();
        final String verboseXMLParsingArg = argsMap.get("verboseXMLParsing");
        mr.verboseXMLParsing = verboseXMLParsingArg != null && verboseXMLParsingArg.equalsIgnoreCase("true");
        int n = scripts.size();
        for (int i = 0; i < n; i++) {
            if (!mr.runTest(driver, scripts.get(i))) {
                System.out.println("script failed");
                exitCode = 1;
            }
        }
    } catch (Exception e) {
        System.out.println(e.getMessage());
        exitCode = 1;
    } finally {
        driver.quit();
    }
    System.exit(exitCode);
}

From source file:melihovv.AvitoNewMessageChecker.AvitoNewMessageChecker.java

License:Open Source License

public static void main(String[] args) {
    final Logger log = LogManager.getLogger(AvitoNewMessageChecker.class.getName());

    if (args.length != 1) {
        log.fatal("?    config.yaml");
    }/* w w w.j  a  va 2 s. c  o  m*/

    YamlReader reader = null;
    try {
        reader = new YamlReader(new FileReader(args[0]));
    } catch (FileNotFoundException e) {
        log.fatal("?   config.yaml");
        log.fatal(e.getMessage());
        System.exit(1);
    }

    Map config = null;
    try {
        Object temp = reader.read();
        config = (Map) temp;
    } catch (YamlException e) {
        log.fatal("  ??? config.yaml");
        log.fatal(e.getMessage());
        System.exit(1);
    }

    final List<String> keys = Arrays.asList("avito_login", "avito_pass", "smtp_host", "smtp_port", "smtp_login",
            "smtp_pass", "email_from", "email_to");

    for (final String key : keys) {
        if (!config.containsKey(key)) {
            String values = String.join(", ", keys);
            log.fatal("-    : " + values);
            System.exit(1);
        }
    }

    try {
        final WebDriver driver = new FirefoxDriver();
        final String baseUrl = "https://www.avito.ru/";
        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);

        driver.get(baseUrl + "profile/login");
        driver.findElement(By.name("login")).clear();
        driver.findElement(By.name("login")).sendKeys(config.get("avito_login").toString());
        driver.findElement(By.name("password")).clear();
        driver.findElement(By.name("password")).sendKeys(config.get("avito_pass").toString());
        driver.findElement(By.xpath("//button[@type='submit']")).click();
        driver.findElement(By.cssSelector("#sidebar-nav-messenger > " + "a.link.js-sidebar-menu-link")).click();

        final boolean newMessagesPresent = isElementPresent(driver, By.className("is-design-new"));
        driver.get(baseUrl + "profile/exit");
        driver.quit();

        if (newMessagesPresent) {
            log.info("?  ??");
            sendNotification(config.get("smtp_host").toString(), config.get("smtp_port").toString(),
                    config.get("smtp_login").toString(), config.get("smtp_pass").toString(),
                    config.get("email_from").toString(), config.get("email_to").toString(),
                    "New message on avito.ru", "You have unread messages on avito.ru");
        } else {
            log.info("? ? ");
        }
    } catch (Exception e) {
        log.error("-   ");
        log.error(e.getMessage());
        log.error(Arrays.toString(e.getStackTrace()));
        System.exit(1);
    }
}

From source file:newMember.newTrial.java

License:Open Source License

public static void main(String[] args) throws IOException {
    //setProperty(a,b): Ensure b is set to path of gecko driver
    //ClassLoader loader = ClassLoader.getSystemClassLoader();
    //URL path = loader.getResource("geckodriver.exe");
    ClassLoader cl = Thread.currentThread().getContextClassLoader();
    URL url = cl.getResource("geckodriver/geckodriver/geckodriver.exe");
    System.setProperty("webdriver.chrome.driver", url.getPath());

    //System.setProperty("webdriver.gecko.driver", "C:/Users/Sherlock Mind Palace/workspace/TrialRun/geckodriver/geckodriver.exe");
    WebDriver driver = new FirefoxDriver();
    DesiredCapabilities capabilities = DesiredCapabilities.firefox();
    capabilities.setCapability("marionette", true);

    //Go to testing site
    driver.get("https://apptimize.com");

    //Click on Sign Up button
    driver.findElement(By.xpath("//a[@href='/30-day-trial']")).click();

    //Search for id fname for 10 seconds before giving up
    WebElement fname = (new WebDriverWait(driver, 10))
            .until(ExpectedConditions.presenceOfElementLocated(By.id("fname")));
    fname.sendKeys(member.fName);/* ww w.  ja v a2 s.  c om*/

    WebElement lname = driver.findElement(By.id("lname"));
    lname.sendKeys(member.lName);

    //Fill in email field 
    WebElement email = driver.findElement(By.id("email"));
    email.sendKeys(member.eMail);

    //Fill in Company name
    WebElement cname = driver.findElement(By.id("company"));
    cname.sendKeys("Apptimize Candidate");

    //Fill in Phone and Job field
    WebElement phone = driver.findElement(By.id("phone"));
    phone.sendKeys(member.pNumber);

    WebElement jtitle = driver.findElement(By.id("jobtitle"));
    jtitle.sendKeys(member.jTitle);

    //Create password
    WebElement password = driver.findElement(By.id("password"));
    password.sendKeys(member.pWord);

    //Select No to software radio question
    WebElement rNo = driver.findElement(By.xpath("//input[@name='purchased' and @value='No']"));
    rNo.click();

    //Select End User License Agreement Checkbox
    WebElement read = driver.findElement(By.id("eula"));
    read.click();

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

    System.out.println("You successfully signed up for trial account.");

    driver.quit();

}

From source file:ObjectTestFactory.ExitTest.java

public Boolean EndTest(WebDriver driver) throws Exception {
    Boolean result = true;//  w w  w  .ja v a 2 s .c om
    try {
        driver.quit();
    } catch (Exception ex) {
        result = false;
    }
    return result;
}

From source file:org.alfresco.po.share.FactorySharePageTest.java

License:Open Source License

@Test(groups = { "unit" })
public void resolveUrls() {
    WebDriver driver = new HtmlUnitDriver();
    try {/* w  ww. j  a  va2  s  .  co  m*/
        long start = System.currentTimeMillis();
        HtmlPage page = resolvePage(dashboard, "dashboard", driver);
        Assert.assertTrue(page instanceof DashBoardPage);

        page = resolvePage(documentDetailsPage, "documentDetailsPage", driver);
        Assert.assertTrue(page instanceof DocumentDetailsPage);

        page = resolvePage(documentLibrary, "documentLibrary", driver);
        Assert.assertTrue(page instanceof DocumentLibraryPage);

        page = resolvePage(documentLibrary2, "documentLibrary2", driver);
        Assert.assertTrue(page instanceof DocumentLibraryPage);

        page = resolvePage(siteDashboard, "siteDashboard", driver);
        Assert.assertTrue(page instanceof SiteDashboardPage);

        page = resolvePage(myTasks, "myTasks", driver);
        Assert.assertTrue(page instanceof MyTasksPage);

        page = resolvePage(peopleFinder, "peopleFinder", driver);
        Assert.assertTrue(page instanceof PeopleFinderPage);

        page = resolvePage(myProfile, "myProfile", driver);
        Assert.assertTrue(page instanceof MyProfilePage);

        page = resolvePage(siteFinder, "siteFinder", driver);
        Assert.assertTrue(page instanceof SiteFinderPage);

        page = resolvePage(wiki, "wiki", driver);
        Assert.assertTrue(page instanceof WikiPage);

        page = resolvePage(wikiList, "wikiList", driver);
        Assert.assertTrue(page instanceof WikiPageList);

        page = resolvePage(changePaswword, "changePaswword", driver);
        Assert.assertTrue(page instanceof ChangePasswordPage);

        page = resolvePage(repository, "repository", driver);
        Assert.assertTrue(page instanceof RepositoryPage);

        page = resolvePage(repositoryWithFolder, "repository", driver);
        Assert.assertTrue(page instanceof RepositoryPage);

        page = resolvePage(managePermission, "managePermission", driver);
        Assert.assertTrue(page instanceof ManagePermissionsPage);

        page = resolvePage(createPlainText, "createPlainText", driver);
        Assert.assertTrue(page instanceof CreatePlainTextContentPage);

        page = resolvePage(createHtmlText, "createHtmlText", driver);
        Assert.assertTrue(page instanceof CreateHtmlContentPage);

        page = resolvePage(createXmlText, "createXmlText", driver);
        Assert.assertTrue(page instanceof CreatePlainTextContentPage);

        page = resolvePage(inlineEdit, "inlineEdit", driver);
        Assert.assertTrue(page instanceof InlineEditPage);

        page = resolvePage(editDocumentProperties, "editDocumentProperties", driver);
        Assert.assertTrue(page instanceof EditDocumentPropertiesPage);

        page = resolvePage(siteMembers, "siteMembers", driver);
        Assert.assertTrue(page instanceof org.alfresco.po.share.site.SiteMembersPage);

        page = resolvePage(invite, "invite", driver);
        Assert.assertTrue(page instanceof InviteMembersPage);

        page = resolvePage(newuser, "newuser", driver);
        Assert.assertTrue(page instanceof NewUserPage);

        page = resolvePage(customizeSite, "customizeSite", driver);
        Assert.assertTrue(page instanceof CustomizeSitePage);

        page = resolvePage(customizeSiteDashboard, "customizeSiteDashboard", driver);
        Assert.assertTrue(page instanceof CustomiseSiteDashboardPage);

        page = resolvePage(foldersDetailsPage, "foldersDetailsPage", driver);
        Assert.assertTrue(page instanceof FolderDetailsPage);

        page = resolvePage(myFilesPage, "myFilesPage", driver);
        Assert.assertTrue(page instanceof MyFilesPage);

        page = resolvePage(sharedFilesPage, "sharedFilesPage", driver);
        Assert.assertTrue(page instanceof SharedFilesPage);

        page = resolvePage(links, "links", driver);
        Assert.assertTrue(page instanceof LinksPage);

        page = resolvePage(pendingInvites, "pending-invites", driver);
        Assert.assertTrue(page instanceof PendingInvitesPage);

        page = resolvePage(followingPage, "following", driver);
        Assert.assertTrue(page instanceof FollowingPage);

        page = resolvePage(followersPage, "followers", driver);
        Assert.assertTrue(page instanceof FollowersPage);

        //---------------search ----------------
        page = resolvePage(advanceSearch, "advanceSearch", driver);
        Assert.assertTrue(page instanceof AdvanceSearchPage);

        page = resolvePage(advanceContentSearch, "advContent-search", driver);
        Assert.assertTrue(page instanceof AdvanceSearchContentPage);

        page = resolvePage(advanceFolderSearch, "advanceFolderSearch", driver);
        Assert.assertTrue(page instanceof AdvanceSearchFolderPage);

        page = resolvePage(searchResult, "searchResult", driver);
        Assert.assertTrue(page instanceof AllSitesResultsPage);

        page = resolvePage(searchResultAllSites, "searchResultAll", driver);
        Assert.assertTrue(page instanceof AllSitesResultsPage);

        page = resolvePage(searchResultRepository, "searchResultRepo", driver);
        Assert.assertTrue(page instanceof RepositoryResultsPage);

        page = resolvePage(siteSarchResult, "siteSearchResult", driver);
        Assert.assertTrue(page instanceof SiteResultsPage);

        page = resolvePage(userSearchPage, "userSearchPage", driver);
        Assert.assertTrue(page instanceof UserSearchPage);

        page = resolvePage(startWorkFlowPage, "start-workflow", driver);
        Assert.assertTrue(page instanceof StartWorkFlowPage);

        page = resolvePage(workFlowDetailsPage, "workflow-details", driver);
        Assert.assertTrue(page instanceof WorkFlowDetailsPage);

        page = resolvePage(myWorkFlowsPage, "my-workflows", driver);
        Assert.assertTrue(page instanceof MyWorkFlowsPage);

        page = resolvePage(editTasks, "edit-task", driver);
        Assert.assertTrue(page instanceof EditTaskPage);

        page = resolvePage(taskDetailsPage, "task-edit", driver);
        Assert.assertTrue(page instanceof MyWorkFlowsPage);

        page = resolvePage(editTaskPage, "task-details", driver);
        Assert.assertTrue(page instanceof MyWorkFlowsPage);

        page = resolvePage(languageSettingsPage, "change-locale", driver);
        Assert.assertTrue(page instanceof LanguageSettingsPage);

        page = resolvePage(groupsPage, "groups", driver);
        Assert.assertTrue(page instanceof GroupsPage);

        page = resolvePage(siteGroupsPage, "site-groups", driver);
        Assert.assertTrue(page instanceof SiteGroupsPage);

        page = resolvePage(addGroupsPage, "add-groups", driver);
        Assert.assertTrue(page instanceof AddGroupsPage);

        page = resolvePage(createNewTopicPage, "discussions-createtopic", driver);
        Assert.assertTrue(page instanceof CreateNewTopicPage);

        page = resolvePage(topicDetailsPage, "discussions-topicview", driver);
        Assert.assertTrue(page instanceof TopicDetailsPage);

        page = resolvePage(discussionsPage, "discussions-topiclist", driver);
        Assert.assertTrue(page instanceof DiscussionsPage);

        page = resolvePage(customiseUserDashboardPage, "customise-user-dashboard", driver);
        Assert.assertTrue(page instanceof CustomiseUserDashboardPage);

        page = resolvePage(nodeBrowserPage, "node-browser", driver);
        Assert.assertTrue(page instanceof NodeBrowserPage);

        //---------------admin console ----------------
        page = resolvePage(adminConsolePage, "admin-console", driver);
        Assert.assertTrue(page instanceof AdminConsolePage);

        page = resolvePage(manageSitesPage, "manage-sites", driver);
        Assert.assertTrue(page instanceof ManageSitesPage);

        page = resolvePage(notificationPage, "user-notifications", driver);
        Assert.assertTrue(page instanceof NotificationPage);

        page = resolvePage(userSitesPage, "user-sites", driver);
        Assert.assertTrue(page instanceof UserSitesPage);

        //---------------faceted search ----------------
        page = resolvePage(facetedSearchPage, "faceted-search", driver);
        Assert.assertTrue(page instanceof FacetedSearchPage);

        //---------------User Content Page ----------------
        page = resolvePage(userContentPage, "user-content", driver);
        Assert.assertTrue(page instanceof UserContentPage);
        //---------------Alfresco Admin Pages -------------
        page = resolvePage("http://localhost:8080/alfresco/service/index", "index", driver);
        Assert.assertTrue(page instanceof WebScriptsPage);

        page = resolvePage("http://localhost:8080/alfresco/s/enterprise/admin/admin-tenantconsole",
                "admin-tenantconsole", driver);
        Assert.assertTrue(page instanceof TenantAdminConsolePage);

        page = resolvePage("http://localhost:8080/alfresco/s/enterprise/admin/admin-repoconsole",
                "admin-repoconsole", driver);
        Assert.assertTrue(page instanceof RepositoryAdminConsolePage);

        page = resolvePage("http://localhost:8080/share/xxyyzz", "UnknownSharePage", driver).render();
        Assert.assertTrue(page instanceof SharePage);
        Assert.assertTrue(page instanceof UnknownSharePage);

        page = resolvePage(modelsPage, "ModelsPage", driver);
        Assert.assertTrue(page instanceof ModelsPage);

        ;

        long duration = System.currentTimeMillis() - start;
        logger.info("Total duration of test in milliseconds: " + duration);
    } finally {
        driver.quit();
    }
}

From source file:org.alfresco.test.ResourceTeardown.java

License:Open Source License

/**
 * @see org.testng.IReporter#generateReport(java.util.List, java.util.List, java.lang.String)
 *//*from  w ww  . j  a v  a2s .  co  m*/
@Override
public void generateReport(List<XmlSuite> xmlSuites, List<ISuite> suites, String outputDirectory) {
    // quit web drone if still open
    WebDriver webDriver = Utils.getWebDriver();
    if (webDriver != null) {
        webDriver.quit();
    }
}

From source file:org.apache.flex.html.textButton.TextButton.java

License:Apache License

public static void main(String[] args) {
    WebDriver driver = new FirefoxDriver();

    Map<String, String> argsMap = new HashMap<String, String>();
    for (String arg : args) {
        String[] keyValuePair = arg.split("=");
        argsMap.put(keyValuePair[0], keyValuePair[1]);
    }//  ww  w . j a  v a 2  s . c o m

    final String url = argsMap.get("url");

    driver.get(url);

    WebElement element = driver.findElement(By.tagName("button"));

    try {
        // there is a button in the DOM
        if (element != null) {
            // the button x position is 100
            if (element.getCssValue("left").equals("100px"))
                System.out.println(SUCCESS);
            else
                System.out.println(FAILED);
        } else {
            System.out.println(FAILED);
        }
    } catch (Exception e) {
        System.out.println(e.getMessage());
    } finally {
        driver.quit();
    }
}

From source file:org.apache.nutch.protocol.s2jh.HttpResponse.java

License:Apache License

/**
 * Most page can be fetched and parsed efficiently by Htmlunit, 
 * But some sites (such as ) using some special javascript tech that can't be processed by Htmlunit correctly,
 * We use Selenium WebDriver even lower process speed.
 * @param url/*from w ww. j av  a 2s. c  om*/
 * @throws Exception
 */
private void readPlainContentByWebDriver(URL url) throws Exception {

    String urlStr = url.toString();
    Http.LOG.debug("WebDriver fetching: " + url);
    String html = null;
    boolean ok = true;

    WebDriver driver = null;
    try {
        driver = new FirefoxDriver();
        driver.get(url.toString());

        int i = 0;
        while (i++ < MAX_AJAX_WAIT_SECONDS) {
            html = driver.getPageSource().trim();
            ok = isParseDataFetchLoaded(urlStr, html);
            if (ok) {
                break;
            }
            //Trigger scroll event to get ajax content                
            ((JavascriptExecutor) driver).executeScript("scroll(0," + (i * 500) + ");");
            Http.LOG.info("Sleep " + i + " seconds to wait WebDriver execution...");
            Thread.sleep(1000);
        }
    } finally {
        //Ensure driver quit
        if (driver != null) {
            driver.quit();
        }
    }

    if (ok) {
        Http.LOG.debug("Success parse page by WebDriver  for: {}", url);
        this.code = 200;
        content = html.getBytes();
    } else {
        Http.LOG.warn("Failure WebDriver parse page for: {}", url);
        Http.LOG.warn(
                "WebDriver Fetch Failure URL: " + url + ", CharsetName: " + charset + " , Page HTML=\n" + html);
    }
}

From source file:org.apache.nutch.protocol.selenium.HttpWebClient.java

License:Apache License

public static void cleanUpDriver(WebDriver driver) {
    if (driver != null) {
        try {/*from  w  w w  .  j  a  va2 s.  com*/
            // driver.close();
            driver.quit();
            TemporaryFilesystem.getDefaultTmpFS().deleteTemporaryFiles();
        } catch (Exception e) {
            LOG.error(e.toString());
            // throw new RuntimeException(e);
        }
    }
}

From source file:org.apache.nutch.protocol.webdriver.HttpWebClient.java

License:Apache License

public static String getHtmlPage(String url, Configuration conf) {
    WebDriver driver = null;

    try {/*from  w w w.j  a va  2  s .  co  m*/
        FirefoxProfile profile = new FirefoxProfile();
        String proxyHost = conf.get("http.proxy.host");
        int proxyPort = conf.getInt("http.proxy.port", 8080);
        if (proxyHost != null && proxyHost.length() > 0) {
            profile.setPreference("network.proxy.type", 1);
            profile.setPreference("network.proxy.http", proxyHost);
            profile.setPreference("network.proxy.http_port", proxyPort);
        }

        DesiredCapabilities capabilities = DesiredCapabilities.firefox();
        capabilities.setCapability("marionette", true);
        capabilities.setCapability("firefox_profile", profile);

        int driverServicePort = conf.getInt("webdriver.service.port", 4444);
        DriverService ds = NutchDriverService.createDriverService(driverServicePort);
        driver = new NutchFirefoxDriver(ds, capabilities);

        driver.get(url);
        // Wait for the page to load, timeout after 3 seconds
        new WebDriverWait(driver, 3);

        // Extract body
        String innerHtml = driver.findElement(By.tagName("body")).getAttribute("innerHTML");
        return innerHtml;
        // I'm sure this catch statement is a code smell ; borrowing it from
        // lib-htmlunit
    } catch (Exception e) {
        throw new RuntimeException(e);
    } finally {
        if (driver != null)
            try {
                driver.quit();
            } catch (Exception e) {
                throw new RuntimeException(e);
            }
    }
}