猿问

Web 元素之间的等待时间 [Webdriverwait Selenium]

我试图在每个网络元素之间放置时间间隔。例如,我希望第一个 webelement 应该在 10 秒后工作,第二个 web 元素应该在 30 秒后工作。但这对我不起作用。


如果我手动单击 element1 那么 2nd 是否会自动工作,因为在当前情况下,如果我手动单击第一个,那么第二个元素不会自动工作。


driver = new FirefoxDriver(options);

            driver.get("http://demo.com");

            ((JavascriptExecutor) driver).executeScript("window.focus();");

            WebDriverWait wait = new WebDriverWait(driver, 600);

            // First path

                        WebElement element1 = wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("/html/body/div[2]/div[2]/div[2]/div/div/form/div[5]/div/input")));

                        element1.click();

                        // Second path

                        WebElement element2 = wait.until(

                                ExpectedConditions.visibilityOfElementLocated(By.xpath("//*[@id='sbt67Pin']")));

                        element2.click();

                        // Third path


慕码人8056858
浏览 100回答 1
1回答

慕标5832272

像那样尝试Thread.sleep()。如果想停止运行脚本。  Thread.sleep(10000);  WebElement element1 = driver.findElement(By.xpath("/html/body/div[2]/div[2]/div[2]/div/div/form/div[5]/div/input"));  element1.click();  hread.sleep(20000);  // Second path  WebElement element2 = driver.findElement(By.xpath("//*[@id='sbt67Pin']"));  element2.click();  // Third path  Thread.sleep(30000);
随时随地看视频慕课网APP

相关分类

Java
我要回答