早在2018年8月,整个测试自动化社区就发生了一件重大新闻:Selenium的创始成员Simon Stewart在班加罗尔Selenium会议上正式确认了Selenium 4的发布日期和一些重要更新。

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

为什么Selenium 4.0很重要

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

基于Selenium的无代码测试已成为一种趋势。此类工具不仅使对Web浏览器有基本了解的人都可以进行部署自动化测试,而且还使运行回归测试,进行综合监视和负载测试更加容易,而无需任何Selenium框架知识。

此类无代码自动化软件的完美示例是CloudQA,有兴趣的童鞋可以自行搜索了解。

Selenium 4.0的重大变化

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

W3C WebDriver标准化

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

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

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

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

Selenium 4 IDE TNG

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

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

  • 新的插件系统。任何浏览器都可以轻松插入新的Selenium IDE。您将能够拥有自己的定位器策略和Selenium IDE插件。
    新的CLI运行器。它将完全基于NodeJS,而不是基于HTML的旧运行器,并将具有以下功能:
  • WebDriver播放。新的Selenium IDE运行程序将完全基于WebDriver。
  • 并行执行。新的CLI运行器还将支持并行测试用例执行,并将提供有用的信息,例如花费的时间,通过和失败的测试用例。

改进的Selenium网格

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

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

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

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

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

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

硒提供三种类型的网格-

  • 独立模式
  • 集线器和节点
  • 完全分布式

新的硒服务器jar包含运行网格所需的所有内容。它具有所有依赖性。新的版本还带有Docker支持。

更好的可观察性

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

更新文档

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

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

下一期将继续分享Selenium 4 Alpha版本的实践。


技术类文章精选

非技术文章精选

Selenium 4.0 Alpha更新日志的更多相关文章

  1. Selenium 4.0 Alpha更新实践

    上期讲到了Selenium 4.0 Alpha更新日志,这次来实践一下更新内容. DevTools操作更加方便. Chrome录制更加方便.(未实践) 窗口管理不在依赖一个driver. 相对定位器功 ...

  2. Docker 1.13.0 详细更新日志

    本文讲的是Docker 1.13.0 详细更新日志[编者的话]Docker发布1.13.0版本,此次版本更新内容较多,以下为该版本具体的变更. 构建 添加在构建时可以指定镜像用作高速缓存源的功能. 这 ...

  3. [转] OpenStack Kilo 更新日志

    OpenStack 2015.1.0 (Kilo)更新日志 原文: https://wiki.openstack.org/wiki/ReleaseNotes/Kilo/zh-hans 目录  [隐藏] ...

  4. Kali Liunx 2.0震撼来袭(附下载地址、新特性和更新日志)

    Kali 2.0昨天已经在BlackHat 2015 USA上正式发布了.无论是粉丝们还是Kali官方都对这个2.0版本抱有极大的期待和热情.这是第一个基于Debian Jessie的Kali版本,此 ...

  5. WeihanLi.Npoi 1.10.0 更新日志

    WeihanLi.Npoi 1.10.0 更新日志 Intro 上周有个网友希望能够导入Excel时提供一个 EndRowIndex 来自己控制结束行和根据字段过滤的,周末找时间做了一下这个 feat ...

  6. WeihanLi.Npoi 1.13.0 更新日志

    WeihanLi.Npoi 1.13.0 更新日志 Intro 在 Github 上收到 Issue 收到网友反馈希望支持自动分 Sheet 导出,有兴趣的可以参考 Issue https://git ...

  7. AgileEAS.NET SOA中间件平台更新日志 2015-04-28

    一.前言 AgileEAS.NET SOA 中间件平台是一款基于基于敏捷并行开发思想和Microsoft .Net构件(组件)开发技术而构建的一个快速开发应用平台.用于帮助中小型软件企业建立一条适合市 ...

  8. python解析git log后生成页面显示git更新日志信息

    使用git log可以查到git上项目的更新日志. 如下两个git项目,我想把git的日志信息解析成一个便于在浏览器上查看的页面. https://github.com/gityf/lua https ...

  9. Easy Sysprep更新日志-skyfree大神

    Easy Sysprep更新日志: Skyfree 发表于 2016-1-22 13:55:55 https://www.itsk.com/forum.php?mod=viewthread&t ...

随机推荐

  1. WordPress代码高亮插件SyntaxHighlighter终极使用详解

    子曰: 工欲善其事,必先利其器.作为码农一枚,再加上站长这个已经不再光鲜的称呼,岂能没有一款经济实用.操作简单.而且功能必须强大.样式也必须好看的Wordpress代码高亮插件?!作为一个视代码如生命 ...

  2. PHP读取Excel内的图片

    今天接到了一个从Excel内读取图片的需求,在网上查找了一些资料,基本实现了自己的需求,不过由于查到的一些代码比较久远,不能直接移植到自己的项目里,需要稍加改动一下. 这里介绍一下分别使用phpspr ...

  3. 用大写字母输入 Linux 命令,实现以 sudo 用户权限运行

    我们知道,一些 Linux 命令是要通过 sudo 权限才能运行的,这需要我们每次使用这些命令时在前面加一个 sudo ,十分繁琐.今天给大家介绍一个好用的工具 SUDO ,它只需要我们用大写字母键入 ...

  4. 配置SElinux环境,将SELinux设置为enforcing

    SELinux是 美国国家安全局 (NSA) 对于 强制访问控制的实现 =>可以使root受限的权限 关闭SELinux=>修改配置文件,永久生效; sed -i 's/SELINUX=e ...

  5. pandas的使用(5)

    pandas的使用(5)-- 缺失值的处理

  6. SQLite性能 - 意想不到,但又情理之中的测试结果。

    win7(64) sata2 希捷 MINGW32_NT-(/) cat: /proc/cpuinfo: No such file or directory ------ in disk ---- r ...

  7. 使用ndk交叉编译android各平台版本的第三方库

    只要弄明白了ndk-bundle的目录结构,交叉编译的基本原理就可以自行编写脚本去编译了.从仓库拿下代码包后,一般在linux平台下编译当前平台使用的库,只要使用其自动配置脚本configure进行平 ...

  8. vue项目中使用百度统计

    统计有多少人访问了自己的网站(wap端pc web端都适用),或者更细的统计网站每个页面的访问量,可以使用百度统计 百度统计传送门 按提示注册登录即可 登录后-->管理-->新增网站,配置 ...

  9. Theano at a Glance

    Theano一览 Theano是一个Python库,它允许你定义.优化和求值数学表达式,特别是具有多维数组(numpy.ndarray)的数学表达式.对于涉及大量数据的问题,使用Theano可以获得与 ...

  10. CentOS 7 Cobbler 配置 YUM仓库

    通过Cobbler配置内网YUM仓库 在上一篇Cobbler 安装中,配置好了Cobbler 下面来通过Cobbler来配置内网的YUM仓库 这里可以同步所有版本的yum源,增加内网的yum安装下载速 ...