java – 如何在Selenium中等待页面刷新
发布时间:2020-12-15 04:37:03 所属栏目:Java 来源:网络整理
导读:这是我之前的问题 Unable to understand on getting the value的扩展 这里的情况如下. 根据邮政编码,结果会有所不同. 目前我在文件中有以下内容. 9954660089 我的代码如下. import java.io.BufferedReader;import java.io.File;import java.io.FileNotFoundE
这是我之前的问题
Unable to understand on getting the value的扩展
这里的情况如下. 根据邮政编码,结果会有所不同. 目前我在文件中有以下内容. 99546 60089 我的代码如下. import java.io.BufferedReader; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.FirefoxDriver; import org.openqa.selenium.remote.CapabilityType; import org.openqa.selenium.remote.DesiredCapabilities; import org.openqa.selenium.support.ui.ExpectedConditions; import org.openqa.selenium.support.ui.WebDriverWait; public class Test1 { public static void main(String[] args) throws InterruptedException,FileNotFoundException { WebDriver driver; System.setProperty("webdriver.gecko.driver","C:UsershomeDownloadsgeckodriver.exe"); DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability(CapabilityType.ACCEPT_SSL_CERTS,true); driver = new FirefoxDriver(capabilities); driver.get("https://www2.chubb.com/us-en/find-agent-page.aspx"); try { File file = new File("zip.txt"); FileReader fileReader = new FileReader(file); BufferedReader bufferedReader = new BufferedReader(fileReader); StringBuffer stringBuffer = new StringBuffer(); String line; while ((line = bufferedReader.readLine()) != null) { driver.findElement(By.xpath(".//*[@id='tbAddress']")).clear(); driver.findElement(By.xpath(".//*[@id='cphHeroContent_drpDistanceMiles']")).sendKeys("Select Distance"); driver.findElement(By.xpath(".//*[@id='tbAddress']")).sendKeys(line); driver.findElement(By.xpath(".//*[@id='cphHeroContent_drpDistanceMiles']")).sendKeys("2"); driver.findElement(By.xpath(".//*[@id='cphHeroContent_rdType_0']")).click(); driver.findElement(By.xpath(".//*[@id='cphHeroContent_btnSearch']")).click(); String title = driver.getTitle().toString(); System.out.println(title); WebElement element = (new WebDriverWait(driver,10)).until( ExpectedConditions.visibilityOfElementLocated(By.xpath("html/body/div/div[1]/div[@style='']"))); String getHeadingTitle = element.getText(); System.out.println(line + "t" + getHeadingTitle); } fileReader.close(); System.out.println("Contents of file:"); System.out.println(stringBuffer.toString()); } catch (IOException e) { e.printStackTrace(); } } } 预期结果: 99546 No Results Found Find Agent Page 60089 1 Agents Found. Please scroll down to see a list of agents. 目前的结果: 99546 No Results Found Find Agent Page 60089 No Results Found 问题: WebElement element = (new WebDriverWait(driver,10)).until( ExpectedConditions.visibilityOfElementLocated(By.xpath("html/body/div/div[1]/div[@style='']"))); 最初,这个块是隐藏的,所以我等到它可见,从第二次开始,相同的块被更新而不是看不见并返回可见. 谢谢 解决方法
也许,您可以通过声明页面上最初存在的元素在刷新后不在页面上来解决它
> refreshAndWait或clickAndWait on refresh button 真正执行并且已加载相同的页面 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容