当前位置: 首页 > news >正文

培训网站开发wordpress 指定模板

培训网站开发,wordpress 指定模板,山西运城市建设局网站,wordpress统一网站图片大小selenium自动化测试开发人员将始终在编写代码时牢记不同的场景#xff0c;但是在某些情况下#xff0c;实现可能无法按预期工作。 相同的原则也适用于测试代码#xff0c;该代码主要用于测试现有产品的功能#xff0c;发现bug并确保产品100#xff05;不受bug影响。 正确… selenium自动化测试 开发人员将始终在编写代码时牢记不同的场景但是在某些情况下实现可能无法按预期工作。 相同的原则也适用于测试代码该代码主要用于测试现有产品的功能发现bug并确保产品100不受bug影响。 正确地说真理总是比小说更陌生当您执行Selenium测试自动化时您会目睹很多“陌生的事物”。 在执行测试代码时遇到的这些事情或场景可能不是很常见但是测试实现应该足够健壮以应对此类场景。 这些场景被恰当地称为例外在使用Selenium进行自动浏览器测试时您会遇到许多此类例外。 Selenium异常广泛用于处理错误情况并避免Web应用程序故障。 尽管在所有Selenium WebDriver代码中都可能发生许多Selenium异常但是某些Selenium异常特定于框架支持的编程语言例如JavaCPython等。此博客介绍了常见的Selenium异常以及特定于语言的异常一个详尽的列表在代码中遇到异常时可能会有所帮助。 到本博客结尾您将获得有关执行自动浏览器测试相关方案时经常使用的Selenium异常的完整介绍。 Selenium异常简介 异常也称为故障是在程序执行过程中发生的前所未有的事件。 发生异常时正常程序的执行将停止并执行相应的异常处理程序。 如果没有异常处理程序来处理该特定异常程序将返回引发异常的调用函数最终导致程序终止。 由于Selenium测试自动化是在不同的目标平台设备和Web浏览器上执行的 测试代码的行为可能会因浏览器类型或浏览器版本而异。 例如某些属性可能是特定于浏览器的并且如果在执行自动浏览器测试的浏览器中不存在特定属性则会引发异常。 通用属性名称也可以是特定于浏览器的如果目标浏览器上没有相同的属性则可能导致Selenium异常例如NoSuchAttributeException。 正确处理异常是一个好习惯因为未处理的异常会导致程序失败从而最终影响产品体验。 异常对象包含有关异常类型调用堆栈的信息以及其他有用的信息这些信息将有助于调试并使代码更加安全。 Selenium自动化的11种最佳单元测试框架 Selenium异常类别 Selenium异常分为两大类-已检查的异常和未检查的异常。 这些异常根据捕获异常的时间即编译时间或运行时进行分类。 A.检查异常 Selenium测试自动化中的已检查异常是在测试代码实现过程中处理的例如NoSuchAttributeException等。已检查异常的处理发生在编译时本身。 如果某些方法引发了检查的异常则最好定义一个处理该特定异常的处理程序。 B.未检查的异常 Selenium测试自动化中的未经检查的异常在运行时发生并且与检查的异常相比会产生严重的影响。 例如ElementNotVisibleExceptionMoveTargetOutOfBoundsException等。 Java中的异常可以选中或取消选中而C 中的所有异常都选中。 在自动化的浏览器测试相关方案中经常会遇到未经检查的异常因为这些测试涉及Web浏览器和操作系统的不同组合和版本。 另请阅读 使用Selenium WebDriver测试自动化的22条实用技巧 Selenium例外备忘单 在本地或远程Selenium网格上执行自动浏览器测试时您会遇到不同类型的异常。 一些Selenium异常特定于用于编写Selenium测试自动化方案的编程语言。 常见的Selenium异常 以下是所有Selenium WebDriver代码中可能发生的一些常见Selenium异常。 ElementClickInterceptedException 由于以某种方式隐藏了接收到Click命令的元素因此无法正确执行Element Click命令。 ElementNotInteractableException 即使目标Web元素存在于DOM上但与该元素的交互将击中另一个Web元素时也会抛出此ElementNotInteractableExceptionSelenium异常。 ElementNotSelectableException 当目标元素存在于DOM上但由于无法选择而无法与之交互时就会发生此Selenium异常。 例如与脚本元素进行交互时将抛出此异常。 ElementNotVisibleException Selenium异常的最常见类型即使存在web元素但不可见也会引发该异常。 由于该元素不可见因此无法与该元素进行任何交互。 在Selenium测试自动化中通常会遇到这种情况其中尝试对Web元素例如按钮标签等进行相关操作单击阅读等但是该元素从视图中隐藏了。 另一个示例是HTML中定义的具有隐藏类型的元素。 ErrorInResponseException 当服务器端发生某些问题或错误时将抛出此Selenium异常。 当用户名和访问密钥的错误组合用于访问基于云的远程Selenium Grid与远程Web驱动程序服务器进行通信或与Firefox扩展或Chrome附加组件进行通信时可能会发生这种情况。 服务器端错误的一些常见响应代码是 401 –未经授权 400 – BadRequest 500内部服务器错误 409 –冲突 403 –禁止 405 – MethodNotAllowed 如果IME输入法引擎的激活由于某种原因失败则抛出此异常。 解决此问题的理想方法是检查计算机上是否有IME支持。 ImeNotAvailableException 如果IME输入法引擎不可用则抛出此Selenium异常。 在测试计算机上没有IME支持的情况下会为每个与IME相关的方法引发ImeNotAvailableException。 InsecureCertificateException 过期或无效的TLS证书的使用导致用户代理引发证书警告。 NoSuchFrameException 当要切换到的帧不存在时将引发NoSuchFrameException Selenium异常。 为避免此类Selenium异常建议在自动浏览器测试代码中添加有关切换到框架的方式的健全性检查。 检查使用的帧索引是否正确。 可以添加几毫秒ms的额外等待时间以确保完成帧加载。 NoSuchWindowException 当切换到的窗口目标不存在时抛出此异常。 通过使用window_handles可以解决这些情况以便获得当前的活动窗口集。 窗口句柄可用于对窗口句柄执行适当的操作。 RemoteDriverServerException 当浏览器功能的错误组合/字段导致服务器不发送响应时将引发此异常。 为了避免此类Selenium异常从平台浏览器平台浏览器浏览器版本等有效组合的角度全面检查Selenium浏览器功能非常重要。 ScreenshotException 顾名思义当无法进行屏幕截图时会抛出此Selenium异常。这种情况很可能出现在网页/ Web应用程序中其中用户输入了用户名密码银行信息等敏感信息。 在这种情况下由于屏幕截图限制无法捕获屏幕截图 在此屏幕快照限制会阻止捕获或记录屏幕。 SessionNotCreatedException 当新会话的创建不成功时会发生此异常。 InvalidArgumentException 当传递的参数无效或格式错误时将引发InvalidArgumentException异常。 更好的做法是使用Selenium测试自动化代码中的适当等待时间以毫秒为单位来验证是否加载了被测网页。 InvalidCookieDomainException 如果尝试添加Cookie的URL /域与当前URL不同则抛出Selenium异常。 要处理此异常您应该导航到必须在其中添加Cookie的正确URL。 InvalidCoordinatesException 将错误的坐标提供给交互操作时将抛出此特定异常。 这也意味着依赖于鼠标位置的动作例如单击之前没有进行移动操作或者为移动操作提供了无效的坐标。 InvalidElementStateException 当命令无法完成时会抛出此Selenium异常因为该元素处于无效状态或未启用该元素来执行该操作。 如果在不可编辑且不可重置的Web元素上尝试执行诸如清除元素之类的操作则可能会导致这种情况。 要在Selenium测试自动化中处理此类异常建议在对该元素执行所需的操作之前等待该元素被启用。 InvalidSelectorException 如果在不同版本之间更改了选择器名称则会偶然使用无效或不正确的选择器来定位Web元素。 如果用于查找Web元素的选择器未返回WebElement则抛出InvalidSelectorException。 当XPath表达式是选择器并且XPath无效时通常会发生这种情况。 这导致无法找到所需的Web元素。 InvalidSessionIdException 如果在Selenium测试自动化实现中使用的会话ID无效即不在当前活动的会话列表中则抛出此异常。 如果会话处于非活动状态或从未存在过则可能发生这种情况。 InvalidSwitchToTargetException 如果要切换到的框架或窗口目标无效则会出现此Selenium异常。在切换到该框架之前使用“检查工具”验证目标框架的XPath非常重要。 JavascriptException 执行JavaScript代码时出现问题时抛出此异常。 NoAlertPresentException 当切换到屏幕上尚不存在的警报时会发生这种情况。 处理警报的理想方法是检查警报是否存在然后在Alert类上调用所需的操作。 MoveTargetOutOfBoundsException 如果提供给ActionChainsmove方法的目标超出范围即无效或超出文档/网页则抛出Selenium异常。 在调用ActionChains类的move方法之前应始终检查我们尝试移动的位置并仅在屏幕上存在该位置时才执行该操作。 NoSuchAttributeException 这是在执行自动浏览器测试时肯定会遇到的少数Selenium异常之一。 如果找不到元素的属性则抛出NoSuchAttributeException。 要处理此异常应为执行测试的浏览器检查属性的存在。 同一属性的不同属性名称可能因浏览器而异处理效率低下可能导致此异常。 避免发生此异常的另一种方法是通过基于DOM上元素的新详细信息来更改属性。 NoSuchCookieException 当当前浏览上下文的活动文档的关联cookie中不存在与给定路径名匹配的cookie时会发生此Selenium异常。 NoSuchElementException 当用于访问元素的定位器无效或试图对不在DOM上的元素执行操作时将引发NoSuchElementException。 在这两种情况下都不会找到该元素。 要处理此Selenium异常应检查选择器是否正确如果正确则还需要额外等待以确保WebElement的外观。 StaleElementReferenceException 当对元素的引用不在页面的DOM上时就会发生Selenium异常。 简而言之该元素已腐烂或陈旧。 此特定Selenium异常的某些可能原因是 该元素可能在刷新的iFrame中。 该页面可能已刷新并且要访问的元素不再是当前页面的一部分。 由于元素已定位因此可以删除该元素并将其重新添加到屏幕。 解决此异常的一种可能解决方案是使用动态XPath在循环中查找所需的元素并在找到元素后中断循环。 TimeoutException 当当前正在执行的命令未在预期的时间范围内完成时就会发生TimeoutException。 解决此异常的可能解决方案是增加命令完成执行的等待时间。 但是应该为等待时间选择理想值否则可能会延迟进一步执行。 UnableToSetCookieException 在Selenium WebDriver无法设置cookie的情况下会发生此Selenium异常。 可以添加额外的等待时间以便为该域加载Cookie。 UnexpectedAlertPresentException 当出现意外警报时会发生。 发生此异常的常见原因是由于页面上出现模态窗口/弹出窗口而导致Selenium WebDriver命令被阻止。 UnexpectedTagNameException 如果支持类无法找到所需的Web元素则会发生此Selenium异常。 UnknownMethodException 这是常见的Selenium异常之一当请求的命令能够匹配已知URL但无法匹配该URL的方法时就会发生这种异常。 要处理此异常您应该检查与URL一起传递的方法是否有效。 WebDriverException 这是由于Selenium WebDriver与目标Web浏览器的绑定不兼容而发生的基本WebDriver异常。 要处理此异常您应该下载与相应的Web浏览器兼容的Selenium WebDriver库。 Java中的Selenium异常 一些Selenium异常特定于用于测试自动化的特定编程语言 。 除了上一节中介绍的Selenium中的常见异常外以下是特定于Java语言的Selenium异常 ConnectionClosedException 与Selenium WebDriver的连接丢失时将引发此异常。 ErrorHandler.UnknownServerException 服务器在没有堆栈跟踪的情况下返回错误时它将用作占位符。 JsonException 当您能够获得未创建会话的会话功能时将引发此异常。 NoSuchSessionException 在执行WebDriver.quit后调用命令时将抛出此Selenium异常。 由于WebDriver实例不再存在因此对该特定WebDriver实例的任何操作都将返回此异常。 NotFoundException 当DOM上不存在任何元素时将发生此异常。 ScriptTimeoutException 当ASync脚本的执行未在给定的时间限制内完成时将引发该错误。 UnhandledAlertException 此Selenium异常是WebDriver异常的子类。 即使存在警报WebDriver也无法执行警报操作时将引发该事件。 UnreachableBrowserException UnreachableBrowserException表示与由自动化测试代码控制的Web浏览器通信时出现问题。 也可能是由于与Selenium服务器通信时出现问题。 如果远程Selenium WebDriver或Selenium网格的服务器地址无效则可能发生这种情况。 浏览器实例还可能在Selenium测试自动化周期中死亡。 UnsupportedCommandException 当远程Selenium WebDriver发送的命令无效时抛出此异常。 NoSuchContextException 此异常在移动测试中发生并由ContextAware.contextString引发 NotConnectedException 当在规定的时间段内尝试连接后对特定主机或远程Selenium网格的尝试失败时将引发此Selenium异常。 SeleniumException 顾名思义当Selenium命令失败时会抛出Selenium异常。 UnableToCreateProfileException 当使用某些自定义配置文件打开要执行Selenium测试自动化的浏览器但WebDriver或浏览器在支持该配置文件时出现问题时将发生UnableToCreateProfileException。 要处理此异常建议检查安装的Selenium WebDriver版本以及Web浏览器支持的配置文件。 UrlChecker.TimeoutException 当浏览器尝试一段时间后无法打开被测URL时抛出此异常。 要处理此Selenium异常必须在尝试在浏览器测试中中打开URL之前检查URL的正确性。 C中的Selenium异常 特定于C的Selenium异常是 DriverServiceNotFoundException 当在其上执行自动浏览器测试的元素不可见时将引发DriverServiceNotFoundException类下的异常。 要处理此异常仅在确认Web元素的存在可见性之后您可以等待页面完全加载并执行Selenium WebDriver命令。 WebDriverTimeoutException WebDriverTimeoutException类表示在执行操作时发生错误时引发的异常。 奖励积分我们在此提供一个韵母号码 XPathLookupException XPath查找过程中发生错误时引发的Selenium异常。 常见JavaScript错误以及如何处理 处理Selenium异常 Selenium异常的处理方式因一种编程语言而异。 但是最重要的是应该处理Selenium异常因为该异常提供了非常关键的信息。 以下是在流行的编程语言中如何处理Selenium异常的简要要点 Python –如果您使用Python进行自动浏览器测试 则selenium.common.exceptions中提供了异常类应在使用该包中的任何命令之前将其导入。 异常是使用try ... except块进行处理的其中try块使您能够测试代码是否存在错误except块可以帮助您处理错误并且无论try块是否引发错误都将执行可选的finally块。 Java – Selenium异常是使用try-catch方法在Java中处理的。 try块是该块的开始并且catch块包含解决异常的实现。 catch块放置在try块的末尾。 与Python一样您也可以使用finally关键字创建一个代码块无论是否发生异常该代码块都会执行。 C –与Java一样Selenium异常使用try-catch语句处理。 try块包含可能导致异常的代码。 在成功执行代码或引发异常之前将执行try块下的代码。 catch块包含不同异常的处理程序。 另请阅读 Selenium Automation中的常见挑战及其解决方法 总而言之 异常在开发中很常见但必须谨慎处理。 了解不同的Selenium异常很重要因为这有助于开发更强大的自动浏览器测试脚本。 Selenium测试自动化中的异常处理有助于识别与浏览器/平台/设备有关的跨浏览器兼容性问题。 您用于处理Selenium异常的机制有哪些请在注释部分保留您的经验…… 快乐测试 翻译自: https://www.javacodegeeks.com/2020/05/49-most-common-selenium-exceptions-for-automation-testing.htmlselenium自动化测试
http://www.yutouwan.com/news/286127/

