selenium

Selenium4 Alpha-期望什么?

早在2018年8月,整个测试自动化社区就受到了一个重大新闻的打击:Selenium的创始成员Simon Stewart在班加罗尔Selenium会议上正式确认了Selenium 4的发布日期和一些重要更新。 世界最受欢迎的Web测试自动化框架的4.0版本计划于2018年圣诞节之前发布。

稍有延迟,Selenium 4.0 Alpha版本发布了,可以从Selenium官方网站下载javascript。 让我们回顾一下Selenium会议上宣布的功能以及此版本中提供的一些改进和附加功能。

为什么Selenium4.0很重要

如果您认为测试自动化工程师是世界上唯一应该关注Selenium重大更新的人员,那么您是错的。当然,Selenium已成为实现自定义自动测试的行业标准,并且被认为是每个Web应用程序的首选解决方案,而该解决方案已经超出了手动测试可以解决大多数问题的方法。但是经常被遗忘的是,严重依赖Selenium的企业不仅是在团队中拥有自动化QA工程师的企业,还是那些集成了基于Selenium的无代码自动化测试工具的企业。

基于Selenium的无代码测试已成为意识到自动化的重要性但没有内部质量保证专家能够实现自动化的每个企业的真正救星。 此类工具不仅使对Web浏览器有基本了解的任何人都可以进行部署,而且还使运行回归测试,进行综合监视和负载测试成为可能,而无需任何Selenium框架知识。

此类无代码自动化软件的完美示例是CloudQA 。 在Selenium之上,我们开发了一种工具,该工具需要团队的零努力,与第三方应用程序的集成,比以往任何时候都更容易构建测试用例,24/7来监控您的网页性能,并且成本比租用一个初级手动测试仪。

如果您想了解有关基于Selenium的无代码自动化工具的好处的更多信息,请获取免费的演示。

Selenium4的重大变化

让我们来看看Selenium 4.0 Alpha版本的主要变化-

W3C WebDriver标准化

首先,Selenium 4 WebDriver是完全W3C标准化的。 WebDriver API在Selenium之外已变得越来越重要,并已在多种自动化工具中使用。 例如,诸如Appium和iOS Driver之类的移动测试工具在很大程度上依赖于它。 W3C标准还将鼓励WebDriver API的不同软件实现之间的兼容性。

这是Selenium Grid与早期版本中的Driver可执行文件进行通信的方式:

Selenium 3.x中的测试通过本地端的JSON有线协议与End节点处的浏览器通信。 这种方法需要对API进行编码和解码。

通过我们期望在Selenium 4中看到的更新,该测试将直接进行通信,而无需通过W3C协议对API请求进行任何编码和解码。 尽管JAVA绑定将向后兼容,但重点仍将更多地放在W3C协议上。 JSON有线协议将不再使用。

W3C WebDriver规范有多个贡献者,整个过程可以在GitHub上看到。

Selenium4 IDE TNG

Chrome的Selenium IDE支持现已可用。 您可以从以下网址下载它:https: //selenium.dev/selenium-ide/

众所周知,Selenium IDE是一种记录和回放工具。 现在它将具有以下更加丰富和高级的功能:

  • 新的插件系统。 任何浏览器供应商现在都可以轻松插入新的Selenium IDE。 您将能够拥有自己的定位器策略和Selenium IDE插件。
  • 新的CLI运行器。 它将完全基于NodeJS,而不是基于HTML的旧运行器,并将具有以下功能:
    • WebDriver播放。

改进的Selenium网格

与Selenium Grid合作过的任何人都知道设置和配置有多困难。 Selenium Grid支持在具有并行执行功能的不同浏览器,操作系统和机器上执行测试用例。

Selenium Grid有两个主要元素:集线器和节点。

集线器充当服务器,是控制网络中所有测试机的中心点。 在Selenium Grid中,只有一个中心根据功能匹配将测试执行分配给特定节点。

简而言之,Node是实际运行测试用例的测试机器。

有关Selenium Grid的更多详细信息,建议阅读有关Selenium Grid的完整官方教程。

到目前为止,Selenium Grid的设置过程通常会导致测试人员难以将连接节点连接到集线器。

