Selenium 4 Beta 1 发布
我们非常高兴地宣布 Selenium 4 的第一个 beta 版本发布。我们为 Java、.Net、Python、Ruby 和 JavaScript 发布了这个版本,因此如果您使用任何这些语言,请从您选择的软件包管理器中获取它!
这是许多人,不仅是项目 TLC,而且是数百人的辛勤工作的结晶:自我们发布 Selenium 3.141.59 以来,最后统计有 205 人。非常感谢所有帮助实现这一目标的人!
那么,Selenium 3 以来发生了什么变化?答案是“变化不大”以及“几乎所有都变了”。
“变化不大”的意思是,如果您的测试现在正在使用 Selenium 3,您应该能够直接将依赖项升级到 Selenium 4。您会发现那些被标记为“已弃用”的东西现在已经消失了,但是上一个 Selenium 3 版本和这个版本之间有很长的时间,这使得您有足够的时间尝试寻找替代方案。
如果这不起作用,请告诉我们!我们努力确保版本之间的兼容性,但我们可能遗漏了一些东西。
您可能想要做的为更新做准备的一件事(您可以在更新依赖项本身之前进行!)是更新您需要的驱动程序。特别是,请将 geckodriver 更新到 0.29.0 或更高版本。
“几乎所有都变了”的意思是,在底层发生了重大变化。我们已经重写了 Selenium 服务器,使其不仅可以在熟悉的“独立”和“中心节点”模式下工作,还可以在新的“分布式”模式下工作,这使得它更容易以可扩展的方式部署到 Kubernetes 等。
新的服务器还支持 OpenTelemetry,并暴露一个 GraphQL 端点,因此,比以往任何时候都更容易弄清楚 Grid 中发生了什么,并跟踪错误发生的原因。
并非所有更改都在服务器端。我们最近写了一篇关于您可以在测试中使用的 Selenium 4 中的新功能的文章,但一些主要亮点是
- 相对定位器,用于使用对我们人类有意义的术语查找元素。
- 拦截网络流量的能力
- 使用基本或摘要身份验证进行身份验证。
我们将在以后的博客文章中告诉您更多关于这些功能的信息,并且随着我们改进文档。
如果这听起来很有趣,请从您喜欢的软件包管理器(maven、nuget、npm、pip 或 gem)或直接从 Selenium 网站下载 beta 版本。