Example usage for org.openqa.selenium By className

List of usage examples for org.openqa.selenium By className

Introduction

In this page you can find the example usage for org.openqa.selenium By className.

Prototype

public static By className(String className) 

Source Link

Document

Find elements based on the value of the "class" attribute.

Usage

From source file:com.dhenton9000.selenium.generic.GenericAutomationRepository.java

/**
 * generate the By selector/*  w w w  .  j  a  v  a2s  .com*/
 *
 * @param selectorChoice the desired selector, eg by css Selector
 * @param selectorValue the string to search for
 * @return the By element
 */
public static By generateSelectorBy(SELECTOR_CHOICE selectorChoice, String selectorValue) {
    By selectorBy = null;

    switch (selectorChoice) {
    case id:
        selectorBy = By.id(selectorValue);
        break;
    case name:
        selectorBy = By.name(selectorValue);
        break;
    case className:
        selectorBy = By.className(selectorValue);
        break;
    case linkText:
        selectorBy = By.linkText(selectorValue);
        break;
    case xpath:
        selectorBy = By.xpath(selectorValue);
        break;
    case tagName:
        selectorBy = By.tagName(selectorValue);
        break;
    case cssSelector:
        selectorBy = By.cssSelector(selectorValue);
        break;
    case partialLinkText:
        selectorBy = By.partialLinkText(selectorValue);
        break;
    case wicketPathMatch:
        selectorBy = WicketBy.wicketPathMatch(selectorValue);
        break;
    case wicketPathContains:
        selectorBy = WicketBy.wicketPathContains(selectorValue);
        break;
    default:
        throw new AssertionError("unable to match selector " + selectorChoice.name());
    }

    return selectorBy;
}

From source file:com.dukescript.api.selenium.FindsByTest.java

License:Open Source License

@Test
public void findElementByClassName() {
    WebElement element = driver.findElement(By.className("css-selector"));
    Assert.assertEquals("blabla", element.getText());
}

From source file:com.dukescript.api.selenium.FindsByTest.java

License:Open Source License

@Test
public void Element_findElementByClassName() {
    WebElement parent = driver.findElement(By.className("parent"));
    WebElement child = parent.findElement(By.className("child"));
    Assert.assertEquals("blubla", child.getText());
}

From source file:com.dukescript.api.selenium.FindsByTest.java

License:Open Source License

@Test
public void findElementsByClassName() {
    List<WebElement> elements = driver.findElements(By.className("css-selector"));
    Assert.assertEquals(1, elements.size());
    elements = driver.findElements(By.className("some"));
    Assert.assertEquals(3, elements.size());
}

From source file:com.dukescript.api.selenium.FindsByTest.java

License:Open Source License

@Test
public void Element_findElementsByClassName() {
    WebElement parent = driver.findElement(By.className("parent"));
    List<WebElement> elements = parent.findElements(By.className("child"));
    Assert.assertEquals(2, elements.size());
    elements = parent.findElements(By.className("some"));
    Assert.assertEquals(2, elements.size());
}

From source file:com.ecfeed.core.runner.java.SeleniumTestMethodInvoker.java

License:Open Source License

private WebElement findWebElementBy(String findByType, String findByValue) {

    checkWebDriver();//  w ww .  jav  a 2 s  .c o  m

    if (NodePropertyDefFindByType.isId(findByType)) {
        return fDriver.findElement(By.id(findByValue));
    }

    if (NodePropertyDefFindByType.isClassName(findByType)) {
        return fDriver.findElement(By.className(findByValue));
    }

    if (NodePropertyDefFindByType.isTagName(findByType)) {
        return fDriver.findElement(By.tagName(findByValue));
    }

    if (NodePropertyDefFindByType.isTagName(findByType)) {
        return fDriver.findElement(By.tagName(findByValue));
    }

    if (NodePropertyDefFindByType.isName(findByType)) {
        return fDriver.findElement(By.name(findByValue));
    }

    if (NodePropertyDefFindByType.isLinkText(findByType)) {
        return fDriver.findElement(By.linkText(findByValue));
    }

    if (NodePropertyDefFindByType.isPartialLinkText(findByType)) {
        return fDriver.findElement(By.partialLinkText(findByValue));
    }

    if (NodePropertyDefFindByType.isCssSelector(findByType)) {
        return fDriver.findElement(By.cssSelector(findByValue));
    }

    if (NodePropertyDefFindByType.isXPath(findByType)) {
        return fDriver.findElement(By.xpath(findByValue));
    }
    return null;
}

