您可能见过的15种常见selenium异常

发表于:2019-11-21 10:59

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:vsky    来源:高阶软件测试

  01、介绍
  使用Selenium API自动化执行测试脚本并不总是很顺利,并且测试脚本开发人员会遇到不可避免的情况,常常导致破坏测试脚本,从而产生意外的测试结果。这种前所未有的测试结果或场景被称为例外。在本文中,我们将详细讨论15种常见的Selenium异常,这些异常在测试脚本开发人员使用Selenium API执行测试自动化脚本期间经常遇到。
  02、selenium中有什么例外
  Selenium中的异常可以定义为在执行测试脚本或测试套件期间发生的罕见或不匹配的事件。由于意外事件或结果(会影响和干扰测试脚本中的常规控制流)而在运行时错误中发生异常。异常也称为故障。
  03、15种常见的硒异常
  以下是测试自动化开发人员经常遇到的15种常见Selenium异常的分类:
  => ElementClickInterceptedException:
  当Selenium中的测试脚本无法找到为click事件编码的元素时,将发生此异常。此类元素可能隐藏在给定的XPath或任何其他定位器上,因此驱动程序无法找到它,因此在click事件上引发了此异常。在DOM中找到元素的正确XPath之后,可以避免此异常。
  => InvalidElementStateException:
  当我们在DOM中处于无效状态的元素上执行命令时,Selenium中会发生此异常,结果该命令无法完成所需的操作。
  => UnknownMethodException:
  如果所请求的命令与已知URL匹配,则Selenium中会发生此异常,但与此同时,它与用于相同匹配URL的方法不匹配。
  => ElementNotInteractableException:
  当要求定位器在DOM中定位一个难以处理的元素时(例如,尝试单击禁用的按钮,尝试将文本输入到只读文本框中等),将发生此异常。
  => ConnectionClosedException:
  当驱动程序在执行当前脚本时断开连接,这是Selenium API抛出的最常见的Selenium异常之一。
  => JavascriptException:
  当用户提供的正在执行的JavaScript在JavaScript的语法或编码语义方面存在问题时,在Selenium中会发生此异常
  => ElementNotSelectableException:
  当要求定位器在DOM中定位实际上是不可选择的元素(例如,尝试单击禁用的复选框或单选按钮等)时,会发生此异常。
  => InvalidCoordinatesException:
  当交互操作中的给定坐标无效并且无法被Selenium中的定位器定位时,将发生此异常。
  => InvalidSessionIdException:
  当给定的会话ID未包括在活动会话列表中时,在Selenium中会发生此异常。这实际上暗示着该会话是不活动的或当前操作不支持该会话,因此导致无效的会话异常。
  => JsonException:
  当开发人员尝试获得会话功能但无法实际创建会话时,在Selenium中会发生此异常。
  => InvalidSwitchToTargetException:
  当目标帧或编码为要切换的窗口实际上不存在时,Selenium中会发生此异常。因此,在没有目标框架或窗口的情况下,系统会引发此异常。
  => MoveTargetOutOfBoundsException:
  当提供给操作move()方法的目标无效时,在Selenium中会发生此异常。例如,将控制权从文档中抛出会导致移动目标超出范围异常。
  => UnreachableBrowserException:
  当Selenium脚本无法打开浏览器或由于某些已知或未知原因导致浏览器崩溃时,Selenium中会发生此异常。
  => NoAlertPresentException:
  当开发人员尝试切换到测试脚本中没有显示的警报时,Selenium中会发生此异常。
  => NoSuchAttributeException:
  如果在定位器选择的元素的当前DOM中找不到元素的属性,则Selenium中会发生此异常。
  04、总结
  当使用Selenium WebDriver并出现以上15种常见Selenium异常中的任何一个时,请不要惊慌,只需阅读针对这些异常提供的说明并寻求补救措施即可。这些Selenium异常是测试脚本开发人员通常收到的,识别出这些异常后,在解决了实际的根本原因或以最合适的方式从DOM中选择了元素及其属性之后,可以很容易地解决它们。
  
      本文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号