我正在用selenium(Python绑定+ Firefox驱动程序)编写一些自动GUI测试。在这个页面上我们遇到了问题,我想点击按钮但它位于页面的下半部分(我通过id选择按钮)。 Firefox窗口的默认大小不足以显示它。因此,实际点击的元素是标签栏中的一个,它始终可见。
如果我在测试期间手动调整窗口大小,它会顺利运行。
这对我来说似乎是一个错误TBH。我想知道这是否是一个已知的功能,并且存在解决方法。
答案 0 :(得分:1)
您可以使用Actions Chains滚动到元素
actions = ActionChains(driver)
actions.move_to_element(element).perform()
这将使按钮可见,您可以单击它。您还可以使用显式等待来确保按钮可见。
答案 1 :(得分:1)
您可以在元素上调用location_once_scrolled_into_view。它是一个返回元素位置的属性,但如果它已经不在视图中,它会首先滚动到元素的附加副作用。
element.location_once_scrolled_into_view
。