Bur*_*ras 5 java selenium autocomplete inputbox
以下代码测试网页的自动裁剪框:
public class Test {
public static void main(String[] args) throws InterruptedException {
System.setProperty("webdriver.chrome.driver","chromedriver\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("http://www..............com");
driver.switchTo().frame("mainFrame");
WebDriverWait waitst = new WebDriverWait(driver, 120);
waitst.until(ExpectedConditions.visibilityOfElementLocated(By.name("sourceTitle")));
WebElement sourceTitle = driver.findElement(By.name("sourceTitle"));
WebElement small = driver.findElement(By.cssSelector("li#nameExampleSection label + small"));
sourceTitle.sendKeys("Times");
Thread.sleep(5000);
Actions actions = new Actions(driver);
actions.click(small).perform();
}
}
Run Code Online (Sandbox Code Playgroud)
为什么自动提示框没有加载?重要提示:尝试手动输入"..........." ...自动完成框将加载完全正常!那么,为什么不起作用cssSelector,为什么不加载自动完成框?
为什么自动输入不允许自动完成选项但是手动输入呢???
PS:我也试过fireEvent,sendKeys但没有任何作用.
我尝试了你的代码,它的作用与手动演练的作用完全一样。“美联社”仅返回“不匹配,请尝试来源”。然后,在您的代码中,您尝试单击下一个表单列表项,而不是结果弹出窗口。自动建议弹出窗口动态填充在输入表单下方的 html 页面顶部。以下代码确实选择下拉列表中的第一个选项。
@Test
public void test() throws InterruptedException {
WebDriver driver = new ChromeDriver();
driver.get("http://www.lexisnexis.com/hottopics/lnacademic/?verb=sf&sfi=AC00NBGenSrch");
driver.switchTo().frame("mainFrame");
WebDriverWait waitst = new WebDriverWait(driver, 0);
waitst.until(ExpectedConditions.visibilityOfElementLocated(By.name("sourceTitle")));
WebElement sourceTitle = driver.findElement(By.name("sourceTitle"));
sourceTitle.sendKeys("Times");
Thread.sleep(5000);
WebElement firstItem = driver.findElement(By.xpath("//*[@class='auto_suggest']/*[@class='title_item']"));
firstItem.click();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16536 次 |
| 最近记录: |