java selenium 选择下拉框遇到的坑

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

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

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

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

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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值