阅读原文git
Simon Stewart(Selenium的创始成员)在班加罗尔的Selenium大会议上正式确认了Selenium4.0的发布日期和一些主要更新。咱们先来提早了解一下Selenium 4.0将会带来哪些变化。github
<br> ### Selenium 4.0发布会日期web
熟悉Selenium 3.0发布背后故事的人知道,早2013年Selenium团队就放出消息将在圣诞节发布Selenium 3.0,但是,直到2016年Selenium3.0才正式发布会,它比最初发布时承诺的时间晚了三年。浏览器
Selenium4.0一样承诺要在圣诞节发布,但这显然不多是2018年的圣诞节了。截至今天(2019年2月),咱们仍然没有看到Selenium4.0发布的消息。安全
没有任何创始成员对具体发布日期的进行官方更新,但咱们在官方Github上看到,贡献者只完成了须要完成任务的一半,所以咱们能够假设发布可能要到2019年圣诞节才会到来。服务器
在这里看到Selenium 4.0 项目的进展: https://github.com/SeleniumHQ/selenium/projects/2网络
<br> ### 为何Selenium 4.0很重要?框架
若是你认为自动化测试工程师是世界上惟一关心Selenium更新的人,那你就错了。工具
Selenium已经成为实现自动化测试的行业标准,成为Web应用程序进行自动化测试的首选,用于辅助完成大量手工测试。学习
可是常常被忽略的是,那些严重依赖Selenium的企业,他们不只是拥有自动化QA工程师的团队,他们所使用的无代码自动化工具也是基于Selenium开发的。例如RobotFramework,它可让不懂代码的同窗也可使用Selenium进行Web自动化测试。
基于Selenium的无代码自动化工具已经成为每一个企业真正的救命稻草,它们意识到自动化的重要性,但没有可以实施自动化的内部QA专家。这些工具不只可使任何对Web浏览器有基本了解的人员进行部署,并且能够在不了解Selenium框架的状况下运行回归测试,进行质量监控和负载测试。
<br> ## Selenium 4.0 带来了哪些大的改变?
根据Simon Stewart在Selenium大会上的演示,如今,让咱们来看看SeleniumHQ承诺在即将发布的版本中添加或更新了哪些功能。
<br> ### W3C WebDriver 标准化
首先,Selenium 4 WebDriver将彻底符合W3C标准。WebDriverAPI已经发展成为Selenium之外的相关产品,并已经应用于多种自动化工具中。例如,像Appium和iOSDriver这样的移动测试工具严重依赖它。W3C标准还将鼓励WebDriver API的不一样软件实现之间的兼容性。
在Selenium 3.x 版本中,经过协议传输JSON格式的指令到不一样的分支节点,而后,再经过浏览器驱动,驱动不一样的浏览器执行,这种方法在指令传输的过程当中须要API的编码和解码。
经过在Selenium 4.0中看到的更新,指令将直接进行通讯,而无需经过W3C协议对API请求进行任何编码和解码。虽然JAVA绑定将向后兼容,但重点仍将放在W3C协议上。将再也不使用JSON格式的指令。
W3CWebDriver规范有多个贡献者,整个过程能够在GitHub上看到。 https://github.com/w3c/webdriver
<br> ### Selenium IDE
你们都知道,Selenium IDE是一个录制和回放浏览器插件,它支持Chrome浏览器。如今将提供如下更丰富和更高级的功能:
新的插件系统:
任何浏览器厂商均可以轻松的实现Selenium IDE插件的支持。你将可以拥有本身的定位器策略和Selenium IDE插件。
新的CLI运行器。
它将彻底基于NodeJS,而不是旧的基于HTML的运行程序,并将具备如下功能: 一、WebDriver回放。新的SeleniumIDE运行器将彻底基于WebDriver。 二、并行执行。新的CLI运行程序还将支持并行测试用例的执行,并将提供有用的信息,如执行时间,以及多测试用例经过和失败。
<br> ### Selenium Grid 的改进
使用过Selenium Grid的同窗都知道设置和配置它挺麻烦的。 Selenium Grid支持在不一样的机器上执行测试用例,能够用于验证不一样的操做系统、浏览器下用例的执行状况。
SeleniumGrid有两个主要部分:Hub和Node。
Hub充当服务器,是控制网络中全部测试机器的中心点。在Selenium Grid中,只有一个Hub根据环境匹配将测试执行分配给不一样的Node。
简而言之,Node是测试用例实际运行的测试机器。
在Selenium 4.0中,SeleniumGrid体验有望变得流畅和简单,由于再也不须要单独设置和启动Hub和Node。一旦启动Selenium服务器,SeleniumGrid将充当Hub和Node。
Selenium4.0将提供更稳定的Selenium Grid,以消除全部线程安全漏洞,并更好地支持Docker。
在大会上还特地强调了Selenium 4.0的将会提供一个更加用户友好的Selenium Grid UI,其中包含Session运行、容量等的全部相关信息的展现。
<br> ### 更好的可观察性
“Passiveobservability is the ability to do descriptive tracing.”
– Simon Stewart
可观察性,日志记录和调试如今再也不局限于DevOps。做为即将发布版本的一部分,将改进对钩子的请求跟踪和日志记录,以便为自动化工程师提供调试。
<br> ### 更新的文档
文档在任何项目的成功中起着关键做用。自从Selenium 2.0发布以来,Selenium文档还没有更新。Selenium官网上的内容并没作到很好的同步,在过去的几年里,任何试图学习Selenium的同窗都不得不使用旧的教程。
所以,SeleniumHQ承诺提供的更新和最新文档,这是Selenium 4.0版本,测试自动化社区中最受期待的Selenium更新之一。
同时,您仍然能够访问全部现有的Selenium文档。 https://seleniumhq.github.io/docs/
<br> ### 总结:
咱们列出了Selenium 4最终发布时咱们可能会看到的全部重大变化。若是你有兴趣了解更多关于框架背后的故事,它的创始成员以及有关Selenium将具备的新功能的更多信息,咱们建议观看2018年Selenium会议的视频,会议视频: