5、selenium 通过模拟点击实现对下拉框的选择

一般情况下,selenium driver选择下拉框的选项(html是标签)可以通过Select这个类,进行选择。三种方法:

  new Select(driver.findElement(By.id(“AAA”))).selectByVisibleText(“”);

  new Select(driver.findElement(By.id(“AAA”))).selectByValue(“”);

  new Select(driver.findElement(By.id(“AAA”))).selectByIndex(“”);

由于一些网页获取页面的元素进行数据库交互是根据页面底层对鼠标点击进行选择,通过数据库的值的变化进行响应,所以对于select类根据源码自动选择下拉框的option并无法获取页面值的变化,而页面已经改变了值,因此点击保存后总是无法顺利执行下一步。

所以下拉框的选择不能使用上面的方法。通过模拟点击,调用句柄进行click()完全模拟鼠标行为对下拉框的选择。因此可使用按相对路径定位option位置。如:driver.findElement(By.xpath(“//select[@id=’AAA’]/option[@value=’BBB’]”).click();
如果该系统保存页面信息,默认是鼠标在页面区域是选择,可在后面加上一句模拟点击以强化选择。 driver.findElement(By.xpath(“//select[@id=’AAA’]/option[@value=’BBB’]”).click();
driver.findElement(By.id(“AAA”)).click();

猜你喜欢

转载自www.cnblogs.com/zengfh/p/12287979.html
今日推荐