Java 类org.openqa.selenium.support.ui.WebDriverWait 实例源码
项目:Cognizant-Intelligent-Test-Scripter
文件:AutomationObject.java
private void switchFrame(String frameData) {
try {
if (frameData != null && !frameData.trim().isEmpty()) {
driver.switchTo().defaultContent();
if (frameData.trim().matches("[0-9]+")) {
driver.switchTo().frame(Integer.parseInt(frameData.trim()));
} else {
WebDriverWait wait = new WebDriverWait(driver,
SystemDefaults.waitTime.get());
wait.until(ExpectedConditions
.frameToBeAvailableAndSwitchToIt(frameData));
}
}
} catch (Exception ex) {
//Error while switching to frame
}
}
项目:opentest
文件:ClearContent.java
@Override
public void run() {
super.run();
By locator = this.readLocatorArgument("locator");
this.waitForAsyncCallsToFinish();
try {
WebElement element = this.getElement(locator);
WebDriverWait wait = new WebDriverWait(this.driver, this.explicitWaitSec);
wait.until(ExpectedConditions.elementToBeClickable(element));
element.clear();
} catch (Exception ex) {
throw new RuntimeException(String.format(
"Failed clicking on element %s",
locator), ex);
}
}
项目:jspider
文件:WebDriverEx.java
/**
* 根据内容中包含某个子串来等待
* @param content 内容子串
* @param timeOutInMillis 超时时间毫秒数
* @param delayedMillis 延迟毫秒数
*/
public void waitWithContentAndDelayed(final String content, int timeOutInMillis, int delayedMillis) {
(new WebDriverWait(this, timeOutInMillis/1000)).until(new ExpectedCondition<Boolean>() {
public Boolean apply(WebDriver d) {
String html = d.getPageSource();
if (StringUtils.isEmpty(content)) {
//等到有内容就停止
return StringUtils.isNotBlank(html);
}
return html != null && html.contains(content);
}
});
if (delayedMillis > 0) {
sleep(delayedMillis);
}
}
项目:opentest
文件:AppiumTestAction.java
protected void swipeAndCheckElementVisible(By locator, String direction) {
Logger.trace(String.format("AppiumTestAction.swipeAndCheckElementVisible (%s, %s)",
locator,
direction));
if (direction.equalsIgnoreCase("none")) {
WebDriverWait wait = new WebDriverWait(driver, AppiumHelper.getExplicitWaitSec());
wait.until(ExpectedConditions.visibilityOfElementLocated(locator));
} else {
// TODO: Revisit this and implement a smarter algorithm - not ok to repeat this for an arbitrary number of times
int maxSwipeCount = Integer.valueOf(AppiumTestAction.config.getString("appium.maxSwipeCount", "50"));
for (int i = 0; i < maxSwipeCount; i++) {
try {
Logger.trace(String.format("AppiumTestAction.swipeAndCheckElementVisible iteration %s", i + 1));
waitForElementVisible(locator, 1);
return;
} catch (Exception ex) {
swipe(direction);
}
}
throw new RuntimeException(String.format("Element was not visible: %s", locator.toString()));
}
}
项目:marathonv5
文件:JTreeDynamicTreeTest.java
public void editANodeWithEditor() throws Throwable {
System.err.println("Ignore the following NPE. The DynamicTree class has a bug");
WebElement tree = page.getTree();
tree.click();
final WebElement root = tree.findElement(By.cssSelector(".::root"));
AssertJUnit.assertEquals("Root Node", root.getText());
WebElement editor = root.findElement(By.cssSelector(".::editor"));
editor.clear();
editor.sendKeys("Hello World", Keys.ENTER);
root.submit();
new WebDriverWait(driver, 3).until(new Function<WebDriver, Boolean>() {
@Override public Boolean apply(WebDriver input) {
return root.getText().equals("Hello World");
}
});
AssertJUnit.assertEquals("Hello World", root.getText());
}
项目:marathonv5
文件:JTreeDynamicTreeTest.java
public void expandTree() throws Throwable {
WebElement tree = page.getTree();
tree.click();
WebElement root = tree.findElement(By.cssSelector(".::nth-node(1)"));
AssertJUnit.assertEquals("false", root.getAttribute("expanded"));
AssertJUnit.assertEquals(1 + "", tree.getAttribute("rowCount"));
new Actions(driver).doubleClick(root).perform();
new WebDriverWait(driver, 3).until(hasAttributeValue(root, "expanded", "true"));
AssertJUnit.assertEquals("true", root.getAttribute("expanded"));
AssertJUnit.assertEquals(3 + "", tree.getAttribute("rowCount"));
WebElement node1 = tree.findElement(By.cssSelector(".::nth-node(2)"));
AssertJUnit.assertEquals("Parent 1", node1.getText());
new Actions(driver).doubleClick(node1).perform();
WebElement node2 = tree.findElement(By.cssSelector(".::nth-node(3)"));
AssertJUnit.assertEquals("Child 1", node2.getText());
WebElement node3 = tree.findElement(By.cssSelector(".::nth-node(4)"));
AssertJUnit.assertEquals("Child 2", node3.getText());
WebElement node4 = tree.findElement(By.cssSelector(".::nth-node(5)"));
AssertJUnit.assertEquals("Parent 2", node4.getText());
new Actions(driver).doubleClick(node4).perform();
WebElement node5 = tree.findElement(By.cssSelector(".::nth-node(6)"));
AssertJUnit.assertEquals("Child 1", node5.getText());
WebElement node6 = tree.findElement(By.cssSelector(".::nth-node(7)"));
AssertJUnit.assertEquals("Child 2", node6.getText());
}
项目:mpay24-java
文件:TestRecurringPayments.java
private void doCreditCardPaymentOnPaymentPanel(Payment response) {
RemoteWebDriver driver = openFirefoxAtUrl(response.getRedirectLocation());
driver.findElement(By.name("selCC|VISA")).click();
WebDriverWait wait = new WebDriverWait(driver, 20);
wait.until(ExpectedConditions.elementToBeClickable(By.id("cardnumber")));
driver.findElement(By.id("cardnumber")).sendKeys("4444333322221111");
driver.findElement(By.id("cvc")).sendKeys("123");
(new Select(driver.findElement(By.id("expiry-month")))).selectByValue("05");
(new Select(driver.findElement(By.id("expiry-year")))).selectByValue(getYear());
driver.findElement(By.name("profile_id")).sendKeys("x");
driver.findElement(By.id("right")).click();
wait.until(ExpectedConditions.elementToBeClickable(By.id("right")));
driver.findElement(By.id("right")).click();
}
项目:mpay24-java
文件:TestPaymentPanel.java
@Test
public void testShippingAddressWithStreet2() throws PaymentException {
Payment response = mpay24.paymentPage(getTestPaymentRequest(), getCustomerWithAddress("Coconut 3"));
assertSuccessfullResponse(response);
RemoteWebDriver driver = openFirefoxAtUrl(response.getRedirectLocation());
driver.findElement(By.name("selPAYPAL|PAYPAL")).click();
WebDriverWait wait = new WebDriverWait(driver, 20);
wait.until(ExpectedConditions.elementToBeClickable(By.name("BillingAddr/Street")));
assertEquals("Testperson-de Approved", driver.findElement(By.name("BillingAddr/Name")).getAttribute("value"));
assertEquals("Hellersbergstraße 14", driver.findElement(By.name("BillingAddr/Street")).getAttribute("value"));
assertEquals("Coconut 3", driver.findElement(By.name("BillingAddr/Street2")).getAttribute("value"));
assertEquals("41460", driver.findElement(By.name("BillingAddr/Zip")).getAttribute("value"));
assertEquals("Neuss", driver.findElement(By.name("BillingAddr/City")).getAttribute("value"));
assertEquals("Ankeborg", driver.findElement(By.name("BillingAddr/State")).getAttribute("value"));
assertEquals("Deutschland", driver.findElement(By.name("BillingAddr/Country/@Code")).findElement(By.xpath("option[@selected='']")).getText());
}
项目:opentest
文件:AppiumTestAction.java
protected void swipeAndCheckElementNotVisible(By locator, String direction) {
Logger.trace(String.format("AppiumTestAction.swipeAndCheckElementNotVisible (%s, %s)",
locator,
direction));
if (direction.equalsIgnoreCase("none")) {
WebDriverWait wait = new WebDriverWait(driver, AppiumHelper.getExplicitWaitSec());
wait.until(ExpectedConditions.invisibilityOfElementLocated(locator));
} else {
// TODO: Revisit this and implement a smarter algorithm - not ok to repeat this for an arbitrary number of times
int maxSwipeCount = Integer.valueOf(AppiumTestAction.config.getString("appium.maxSwipeCount", "50"));
for (int i = 0; i < maxSwipeCount; i++) {
try {
Logger.trace(String.format("AppiumTestAction.swipeAndCheckElementVisible iteration %s", i + 1));
waitForElementVisible(locator, 1);
throw new RuntimeException(String.format("Element was found to be visible: %s", locator.toString()));
} catch (Exception ex) {
swipe(direction);
}
}
}
}
项目:AutomationFrameworkTPG
文件:BasePage.java
protected void waitForElements(BasePage page, final WebElement... elements) {
new WebDriverWait(getDriverProxy(), 40)
.withMessage("Timed out navigating to [" + page.getClass().getName() + "]. Expected elements were not found. See screenshot for more details.")
.until((WebDriver d) -> {
for (WebElement elm : elements) {
try {
elm.isDisplayed();
} catch (NoSuchElementException e) {
// This is expected exception since we are waiting for the selenium element to come into existence.
// This method will be called repeatedly until it reaches timeout or finds all selenium given.
return false;
}
}
return true;
});
}
项目:SWET
文件:SwetTest.java
@BeforeClass
public static void beforeSuiteMethod() throws Exception {
// browser selection is hard-coded
System.err.println("os: " + osName);
if (osName.startsWith("windows")) {
driver = BrowserDriver.initialize(browser);
} else if (osName.startsWith("mac")) {
driver = BrowserDriver.initialize("safari");
} else {
driver = BrowserDriver.initialize("firefox");
}
driver.manage().timeouts().setScriptTimeout(30, TimeUnit.SECONDS);
wait = new WebDriverWait(driver, flexibleWait);
wait.pollingEvery(pollingInterval, TimeUnit.MILLISECONDS);
actions = new Actions(driver);
}
项目:daf-cacher
文件:MetabaseSniperPageImpl.java
@Override
public void visit(WebDriver driver, String url) {
final int implicitWait = Integer.parseInt(properties.getProperty("caching.page_load_wait"));
driver.manage().timeouts().implicitlyWait(implicitWait, TimeUnit.SECONDS);
driver.get(url);
LOGGER.fine("Wait for JS complete");
(new WebDriverWait(driver, implicitWait)).until((ExpectedCondition<Boolean>) d -> {
final String status = (String) ((JavascriptExecutor) d).executeScript("return document.readyState");
return status.equals("complete");
});
LOGGER.fine("JS complete");
LOGGER.fine("Wait for footer");
(new WebDriverWait(driver, implicitWait))
.until(
ExpectedConditions.visibilityOf(
driver.findElement(By.name("downarrow"))));
LOGGER.info("Footer is there");
try {
Thread.sleep(implicitWait * 1000l);
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
}
}
项目:testing_security_development_enterprise_systems
文件:PageObject.java
protected Boolean waitForPageToLoad() {
JavascriptExecutor jsExecutor = (JavascriptExecutor) driver;
WebDriverWait wait = new WebDriverWait(driver, 10); //give up after 10 seconds
//keep executing the given JS till it returns "true", when page is fully loaded and ready
return wait.until((ExpectedCondition<Boolean>) input -> {
String res = jsExecutor.executeScript("return /loaded|complete/.test(document.readyState);").toString();
return Boolean.parseBoolean(res);
});
}
项目:AutomationFrameworkTPG
文件:BasePage.java
protected void waitForElements(BasePage page, final By... elements) {
new WebDriverWait(getDriverProxy(), 40)
.withMessage("Timed out navigating to [" + page.getClass().getName() + "]. Expected selenium elements were not found. See screenshot for more details.")
.until((WebDriver d) -> {
boolean success = true;
for (By elm : elements) {
List<WebElement> foundElements = d.findElements(elm);
if (!foundElements.isEmpty()) {
try {
((WebElement) foundElements.get(0)).isDisplayed();
} catch (NoSuchElementException e) {
// This is expected exception since we are waiting for the selenium element to come into existence.
// This method will be called repeatedly until it reaches timeout or finds all selenium given.
success = false;
break;
}
} else {
success = false;
break;
}
}
return success;
});
}
项目:QAExercises
文件:MatrixBoardTest.java
@BeforeClass//Аннотация Junit. Говорит, что метод должен запускаться каждый раз после создания экземпляра класса, перед всеми тестами
public static void setUp() {
//Устанавливаем System Property, чтобы наше приложени смогло найти драйвер
System.setProperty("webdriver.gecko.driver", "C:\\Program Files\\Java\\geckodriver.exe");
//Инициализируем драйвер
// driver = new FirefoxDriver();
driver = DriverManager.getDriver();
//Инициализируем Implicit Wait
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
//инициализируем Explicit Wait
wait = new WebDriverWait(driver, 10);
}
项目:jspider
文件:WebDriverEx.java
/**
* 根据标题中包含某个子串来等待
* @param title 标题子串
* @param timeOutInMillis 超时时间毫秒数
*/
public void waitWithTitle(final String title, int timeOutInMillis) {
(new WebDriverWait(this, timeOutInMillis/1000)).until(new ExpectedCondition<Boolean>() {
public Boolean apply(WebDriver d) {
String t = d.getTitle();
if (StringUtils.isEmpty(title)) {
//等到有title就停止
return StringUtils.isNotBlank(t);
}
return t != null && t.contains(title);
}
});
}
项目:jspider
文件:WebDriverEx.java
/**
* 根据内容中包含某个子串来等待
* @param content 内容子串
* @param timeOutInMillis 超时时间毫秒数
*/
public void waitWithContent(final String content, int timeOutInMillis) {
(new WebDriverWait(this, timeOutInMillis/1000)).until(new ExpectedCondition<Boolean>() {
public Boolean apply(WebDriver d) {
String html = d.getPageSource();
if (StringUtils.isEmpty(content)) {
//等到有内容就停止
return StringUtils.isNotBlank(html);
}
return html != null && html.contains(content);
}
});
}
项目:teasy
文件:WebDriverAwareElementFinder.java
public WebDriverAwareElementFinder(final WebDriver webDriver, final WebDriverWait webDriverWait, Integer waitTimeout) {
this.driver = webDriver;
this.wait = webDriverWait;
if (waitTimeout != null) {
this.waitTimeout = waitTimeout;
}
}
项目:appium_tutorial
文件:AndroidTest.java
@Test
public void SettingsViewButton() {
WebDriverWait wait = new WebDriverWait(driver, 10);
WebElement menuButton = driver.findElement(By.xpath("//android.widget.ImageButton[@content-desc=\"Open navigation\"]"));
menuButton.click();
WebElement settingsViewButton = wait.until(ExpectedConditions.visibilityOf(driver.findElement(By.xpath("//*[@text=\"Settings\"]"))));
settingsViewButton.click();
}
项目:FashionSpider
文件:WeiboLoginAndGetCookie.java
public static void main(String[] args) throws Exception{
//配置ChromeDiver
System.getProperties().setProperty("webdriver.chrome.driver", "chromedriver.exe");
//开启新WebDriver进程
WebDriver webDriver = new ChromeDriver();
//全局隐式等待
webDriver.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS);
//设定网址
webDriver.get("https://passport.weibo.cn/signin/login?entry=mweibo&res=wel&wm=3349&r=http%3A%2F%2Fm.weibo.cn%2F");
//显示等待控制对象
WebDriverWait webDriverWait=new WebDriverWait(webDriver,10);
//等待输入框可用后输入账号密码
webDriverWait.until(ExpectedConditions.elementToBeClickable(By.id("loginName"))).sendKeys(args[0]);
webDriverWait.until(ExpectedConditions.elementToBeClickable(By.id("loginPassword"))).sendKeys(args[1]);
//点击登录
webDriver.findElement(By.id("loginAction")).click();
//等待2秒用于页面加载,保证Cookie响应全部获取。
sleep(2000);
//获取Cookie并打印
Set<Cookie> cookies=webDriver.manage().getCookies();
Iterator iterator=cookies.iterator();
while (iterator.hasNext()){
System.out.println(iterator.next().toString());
}
//关闭WebDriver,否则并不自动关闭
webDriver.close();
}
项目:bootstrap
文件:AbstractSeleniumTest.java
/**
* Wait for the given element to have the given text
*
* @param by
* Element to wait for
* @param expectedText
* Waiting value
*/
protected void assertElementText(final String expectedText, final By by) {
new WebDriverWait(driver, timeout).until(d -> {
try {
return Optional.ofNullable(driver.findElement(by)).map(WebElement::getText).filter(expectedText::equals).isPresent();
} catch (final StaleElementReferenceException ex) { // NOSONAR - Not yet ready element, try later
return false;
}
});
}
项目:ServiceNow_Selenium
文件:ServiceNow.java
/**
* Changes focus of the page so that Selenium knows to interact with the
* navigation area or The Iframe that the form lives inside.
*
* @param bool
* True = Focus the Form False = Focus the whole page
*/
private void focusForm(boolean bool) {
if (_formFocused == bool) {
return;
} else {
_formFocused = bool;
}
if (_formFocused) {
WebDriverWait wait = new WebDriverWait(_driver, 10);
WebElement form = wait.until(ExpectedConditions.visibilityOfElementLocated(By.name("gsft_main")));
_driver.switchTo().frame(form);
} else {
_driver.switchTo().defaultContent();
}
}
项目:phoenix.webui.framework
文件:AbstractLocator.java
@SuppressWarnings("unchecked")
protected boolean eleWait(WebDriver driver, long timeout, ExpectedCondition<? extends SearchContext> ...isTrueArray)
{
if(timeout > 0 && isTrueArray != null && isTrueArray.length > 0)
{
WebDriverWait wait = new WebDriverWait(driver, timeout);
for(ExpectedCondition<? extends SearchContext> isTrue : isTrueArray)
{
wait.until(isTrue);
}
return true;
}
else
{
return false;
}
}
项目:marathonv5
文件:JTreeDynamicTreeTest.java
public void expandANode() throws Throwable {
WebElement tree = page.getTree();
tree.click();
tree.click();
WebElement root = tree.findElement(By.cssSelector(".::root"));
AssertJUnit.assertEquals(1 + "", tree.getAttribute("rowCount"));
new Actions(driver).doubleClick(root).perform();
new WebDriverWait(driver, 3).until(hasAttributeValue(tree, "rowCount", 3 + ""));
AssertJUnit.assertEquals(3 + "", tree.getAttribute("rowCount"));
}
项目:marathonv5
文件:JTreeDynamicTreeTest.java
public void getNodesByRow() throws Throwable {
WebElement tree = page.getTree();
tree.click();
WebElement root = tree.findElement(By.cssSelector(".::nth-node(1)"));
AssertJUnit.assertEquals(1 + "", tree.getAttribute("rowCount"));
new Actions(driver).doubleClick(root).perform();
new WebDriverWait(driver, 3).until(hasAttributeValue(tree, "rowCount", 3 + ""));
AssertJUnit.assertEquals(3 + "", tree.getAttribute("rowCount"));
WebElement node1 = tree.findElement(By.cssSelector(".::nth-node(2)"));
AssertJUnit.assertEquals("Parent 1", node1.getText());
WebElement node2 = tree.findElement(By.cssSelector(".::nth-node(3)"));
AssertJUnit.assertEquals("Parent 2", node2.getText());
}
项目:tmply
文件:TmplyPage.java
private void waitForBucketEmptyMessage()
{
WebElement messagePanel = getMessagePanel();
WebDriverWait webDriverWait = new WebDriverWait(this.webDriver, 3);
webDriverWait.until(ExpectedConditions.textToBePresentInElement(messagePanel, "No such bucket."));
}
项目:SWET
文件:Utils.java
public void highlight(WebElement element, long highlight_interval) {
try {
new WebDriverWait(driver, flexibleWait)
.until(ExpectedConditions.visibilityOf(element));
executeScript("arguments[0].style.border='3px solid yellow'", element);
Thread.sleep(highlight_interval);
executeScript("arguments[0].style.border=''", element);
} catch (InterruptedException e) {
System.err.println("Exception (ignored): " + e.toString());
}
}
项目:appium_tutorial
文件:AndroidTest.java
@Test
public void AccountsViewButton() {
WebDriverWait wait = new WebDriverWait(driver, 10);
WebElement menuButton = driver.findElement(By.xpath("//android.widget.ImageButton[@content-desc=\"Open navigation\"]"));
menuButton.click();
WebElement accountsViewButton = wait.until(ExpectedConditions.visibilityOf(driver.findElement(By.xpath("//*[@text=\"Accounts\"]"))));
accountsViewButton.click();
}
项目:bromium
文件:RecordNotExposedPageLoadingIT.java
@Override
public void run(RecordingSimulatorModule recordingSimulatorModule) {
String baseUrl = (String) opts.get(URL);
WebDriver driver = recordingSimulatorModule.getWebDriver();
WebDriverWait webDriverWait = new WebDriverWait(driver, 10);
driver.get(baseUrl + "ajax.html");
webDriverWait.until(ExpectedConditions.presenceOfElementLocated(By.id(AJAX_DEMO_ID)));
}
项目:appium_tutorial
文件:AndroidTest.java
@Test
public void ChartsViewButton() {
WebDriverWait wait = new WebDriverWait(driver, 10);
WebElement menuButton = driver.findElement(By.xpath("//android.widget.ImageButton[@content-desc=\"Open navigation\"]"));
menuButton.click();
WebElement chartsViewButton = wait.until(ExpectedConditions.visibilityOf(driver.findElement(By.xpath("//*[@text=\"Reports\"]"))));
chartsViewButton.click();
}
项目:bootstrap
文件:AbstractSeleniumTest.java
/**
* Wait for the given element to be hidden on screen
*
* @param by
* Element to wait for
*/
protected void assertElementHidden(final By by) {
new WebDriverWait(driver, timeout).until(d -> {
try {
return driver.findElements(by).stream().noneMatch(WebElement::isDisplayed);
} catch (final StaleElementReferenceException ex) { // NOSONAR - Not yet ready element, try later
return false;
}
});
}
项目:opentest
文件:SeleniumTestAction.java
/**
* Locates and returns a UI element.
*/
protected WebElement getElement(By locator, int timeoutSec) {
WebDriverWait wait = new WebDriverWait(driver, timeoutSec);
WebElement element = wait.until(
ExpectedConditions.presenceOfElementLocated(locator));
return element;
}
项目:cucumber-framework-java
文件:WebDriverWebController.java
public boolean isAlertPresent() {
WebDriverWait wait = new WebDriverWait(driver, 0);
try {
wait.until(ExpectedConditions.alertIsPresent());
return true;
} catch (Exception e) {
return false;
}
}
项目:cucumber-framework-java
文件:WebDriverWebController.java
public boolean isComponentVisible(String locator, long seconds) {
try {
WebDriverWait wait = new WebDriverWait(driver, seconds);
wait.until(ExpectedConditions.visibilityOfElementLocated(determineLocator(locator)));
return true;
} catch (TimeoutException e) {
return false;
}
}
项目:GitTalent
文件:GitTalentIntegrationTest.java
@Test
public void testDeveloperTab() throws InterruptedException {
RemoteWebDriver driver = chrome.getWebDriver();
driver.get("http://gittalentbackend:8080/githubimport/developer/ldoguin");
driver.get("http://gittalentbackend:8080/githubimport/status");
while(driver.getPageSource().contains("false")) {
Thread.sleep(1000);
driver.navigate().refresh();
};
driver.get("http://gittalentfrontend/");
WebElement myDynamicElement = (new WebDriverWait(driver, 20))
.until(ExpectedConditions.presenceOfElementLocated(By.xpath("/html/body/app-root/div/developers/div[1]/div[2]/div[1]/table/tbody/tr/td[2]")));
Assert.assertTrue(myDynamicElement.getText().equals("ldoguin"));
}
项目:cucumber-framework-java
文件:WebDriverWebController.java
public void waitForPageToLoad()
{
JavaScriptHelper js = new JavaScriptHelper();
ExpectedCondition expectedCondition = new ExpectedCondition<Boolean>(){
public Boolean apply(WebDriver driver){
return js.executeScript( "return document.readyState" ).equals( "complete" );
}
};
WebDriverWait wait = new WebDriverWait(driver, SessionContextManager.getWaitForPageToLoad(), THREAD_SLEEP);
wait.until(expectedCondition);
wait.until(ExpectedConditions.presenceOfAllElementsLocatedBy(By.tagName("div")));
}
项目:cucumber-framework-java
文件:ControllerBase.java
/**
*
*/
public WebElement waitForElement(String locator, long waitSeconds) {
try {
WebDriverWait wait = new WebDriverWait(driver, waitSeconds, THREAD_SLEEP);
return wait.until(ExpectedConditions.visibilityOfElementLocated(determineLocator(locator)));
} catch (TimeoutException e) {
takeScreenShot();
throw new TimeoutException("Exception has been thrown", e);
}
}
项目:cucumber-framework-java
文件:ControllerBase.java
/**
* waitForElementInvisibility(java.lang.String, long)
*/
public void waitForElementInvisibility(String locator, long waitSeconds) {
try {
WebDriverWait wait = new WebDriverWait(driver, waitSeconds);
wait.until(ExpectedConditions.invisibilityOfElementLocated(determineLocator(locator)));
} catch (Exception e) {
takeScreenShot();
throw new TimeoutException("Exception has been thrown", e);
}
}
项目:dashboard1b
文件:SeleniumUtils.java
static public List<WebElement> EsperaCargaPaginaxpath(WebDriver driver, String xpath, int timeout) {
WebElement resultado = (new WebDriverWait(driver, timeout))
.until(ExpectedConditions.visibilityOfElementLocated(By.xpath(xpath)));
assertTrue(resultado != null);
List<WebElement> elementos = driver.findElements(By.xpath(xpath));
return elementos;
}
项目:cucumber-framework-java
文件:ControllerBase.java
public boolean isAlertPresent() {
WebDriverWait wait = new WebDriverWait(driver, 0);
try {
wait.until(ExpectedConditions.alertIsPresent());
return true;
} catch (Exception e) {
return false;
}
}