List of usage examples for org.openqa.selenium.support.ui ExpectedConditions presenceOfElementLocated
public static ExpectedCondition<WebElement> presenceOfElementLocated(final By locator)
From source file:org.callimachusproject.webdriver.helpers.WebBrowserDriver.java
License:Apache License
public void waitUntilElementPresent(final By locator) { waitForScript();/* w w w . j a v a2 s .c om*/ new WebDriverWait(driver, 10).until(ExpectedConditions.presenceOfElementLocated(locator)); }
From source file:org.cerberus.service.appium.impl.AppiumService.java
License:Open Source License
private WebElement getElement(Session session, Identifier identifier, boolean visible, boolean clickable) { AppiumDriver driver = session.getAppiumDriver(); By locator = this.getBy(identifier); LOG.debug("Waiting for Element : " + identifier.getIdentifier() + "=" + identifier.getLocator()); try {/*from w ww. j a va 2s . c om*/ WebDriverWait wait = new WebDriverWait(driver, TimeUnit.MILLISECONDS.toSeconds(session.getCerberus_appium_wait_element())); if (visible) { if (clickable) { wait.until(ExpectedConditions.elementToBeClickable(locator)); } else { wait.until(ExpectedConditions.visibilityOfElementLocated(locator)); } } else { wait.until(ExpectedConditions.presenceOfElementLocated(locator)); } } catch (TimeoutException exception) { LOG.fatal("Exception waiting for element :" + exception.toString()); throw new NoSuchElementException(identifier.getIdentifier() + "=" + identifier.getLocator()); } LOG.debug("Finding Element : " + identifier.getIdentifier() + "=" + identifier.getLocator()); return driver.findElement(locator); }
From source file:org.cerberus.service.engine.impl.AppiumService.java
License:Open Source License
private WebElement getElement(Session session, Identifier identifier, boolean visible, boolean clickable) { AppiumDriver driver = session.getAppiumDriver(); By locator = this.getBy(identifier); MyLogger.log(RunTestCaseService.class.getName(), Level.DEBUG, "Waiting for Element : " + identifier.getIdentifier() + "=" + identifier.getLocator()); try {//from w w w . j a v a 2s . co m WebDriverWait wait = new WebDriverWait(driver, session.getDefaultWait()); if (visible) { if (clickable) { wait.until(ExpectedConditions.elementToBeClickable(locator)); } else { wait.until(ExpectedConditions.visibilityOfElementLocated(locator)); } } else { wait.until(ExpectedConditions.presenceOfElementLocated(locator)); } } catch (TimeoutException exception) { MyLogger.log(RunTestCaseService.class.getName(), Level.FATAL, "Exception waiting for element :" + exception); throw new NoSuchElementException(identifier.getIdentifier() + "=" + identifier.getLocator()); } MyLogger.log(RunTestCaseService.class.getName(), Level.DEBUG, "Finding Element : " + identifier.getIdentifier() + "=" + identifier.getLocator()); return driver.findElement(locator); }
From source file:org.cerberus.service.engine.impl.WebDriverService.java
License:Open Source License
private AnswerItem<WebElement> getSeleniumElement(Session session, Identifier identifier, boolean visible, boolean clickable) { AnswerItem<WebElement> answer = new AnswerItem<WebElement>(); MessageEvent msg;//from w ww.j a va2s. c o m By locator = this.getBy(identifier); MyLogger.log(WebDriverService.class.getName(), Level.DEBUG, "Waiting for Element : " + identifier.getIdentifier() + "=" + identifier.getLocator()); try { WebDriverWait wait = new WebDriverWait(session.getDriver(), session.getDefaultWait()); WebElement element; if (visible) { if (clickable) { element = wait.until(ExpectedConditions.elementToBeClickable(locator)); } else { element = wait.until(ExpectedConditions.visibilityOfElementLocated(locator)); } } else { element = wait.until(ExpectedConditions.presenceOfElementLocated(locator)); } answer.setItem(element); msg = new MessageEvent(MessageEventEnum.ACTION_SUCCESS_WAIT_ELEMENT); msg.setDescription(msg.getDescription().replace("%ELEMENT%", identifier.getIdentifier() + "=" + identifier.getLocator())); } catch (TimeoutException exception) { MyLogger.log(WebDriverService.class.getName(), Level.FATAL, "Exception waiting for element :" + exception); //throw new NoSuchElementException(identifier.getIdentifier() + "=" + identifier.getLocator()); msg = new MessageEvent(MessageEventEnum.ACTION_FAILED_WAIT_NO_SUCH_ELEMENT); msg.setDescription(msg.getDescription().replace("%ELEMENT%", identifier.getIdentifier() + "=" + identifier.getLocator())); } answer.setResultMessage(msg); return answer; }
From source file:org.cerberus.service.engine.impl.WebDriverService.java
License:Open Source License
@Override public MessageEvent doSeleniumActionWait(Session session, Identifier identifier) { MessageEvent message;/* w w w .j a v a2 s. c o m*/ try { WebDriverWait wait = new WebDriverWait(session.getDriver(), TIMEOUT_WEBELEMENT); wait.until(ExpectedConditions.presenceOfElementLocated(this.getBy(identifier))); message = new MessageEvent(MessageEventEnum.ACTION_SUCCESS_WAIT_ELEMENT); message.setDescription(message.getDescription().replaceAll("%ELEMENT%", identifier.getIdentifier() + "=" + identifier.getLocator())); return message; } catch (NoSuchElementException exception) { message = new MessageEvent(MessageEventEnum.ACTION_FAILED_WAIT_NO_SUCH_ELEMENT); message.setDescription(message.getDescription().replaceAll("%ELEMENT%", identifier.getIdentifier() + "=" + identifier.getLocator())); MyLogger.log(WebDriverService.class.getName(), Level.DEBUG, exception.toString()); return message; } catch (WebDriverException exception) { message = new MessageEvent(MessageEventEnum.ACTION_FAILED_SELENIUM_CONNECTIVITY); MyLogger.log(WebDriverService.class.getName(), Level.FATAL, exception.toString()); return message; } }
From source file:org.cerberus.service.webdriver.impl.WebDriverService.java
License:Open Source License
private AnswerItem<WebElement> getSeleniumElement(Session session, Identifier identifier, boolean visible, boolean clickable) { AnswerItem<WebElement> answer = new AnswerItem<WebElement>(); MessageEvent msg;/*w w w . j ava2s . com*/ By locator = this.getBy(identifier); MyLogger.log(WebDriverService.class.getName(), Level.DEBUG, "Waiting for Element : " + identifier.getIdentifier() + "=" + identifier.getLocator()); try { WebDriverWait wait = new WebDriverWait(session.getDriver(), TimeUnit.MILLISECONDS.toSeconds(session.getCerberus_selenium_wait_element())); WebElement element; if (visible) { if (clickable) { element = wait.until(ExpectedConditions.elementToBeClickable(locator)); } else { element = wait.until(ExpectedConditions.visibilityOfElementLocated(locator)); } } else { element = wait.until(ExpectedConditions.presenceOfElementLocated(locator)); } answer.setItem(element); msg = new MessageEvent(MessageEventEnum.ACTION_SUCCESS_WAIT_ELEMENT); msg.setDescription(msg.getDescription().replace("%ELEMENT%", identifier.getIdentifier() + "=" + identifier.getLocator())); } catch (TimeoutException exception) { MyLogger.log(WebDriverService.class.getName(), Level.FATAL, "Exception waiting for element :" + exception); //throw new NoSuchElementException(identifier.getIdentifier() + "=" + identifier.getLocator()); msg = new MessageEvent(MessageEventEnum.ACTION_FAILED_WAIT_NO_SUCH_ELEMENT); msg.setDescription(msg.getDescription().replace("%ELEMENT%", identifier.getIdentifier() + "=" + identifier.getLocator())); } answer.setResultMessage(msg); return answer; }
From source file:org.cerberus.service.webdriver.impl.WebDriverService.java
License:Open Source License
@Override public boolean isElementNotPresent(Session session, Identifier identifier) { By locator = this.getBy(identifier); MyLogger.log(WebDriverService.class.getName(), Level.DEBUG, "Waiting for Element to be not present : " + identifier.getIdentifier() + "=" + identifier.getLocator()); try {//from w ww. j a v a2 s.c om WebDriverWait wait = new WebDriverWait(session.getDriver(), TimeUnit.MILLISECONDS.toSeconds(session.getCerberus_selenium_wait_element())); return wait.until(ExpectedConditions.not(ExpectedConditions.presenceOfElementLocated(locator))); } catch (TimeoutException exception) { MyLogger.log(WebDriverService.class.getName(), Level.FATAL, "Exception waiting for element to be not present :" + exception); return false; } }
From source file:org.cerberus.service.webdriver.impl.WebDriverService.java
License:Open Source License
@Override public MessageEvent doSeleniumActionWait(Session session, Identifier identifier) { MessageEvent message;/* www . ja va 2 s . com*/ try { WebDriverWait wait = new WebDriverWait(session.getDriver(), TIMEOUT_WEBELEMENT); wait.until(ExpectedConditions.presenceOfElementLocated(this.getBy(identifier))); message = new MessageEvent(MessageEventEnum.ACTION_SUCCESS_WAIT_ELEMENT); message.setDescription(message.getDescription().replace("%ELEMENT%", identifier.getIdentifier() + "=" + identifier.getLocator())); return message; } catch (NoSuchElementException exception) { message = new MessageEvent(MessageEventEnum.ACTION_FAILED_WAIT_NO_SUCH_ELEMENT); message.setDescription(message.getDescription().replace("%ELEMENT%", identifier.getIdentifier() + "=" + identifier.getLocator())); MyLogger.log(WebDriverService.class.getName(), Level.DEBUG, exception.toString()); return message; } catch (WebDriverException exception) { MyLogger.log(WebDriverService.class.getName(), Level.FATAL, exception.toString()); return parseWebDriverException(exception); } }
From source file:org.cerberus.serviceEngine.impl.SeleniumService.java
License:Open Source License
private WebElement getSeleniumElement(Selenium selenium, String input, boolean visible) { By locator = this.getIdentifier(input); MyLogger.log(RunTestCaseService.class.getName(), Level.DEBUG, "Waiting for Element : " + input); try {/* ww w . j a va 2 s . c o m*/ WebDriverWait wait = new WebDriverWait(selenium.getDriver(), selenium.getDefaultWait()); if (visible) { wait.until(ExpectedConditions.visibilityOfElementLocated(locator)); } else { wait.until(ExpectedConditions.presenceOfElementLocated(locator)); } } catch (TimeoutException exception) { throw new NoSuchElementException(input); } MyLogger.log(RunTestCaseService.class.getName(), Level.DEBUG, "Finding selenium Element : " + input); return selenium.getDriver().findElement(locator); }
From source file:org.cerberus.serviceEngine.impl.SeleniumService.java
License:Open Source License
@Override public MessageEvent doSeleniumActionWait(Selenium selenium, String object, String property) { MessageEvent message;/*from www. ja v a 2 s. c o m*/ try { if (!StringUtil.isNull(property)) { if (StringUtil.isNumeric(property)) { try { Thread.sleep(Integer.parseInt(property)); } catch (InterruptedException exception) { MyLogger.log(SeleniumService.class.getName(), Level.INFO, exception.toString()); message = new MessageEvent(MessageEventEnum.ACTION_FAILED_WAIT); message.setDescription(message.getDescription().replaceAll("%TIME%", property)); return message; } message = new MessageEvent(MessageEventEnum.ACTION_SUCCESS_WAIT_TIME); message.setDescription(message.getDescription().replaceAll("%TIME%", property)); return message; } else { try { WebDriverWait wait = new WebDriverWait(selenium.getDriver(), TIMEOUT_WEBELEMENT); wait.until(ExpectedConditions.presenceOfElementLocated(this.getIdentifier(property))); message = new MessageEvent(MessageEventEnum.ACTION_SUCCESS_WAIT_ELEMENT); message.setDescription(message.getDescription().replaceAll("%ELEMENT%", property)); return message; } catch (NoSuchElementException exception) { message = new MessageEvent(MessageEventEnum.ACTION_FAILED_WAIT_NO_SUCH_ELEMENT); message.setDescription(message.getDescription().replaceAll("%ELEMENT%", property)); MyLogger.log(SeleniumService.class.getName(), Level.ERROR, exception.toString()); return message; } } } else if (!StringUtil.isNull(object)) { if (StringUtil.isNumeric(object)) { try { Thread.sleep(Integer.parseInt(object)); } catch (InterruptedException exception) { MyLogger.log(SeleniumService.class.getName(), Level.INFO, exception.toString()); message = new MessageEvent(MessageEventEnum.ACTION_FAILED_WAIT); message.setDescription(message.getDescription().replaceAll("%TIME%", object)); return message; } message = new MessageEvent(MessageEventEnum.ACTION_SUCCESS_WAIT_TIME); message.setDescription(message.getDescription().replaceAll("%TIME%", object)); return message; } else { try { WebDriverWait wait = new WebDriverWait(selenium.getDriver(), TIMEOUT_WEBELEMENT); wait.until(ExpectedConditions.presenceOfElementLocated(this.getIdentifier(object))); message = new MessageEvent(MessageEventEnum.ACTION_SUCCESS_WAIT_ELEMENT); message.setDescription(message.getDescription().replaceAll("%ELEMENT%", object)); return message; } catch (NoSuchElementException exception) { message = new MessageEvent(MessageEventEnum.ACTION_FAILED_WAIT_NO_SUCH_ELEMENT); message.setDescription(message.getDescription().replaceAll("%ELEMENT%", object)); MyLogger.log(SeleniumService.class.getName(), Level.ERROR, exception.toString()); return message; } } } else { try { Thread.sleep(TIMEOUT_MILLIS); } catch (InterruptedException exception) { MyLogger.log(SeleniumService.class.getName(), Level.INFO, exception.toString()); message = new MessageEvent(MessageEventEnum.ACTION_FAILED_WAIT); message.setDescription( message.getDescription().replaceAll("%TIME%", Integer.toString(TIMEOUT_MILLIS))); return message; } message = new MessageEvent(MessageEventEnum.ACTION_SUCCESS_WAIT_TIME); message.setDescription( message.getDescription().replaceAll("%TIME%", Integer.toString(TIMEOUT_MILLIS))); return message; } } catch (WebDriverException exception) { message = new MessageEvent(MessageEventEnum.ACTION_FAILED_SELENIUM_CONNECTIVITY); MyLogger.log(SeleniumService.class.getName(), Level.FATAL, exception.toString()); return message; } }