相关文章:

  • 做网站免费服务器哪家好php网站文件下载怎么做
  • 内链好的网站柳州做网站那家好
  • 营销型网站建设步骤百度竞价推广方案的制定
  • 网站建设费合同公司企业官网
  • 行业排名查询网站网站去哪里做
  • 种子搜索网站开发怎么改wordpress的html5
  • 博客用来做微网站flash网站的优势
  • 专做美妆的网站网页设计模板素材简单
  • php 网站换空间wordpress插件大全
  • 摄影网站有哪些功能罗村建网站
  • 常宁市网站建设安徽网络建站
  • 简述你对于网站建设的认识做电商网站的参考书
  • 兰州网站建设哪家专业外贸网站推广 上海
  • 深圳做网站建设比较好的公司网站网站建设策划书
  • 定州网站建设兼职网站建设服务费是否无形资产
  • 做高端网站的公司民治专业做网站公司
  • 网站建设死人接单电子商务网站建设预算表
  • 自建站推广网站app软件
  • 北京专业网站改版国内做的比较好的数据网站
  • 建一个大网站需要的时间厦门app定制公司
  • 株洲市网站建设威海网站优化推广
  • 做网站py和phpwordpress ul id乱码
  • 网站设计品地图销售网站
  • 沈阳看男科的权威医院济南seo推广价格
  • wordpress获取作者的角色seo到底是做什么的
  • 开发网站去哪里学网站做优化需要多少钱
  • wordpress5.21开启多站点如何做网站竞品分析
  • 网站开发 后端返回前端一个地址 有什么用网站推广技巧有哪些?
  • 网站公司 转型宁波seo关键词优化制作
  • 青岛哪家做网站的公司好cpc引流做网站cpa推广