Package org.projectx.selenium

Source Code of org.projectx.selenium.WebDriverTest

package org.projectx.selenium;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;

public class WebDriverTest {
  private WebDriver driver;

  private final Map<String, Integer> failedMap = new HashMap<String, Integer>();

  @Before
  public void before() {

    driver = new FirefoxDriver();
  }

  @After
  public void after() {
    driver.close();
    System.out.println("++++++++++++++++++++++ SUMMARY ++++++++++++++++++++++");
    for (final Map.Entry<String, Integer> entry : failedMap.entrySet()) {
      System.out.println(entry.getKey() + ":" + entry.getValue());
    }
  }

  private static final String BASE_URL = "http://ci1.nydc1.projectx.com:8111";

  @Test
  public void testTC() throws Exception {

    driver.get(BASE_URL + "/login.html");
    final WebElement username = driver.findElement(By.id("username"));
    username.sendKeys("erez");
    final WebElement password = driver.findElement(By.id("password"));
    password.sendKeys("Tornado9");

    final WebElement login = driver.findElement(By.name("submitLogin"));
    login.click();

    for (int i = 1; i < 6; i++) {
      driver.get(BASE_URL
          + "/searchResults.html?query=status%3A%22Tests%20failed%22%20and%20configuration%3ATrunker%20-Cancelled&buildTypeId=bt10&byTime=true0&page="
          + i);

      final List<WebElement> testElements = driver.findElements(By.xpath("//a[@title='View build results']"));

      final List<Link> testLinks = LinkBuilder.createBuilder(testElements).getLinks(
          new ElementFilter() {

            @Override
            public boolean matches(final WebElement element) {
              return element.getText().startsWith("#");
            }
          });

      for (final Link testLink : testLinks) {
        getBuildStats(testLink.getText(), testLink.getHref());
      }
    }
  }

  private void getBuildStats(final String buildNum, final String uri) {
    driver.get(BASE_URL + uri);

    final WebElement buildStats = driver.findElement(By.id("buildDataDetails_buildResultsDiv"));

    final WebElement testResult = driver.findElement(By.id("failedTestsDl"));

    final List<WebElement> failedTests = testResult.findElements(By.tagName("strike"));

    for (final WebElement failedTest : failedTests) {
      final String key = failedTest.getText();
      System.out.println(buildNum + "|" + key + "|" + buildStats.getText());
      if (failedMap.containsKey(key)) {
        failedMap.put(key, failedMap.get(key).intValue() + 1);
      } else {
        failedMap.put(key, 1);
      }
    }

  }
}
TOP

Related Classes of org.projectx.selenium.WebDriverTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.