在Selenium 4中,由于不再需要分别设置和启动集线器和节点,因此网格体验变得轻松便捷。 启动Selenium服务器后,网格将同时充当集线器和节点。

Selenium提供三种类型的网格-

  1. 独立模式
  2. 集线器和节点
  3. 完全分布式

新的Selenium服务器jar包含运行网格所需的所有内容。 它具有所有依赖性。 新的网格还带有Docker支持。 目前,docker集成未使用UNIX域套接字,因此请确保docker守护程序正在侦听端口2375。

有关更多详细信息,请参阅-https ://github.com/SeleniumHQ/selenium/wiki/Selenium-Grid-4

更好的可观察性

“被动可观察性是进行描述性追踪的能力。”–西蒙·斯图尔特

现在,可观察性,日志记录和调试不再局限于DevOps。 作为即将发布的版本的一部分,将改进带有钩子的请求跟踪和日志记录,以使自动化工程师可以进行调试。

刷新文档

文档在任何项目的成功中都起着关键作用。 自Selenium 2.0发行以来,Selenium文档尚未更新。 这意味着,过去几年中尝试学习Selenium的任何人都必须使用旧的教程。

因此,自然而然地,SeleniumHQ承诺将与4.0版本一起提供给我们的最新文档已成为测试自动化社区中最受期待的Selenium更新之一。

Selenium 4.0 Alpha版本的改进-

ChromiumDriver和DevTools:

在Selenium 3中,EdgeDriver和ChromeDriver具有从RemoteWebDriver类继承的自己的实现。 在Selenium 4中,Chromedriver和EdgeDriver继承自ChromiumDriver。 ChromiumDriver类具有用于访问开发工具的预定义方法。 考虑下面的代码片段-

上面的代码创建到给定URL的会话,并执行javascript打印消息。 DevTools是一个类,具有用于获取开发人员选项的方法的类。

DevTools还可以用于性能评估并获取页面加载时间。

更好的窗口和标签管理

Selenium 4现在具有可以同时在两个不同的窗口上工作的功能。 当我们要导航到新窗口(或选项卡)并在那里打开其他URL并执行某些操作时,此功能特别有用。

newWindow()方法根据其参数中指定的WindowType打开一个新窗口或选项卡。

相对定位器

在Selenium 4 alpha版本中,我们还可以获得相对于任何其他定位器的定位器。

  • toLeftOf():位于指定元素左侧的元素。
  • toRightOf():位于指定元素右侧的元素。
  • above():相对于指定元素位于上方的元素。
  • below():相对于指定元素位于下方的元素。
  • near():元素距离指定元素最多50个像素。 像素值可以修改。

全屏快照

现在,我们可以在Firefox中使用getFullPageScreenshotAs()方法获取完整的屏幕截图。 但是,我们无需将其类型转换为“ TakesScreenshot”界面,而是需要将其类型转换为FirefoxDriver实例。

文件src =((FirefoxDriver)驱动程序).getFullPageScreenshotAs(OutputType.FILE);

可能会有一些更有趣的功能和改进,因此继续探索!

翻译自: https://www.javacodegeeks.com/2019/12/selenium-4-alpha-what-to-expect.html

selenium