From source file:com.ecofactor.qa.automation.insite.page.DemandSideManagementImpl.java

License:Open Source License

/**
 * Gets the program details.Retrieve the program data as displayed in the
 * screen.//  ww w. ja va  2s  .  co  m
 * 
 * @return the program details
 * @throws ParseException
 *             the parse exception
 */
public Map<String, Object> getProgramDetails() throws ParseException {

    formatter = new SimpleDateFormat("MM-dd-yyyy");
    DriverConfig.getDriver().switchTo().defaultContent();
    smallWait();
    DriverConfig.getDriver().switchTo().frame(0);
    WaitUtil.waitUntil(SHORT_TIMEOUT);
    logger.info("check if the form is displayed.");
    WebElement form1 = DriverConfig.getDriver().findElement(By.id(demandSideManagementConfig.get(FORM_ID)));
    WebElement programId = form1.findElement(By.id(demandSideManagementConfig.get(PROGRAM_ID_FIELDS_ID)));

    logger.info("programid: " + programId.getAttribute(ATTR_VALUE));
    lsProgramId = Integer.parseInt(programId.getAttribute(ATTR_VALUE));

    programPropertiesMap.put("ProgramId", programId.getAttribute(ATTR_VALUE));

    WebElement propertiesFormElement = DriverConfig.getDriver()
            .findElement(By.id(demandSideManagementConfig.get(PROGRAM_TITLE_SPAN_ID)));
    logger.info("program name as displayed in Ui : " + propertiesFormElement.getText());

    programPropertiesMap.put("ProgramName", propertiesFormElement.getText());
    WebElement programProperties = DriverConfig.getDriver()
            .findElements(By.className(demandSideManagementConfig.get(PROGRAM_PROPERTIES_DIV_CLASS))).get(1);
    List<WebElement> propertyList = programProperties.findElements(By.tagName(TAG_TD));

    Iterator<WebElement> iterator = propertyList.listIterator();

    while (iterator.hasNext()) {
        programPropertiesMap.put(iterator.next().getText().replaceAll(" ", "_"), iterator.next().getText());
    }

    return programPropertiesMap;

}

From source file:com.ecofactor.qa.automation.insite.page.DemandSideManagementImpl.java

License:Open Source License

/**
 * Click first program.Find the first LS program and click it.
 * /* w w  w  .j av a 2s.  co  m*/
 * @throws ParseException
 *             the parse exception
 */
public void clickFirstProgram() throws ParseException {

    WaitUtil.waitUntil(SHORT_TIMEOUT);
    DriverConfig.getDriver().switchTo().frame(0);
    logger.info("check if program list form is displayed.");
    formElement = DriverConfig.getDriver()
            .findElement(By.id(demandSideManagementConfig.get(PROGRAM_LIST_FORM)));

    WebElement tableElement = formElement
            .findElement(By.id(demandSideManagementConfig.get(PROGRAM_LIST_FORM_TABLEID)));
    DriverConfig.setLogString("select the first program.", true);
    List<WebElement> columnElements = tableElement
            .findElements(By.className(demandSideManagementConfig.get(PROGRAM_DIV_CLASS)));
    if (columnElements.size() > 0) {
        DriverConfig.setLogString(
                "Program Name: " + columnElements.get(0).findElement(By.tagName(TAG_ANCHOR)).getText(), true);
        columnElements.get(0).findElement(By.tagName(TAG_ANCHOR)).click();
    }

}

From source file:com.ecofactor.qa.automation.insite.page.DemandSideManagementImpl.java

