3.selenium 处理下拉框 元素

下拉框 遇见的有两类:

第一类:select标签下拉框

                           实例:携程网首页 酒店选择是select标签下拉框形式。
                              源代码如下:
                               
        <select id="searchHotelLevelSelect" name="Star"> 
		<option value="0"selected="selected">不限</option>
		<option value="5">五星级/豪华</option>
		<option value="4">四星级/高档</option> 
		<option value="3">三星级/舒适</option> 
		<option value="2">二星级以下/经济</option>			 
	       </select>

       
                                       
                       针对select标签的下拉框处理步骤:
                 
1.对下拉框进行操作时,首先要定位到这个下拉框
2.new 一个Selcet对象,此对象就是你要操作的下拉框,然后对它进行操作。
3.通过调用select对象封装好的方法来进行选择

    三种封装好的方法 
       1) selectByIndex(3) 通过下拉列表中选项的“索引”来选中我们需要选中的选项
       2) selectByValue(“3”) 通过下拉列表选项中option的value属性选中想要选择的值
       3) selectByVisibleText(“三星级/舒适“) 通过下拉列表选择的课件文本选择需要选中的值,即:option的 text的值

      注:下拉框的index从0开始。index为3时,代表三星级/舒适

       Java测试代码:以 selectByIndex  为例              
 WebElement element = driver.findElement(By.id("searchHotelLevelSelect"));
     Select select = new Select(element);
     select.selectByIndex(3);
		
补充:
          这个是遍历所有的选项,最终选择结果是随机的:
Select select = new Select(driver.findElement(By.id("searchHotelLevelSelect")));
for(WebElement e: select.getOptions())
      e.click();

第二类:非select 下拉框

                      实例: 自如官网 

                            源码:
                

打开官网时,下拉框不显示出来:


鼠标点击合租,下拉框显示出来:




                                    根据下拉框的这种变化,1,首先要把下拉框显示出来,2,才能进行元素定位.            
                                   
                        driver.findElement(By.id("searchTxt")).click(); //显示下拉框
		        driver.findElement(By.xpath(".//*[@id='searchType']/span[2]")).click(); //元素定位
      


          

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值