selenium_Selenium4 Alpha –期望什么?相关推荐

  1. selenium 4_Selenium4 Alpha –期望什么?

    selenium 4 Selenium4 Alpha-期望什么? 早在2018年8月,整个测试自动化社区就受到了一个重大新闻的打击:Selenium的创始成员Simon Stewart在班加罗尔Sel ...

  2. 硒4 Alpha –期望什么?

    硒4 Alpha-期望什么? 早在2018年8月,整个测试自动化社区就受到了一个重大新闻的打击:Selenium的创始成员Simon Stewart在班加罗尔Selenium会议上正式确认了Selen ...

  3. 学习在UE中使用RVT(RuntimeVirtualTexture)将物体与地形混合过渡

    前言 当物体放在地形上并与地形有穿插时,其交界处通常会看到硬接缝.在以前,使用RenderTargets是一个解决方案:将地形等信息渲染到贴图上,其他物体就可以采样这张贴图了,随后根据接近地形的程度, ...

  4. 新版本的Selenium 4 Alpha会有什么期望?

    我们所有人都属于测试领域,他们熟悉Selenium,Selenium是业界最流行的开源自动化工具之一. Selenium的创始成员Simon Stewart在2018年8月正式宣布Selenium 4 ...

  5. 强化学习(五) - 时序差分学习(Temporal-Difference Learning)及其实例----Sarsa算法, Q学习, 期望Sarsa算法

    强化学习(五) - 时序差分学习(Temporal-Difference Learning)及其实例 5.1 TD预测 例5.1 回家时间的估计 5.2 TD预测方法的优势 例5.2 随机移动 5.3 ...

  6. [概统]本科二年级 概率论与数理统计 第七讲 期望、方差与相关性

    [概统]本科二年级 概率论与数理统计 第七讲 期望.方差与相关性 期望及其性质 方差.协方差.相关性系数 两两独立.独立与相关性 虽然之前就分别介绍过离散型随机变量与连续型随机变量的期望与方差,这一讲 ...

  7. Alpha 冲刺报告(3/10)

    Alpha 冲刺报告 队名:洛基小队 峻雄(组长) 已完成:开始编写角色的移动脚本 明日计划:继续学习并进行脚本编写 剩余任务:物品背包交互代码 困难:如何把各个模块的脚本整合起来 --------- ...

  8. 真人拳皇项目Alpha阶段的回顾——史经浩

    经过一个多月艰辛的努力,我们小组终于在1/14按时发布了真人拳皇的alpha版.按照计划,这一周是总结过去这段时间的经验教训,为即将到来的beta阶段作准备.回顾刚刚过去的一个多月,从plan阶段的天 ...

  9. 【学习笔记】信息学竞赛中的概率与期望小结

    信息竞赛--概率与期望 事件 事件的蕴含.包含 事件的互斥 事件的对立 事件的和(并) 事件的积(交) 事件的差 概率 事件的独立性 全概率公式 贝叶斯公式 概率DP(竞赛中的考察) 期望(竞赛中的考 ...

最新文章

  1. 团队需要Scrum Master做这六件事-Scrum中文网
  2. SQL Server中的小技巧(重复、替换、截取、去空格、去小数点后的位数)
  3. 电脑图标有阴影如何去除
  4. python怎么读取列表-详解Python如何获取列表(List)的中位数
  5. python工作好找吗-python工作好找吗
  6. Java黑皮书课后题第10章:*10.17(平方数)找出大于Long.MAX_VALUE的前10个平方数。平方数是指形式为n^2的数
  7. 《Python高效开发实战》实战演练——开发Django站点1
  8. 聚集索引和填充因子fill factor的设置,减少死锁
  9. Jzoj5317 Func
  10. python 矩阵获取行数_4个最佳项目创意的代码片段和示例,旨在为Python和机器学习构建出色的简历!...
  11. jq禁用html标签
  12. FINEMVC重定向和显示合计
  13. paip.jdbc 连接自动释放的测试
  14. REDIS学习总结(一)单机集群搭建
  15. 正则表达式 - 中文、英文姓名匹配
  16. arduino+无源蜂鸣器制作音乐《诺言》(实战篇)——从识读简乐谱到程序编写
  17. 编写REG注册表文件
  18. scp在命令行中带密码远程拷贝文件
  19. 第二篇supervisor集群管理工具cesi安装详解-如何安装supervisor-cesiwebUI
  20. 产品架构能力之一 业务架构图

热门文章

  1. Nessus详细安装教程(Windows版)
  2. 7-16 约分最简分式
  3. ping www.baidu.com虚拟机中ping百度
  4. 『递推』[AGC043D] Merge Triplets
  5. 前端技术学习:语义化
  6. 在mysql中创建和调试存储过程
  7. 数据科学家分享:人工智能在图像识别技术上应用
  8. python两张图片无缝合成一张_Python将多张图片进行合并拼接
  9. 【题目】一根长度为M厘米的木棍上有n只蚂蚁,每只蚂蚁要么朝左爬,要么朝右爬,速度为每秒1厘米。当两只蚂蚁对撞时,二者同时掉头(掉头时间忽略不计)。给出每只蚂蚁的初始位置和朝向,计算T秒后每只蚂蚁的位置
  10. idea使用Protobuf插件