License:Open Source License

/**
 * Verifies error message For Event Creation With Past StartDate.
 * /*from   w w w .  jav a  2  s.co  m*/
 * @param ecpCoreLSProgram
 *            the ecp core ls program
 * @throws ParseException
 *             the parse exception
 */
public void checkErrorMsgForEventCreationWithPastStartDate(EcpCoreLSProgram ecpCoreLSProgram)
        throws ParseException {

    formatter = new SimpleDateFormat("MM/dd/yyyy hh:mm a");
    Calendar eventDate = Calendar.getInstance();
    eventDate.setTimeZone(TimeZone.getTimeZone(ecpCoreLSProgram.getTimeZone()));
    eventDate.setTime(ecpCoreLSProgram.getStartDate().getTime());
    eventDate.add(Calendar.DATE, -Integer.parseInt(demandSideManagementConfig.get(ADD_EVENT_DATE_PART)));
    DriverConfig.setLogString("The start Date for selected LS Program  is: "
            + formatter.format(ecpCoreLSProgram.getStartDate().getTime()), true);
    DriverConfig.setLogString("The new events start Date is: " + formatter.format(eventDate.getTime()), true);
    loadPageFrame();
    createEvent(true, formatter.format(eventDate.getTime()), demandSideManagementConfig.get(EVENT_DURATION),
            demandSideManagementConfig.get(EVENT_TYPE_DRAFT), false, null);
    // WaitUtil.waitUntil(5000);
    WaitUtil.waitUntil(20000);
    DriverConfig.setLogString(
            "check if error message is displayed for invalid start date since the event date is earlier than program's start date.",
            true);
    isFormDisplayedByClassName(DriverConfig.getDriver(), newEventWizardForm,
            demandSideManagementConfig.get(ERROR_MSG_CLASS), SHORT_TIMEOUT);
    WebElement errorMsg = newEventWizardForm
            .findElement(By.className(demandSideManagementConfig.get(ERROR_MSG_CLASS)));
    Assert.assertFalse(errorMsg.getText().isEmpty(), "Error message is not displayed");
}

From source file:com.ecofactor.qa.automation.insite.page.DemandSideManagementImpl.java

License:Open Source License

/**
 * verifies if Start Time Too Earlier Error message is displayed for earlier
 * start time./*from  w ww.  j  a v a 2s. c o m*/
 * 
 * @param dbEcpCoreLSProgram
 *            the db ecp core ls program
 * @throws ParseException
 *             the parse exception
 */
public void verifyStartTimeTooEarlierError(EcpCoreLSProgram dbEcpCoreLSProgram) throws ParseException {

    loadPageFrame();
    eventDate = Calendar.getInstance();
    createEvent(false, convertToLocalTime(eventDate, dbEcpCoreLSProgram.getTimeZone()),
            demandSideManagementConfig.get(EVENT_DURATION), demandSideManagementConfig.get(EVENT_TYPE_DRAFT),
            false, null);
    // WaitUtil.waitUntil(5000);
    WaitUtil.waitUntil(10000);
    DriverConfig.setLogString("check if 'Start Time Too Earlier Error' message displayed.", true);
    isFormDisplayedByClassName(DriverConfig.getDriver(), newEventWizardForm,
            demandSideManagementConfig.get(ERROR_MSG_CLASS), SHORT_TIMEOUT);
    WebElement errorMsg = newEventWizardForm
            .findElement(By.className(demandSideManagementConfig.get(ERROR_MSG_CLASS)));
    Assert.assertFalse(errorMsg.getText().isEmpty(), "Error message is not displayed");
    mediumWait();
    logger.info("check if event wizard close button is available.", true);
    WebElement closeEventWizardBtn = retrieveElementByAttributeValue(DriverConfig.getDriver(), TAG_SPAN,
            ATTR_CLASS, demandSideManagementConfig.get(CLOSE_EVENT_WIZARD_BTN));
    closeEventWizardBtn.click();
    mediumWait();

    logger.info("Event Start time is too earlier. Unable to create event.", true);
}