selenium的三种等待方式

一个好的自动化测试脚本对脚本的执行时间要求非常高.

三种等待方式:

1>强制等待 sleep(time)

2>隐性等待driver.implicitly_wait(time)

3>显性等待WebDriverWait(driver, timeout, poll_frequency, ignored_exceptions)

主要说明第三种等待方式,前两个不谈.

#导入模块

from selenium.webdriver.support.wait import WebDriverWait

#说明

WebDriverWait(浏览器的实例, 最大时间, 间隔时间(默认0.5秒), 异常情况)

后面跟 .until() 和 until_not()

实际操作:

WebDriverWait(driver, 10).until(lambda driver: driver.find_element(loc)).click()

WebDriverWait(driver, 10).until(lambda driver: driver.find_element(loc)).send_keys(text)

因为语句过长,对它进行封装,完成后可以直接调用该方法

#封装点击

def wait_element_click(self, *loc):
    driver = self.driver
    return WebDriverWait(driver, 10).until(lambda driver: driver.find_element(*loc)).click()

#封装输入

def wait_element_sendkeys(self, text, *loc):
    driver = self.driver
    return WebDriverWait(driver, 10).until(lambda driver: driver.find_element(*loc)).send_keys(text)

#尽情的尝试

#进入iframe

def select_list(self, text, *loc):
    driver = self.driver
    return WebDriverWait(driver, 10).until\
    (lambda driver:Select(driver.find_element(*loc))).select_by_visible_text(text)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值