Django 碎片等待元素。可见

Django 碎片等待元素。可见,django,testing,splinter,Django,Testing,Splinter,我和斯普林特有点关系。我知道 button.click() assert not button.visible # Fails 那我会的 button.click() time.sleep(1) assert not button.visible # Succeeds 那太糟糕了。。。这是故意的行为吗?其他一切似乎都在轮询并等待一段时间后才失败。我不确定Splinter在内部是如何工作的,但看起来您正在使用属性访问,它可能会被缓存。您是否尝试过: assert not browser.

我和斯普林特有点关系。我知道

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")

元素是否由css可见始终有一个隐式等待,您可以在splitter设置中配置。请注意,使用浏览器(Selenium)测试时,所有内容都有隐式等待,因为浏览器DOM操作是异步进行的,当某些元素可见或消失时,没有反向通道来获取信息。

我不确定Splinter在内部是如何工作的,但看起来您正在使用属性访问,它可能被缓存。您是否尝试过:

 assert not browser.is_element_visible_by_css("#my-button-id")

元素是否由css可见始终有一个隐式等待,您可以在splitter设置中配置。请注意,使用浏览器(Selenium)测试时,所有内容都有隐式等待,因为浏览器DOM操作是异步进行的,当某些元素可见或消失时,没有反向通道来获取信息。

不存在此类方法()。有没有一种方法可以从碎片中提取硒并得到这种方法?呜呜,我的错。尝试此操作:通过调用
b“重新获取”元素。通过\u css()
查找\u元素,然后再次选中
可见。我正在检查这个方法发生了什么,我在过去的代码中有过它。这个方法在这里,但是看起来它没有文档化,并且它有隐式的等待。不存在这样的方法()。有没有一种方法可以从碎片中提取硒并得到这种方法?呜呜,我的错。尝试此操作:通过调用
b“重新获取”元素。通过\u css()
查找\u元素,然后再次选中
可见。我正在检查这个方法发生了什么,我在过去的代码中有过它。这个方法在这里,但是看起来它没有文档化,并且有隐式的等待