我对 splinter 有一些讨厌的行为。我愿意
button.click()
assert not button.visible # Fails
然后我做
button.click()
time.sleep(1)
assert not button.visible # Succeeds
这很糟糕……这是有意为之的行为吗?其他一切似乎都在轮询并在失败之前稍等片刻。
最佳答案
我不确定 Splinter 在内部是如何工作的,但看起来您正在使用属性访问并且它可能被缓存了。你试过吗:
assert not browser.is_element_visible_by_css("#my-button-id")
is_element_visible_by_css
始终有一个隐式等待,您可以在 Splinter 设置中进行配置。请注意,对于浏览器 (Selenium) 测试,一切都有隐式等待,因为浏览器 DOM 操作是异步发生的,并且当某些元素变得可见或消失时,没有反向 channel 来获取信息。
关于django - split 等待 element.visible,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35176585/