selenium.common.exceptions.MoveTargetOutOfBoundsException:Move target (1489, 1050)is out of bound已解决

代码:

ActionChains(self.driver).move_to_element(order_element).perform()
order_element.click()

报错:

消息:移动目标(1489,1050)超出视口尺寸(1920,927)的边界

selenium.common.exceptions.MoveTargetOutOfBoundsException: Message: Move target (1489, 1050) is out of bounds of viewport dimensions (1920, 927)

解决方法:

模拟鼠标滑动到页面底部,然后再鼠标移动到元素上,点击

js = 'window.scrollTo(0,1000)'
js1 = 'window.scrollTo(0,document.body.scrollHeight)'
self.driver.execute_script(js)

ActionChains(self.driver).move_to_element(order_element).perform()

order_element.click()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: selenium.common.exceptions.movetargetoutofboundsexception: message: move target out of bounds 的意思是移动目标超出了边界。这通常是因为你试图将鼠标或键盘移动到一个不可见或超出屏幕范围的位置。解决方法是调整你的代码,确保移动的目标在屏幕内,并且可见。 ### 回答2: selenium.common.exceptions.movetargetoutofboundsexceptionselenium的一个异常,它通常在进行鼠标或者键盘操作时出现。异常的具体信息是“move target out of bounds”,也就是移动目标超出了范围。 出现这个异常往往是因为selenium在模拟用户的鼠标或者键盘操作时,尝试把鼠标或者键盘移动到一个超出屏幕范围的位置上,这个时候就会出现这个异常。 要解决这个异常,我们需要检查一下我们的代码中是否有把鼠标或者键盘移动到了超出屏幕范围的位置。我们可以通过打印出详细的错误信息来找到具体出现异常的代码位置。一般来说,这个错误的出现是因为我们在代码中设置了错误的坐标位置,所以需要重新设置合适的坐标位置。 可以通过以下几种方法来解决这个异常: 1. 确保我们的代码中的鼠标或键盘移动操作的坐标值没有超过屏幕的范围。 2. 使用selenium提供的一些方法来设置鼠标或键盘移动的位置,比如move_to_element_with_offset()方法。 3. 当我们无法确定正确的坐标位置时,可以通过调试代码来找出问题所在,或者通过参考selenium的官方文档来找到正确的解决方法。 总之,在使用selenium进行自动化测试时,我们要时刻注意浏览器窗口的大小和位置,以及我们在代码中设置的坐标值是否正确,这样才能避免出现这种异常。 ### 回答3: selenium.common.exceptions.movetargetoutofboundsexceptionSelenium自带的一个异常,常见于使用Selenium的Web自动化测试过程中。这个异常通常是因为Selenium无法将鼠标或键盘移动到页面的某个元素上,因为该元素不在可见视图内,或被其他元素所遮挡。 当我们使用move_to_element()或click()等方法在元素上进行鼠标操作时,如果该元素被其他元素所遮挡或者不在可视区域内,就会出现该异常。此时,我们需要先把需要操作的元素移到可视区域内,或者通过JS将覆盖它的元素删掉,然后再进行鼠标操作。 另外,该异常也可能是由于页面加载缓慢或网络延迟等原因导致的。为了解决这类问题,我们可以等待一段时间再进行操作,或者使用显式等待方法等待页面元素的加载。 总之,当出现selenium.common.exceptions.movetargetoutofboundsexception时,我们需要仔细排查页面元素的位置和可见性,并采取相应的解决措施。这样才能保证我们的Web自动化测试脚本能够稳定、可靠地执行,提高测试效率和质量。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值