【发布时间】:2020-10-12 16:02:22
【问题描述】:
我在使用 selenium+python unittest 的自动化脚本时遇到问题。 在我的 setUp() 我有这一行:
def setUp(self):
self.driver.implicitly_wait(10)
在我的一个页面对象中,我有这个方法:
def return_note_asunto(self):
WebDriverWait(self.driver, 5).until(EC.invisibility_of_element_located(self.gw_loader))
WebDriverWait(self.driver, 5).until(EC.presence_of_element_located(self.note_asunto))
return self.driver.find_elements(*self.note_asunto)[0].text
该方法中的第一个显式等待等待加载程序在页面上不可见。发生这种情况时,会执行隐式等待,并且脚本会在加载程序消失 10 秒后停止,然后脚本会继续运行。 我不确定为什么在加载程序消失后执行隐式等待,知道为什么会发生这种情况吗?根据我的理解,在测试失败之前隐式等待 x 秒等待对象。
谢谢!
【问题讨论】:
-
嗨,看看 selenium 文档。他们说不要混合两种等待策略,因为你会得到不可预测的结果selenium.dev/documentation/en/webdriver/waits
标签: python selenium selenium-webdriver selenium-chromedriver qa