ui自动化---select标签和浏览器等待

Posted bendouyao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ui自动化---select标签和浏览器等待相关的知识,希望对你有一定的参考价值。

一、select

引入模块from selenium.webdriver.support.select import Select

Select(select).select_by_value(4)#通过select标签的value进行选择
Select(select).select_by_index(0)#通过select标签的index进行选择

#一个标签中如果还有子集,可以继续在这个标签的基础上进行find
opts=select.find_elements_by_tag_name(option)#找到select下的所有option标签
for opt in opts:
    print(opt.get_attribute(value))

二、等待

1、通常我们用的等待就是time模块的time.sleep()

2、第二种就是隐式等待:

driver.implicitly_wait(10)#应用于全局,浏览器启动后就写一次,每个页面都会自动等,基本不用

3、显示等待

导入模块

from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import  expected_conditions as EC
from selenium.webdriver.common.by import By

#10s内,没个0.5s扫描,元素不可见或者找不到,返回true。如果可见返回错误
WebDriverWait(driver,10,0.5).until(EC.invisibility_of_element_located((By.ID,i1)))

# 10s内,每隔1s扫描,until是否找到元素,如果找到则返回该元素,否则报错
el=WebDriverWait(driver,10,1).until(EC.presence_of_element_located((By.ID,‘i11‘)))
el.send_keys(‘xxx‘)

 

WebDriverWait(driver,10,0.5).until(EC.invisibility_of_element_located((By.ID,‘i1‘)))举例如下

技术分享图片

技术分享图片

 









以上是关于ui自动化---select标签和浏览器等待的主要内容,如果未能解决你的问题,请参考以下文章

selenium-java,解决一些加了显性等待和隐性等待都不好使的情况,以及给UI自动化加上暂停功能

vue ui打开可视化面板一片空白

Selenium-Switch与SelectApi接口

基于Selenium2+Java的UI自动化- 显式等待和隐式等待

UI自动化测试中,Selenium的三种等待方式详解

Element-ui Select 点击删除区域内标签不生效问题