Selenium Manager 0.4.12 的新特性,随 Selenium 4.12.0 发布

Selenium Manager 0.4.12 随 Selenium 4.12.0 一起发布。此版本旨在稳定迄今为止提供的功能,并提供一个新的相关特性:自动化 Firefox 浏览器管理。

Selenium Manager 的新版本已发布。在此版本中,我们对 Selenium Manager 的版本控制格式做出了重要决定。从现在起,Selenium Manager 将遵循与 Selenium 相同的版本。尽管如此,由于 Selenium Manager 仍处于 beta 阶段,其主版本为 0。因此,Selenium 4.12.0 随 Selenium Manager 0.4.12 一起发布。

首先,我们做出了重大努力来稳定 Selenium Manager 上已有的功能。这样,该版本就包含了与自动化驱动程序管理或缓存相关的多个错误修复。您可以在(新创建的)变更日志文件中找到 Selenium Manager 0.4.12 中实现的更改的详细信息。

此外,对于此版本,我们对 Selenium Manager 的文档页面进行了重大更新。此页面包含与自动化驱动程序和浏览器管理、配置等相关的所有详细信息。此外,它还有几个 TL;DR,总结了渴望阅读的读者的主要想法。

自动化 Firefox 管理

在上一个版本中发布了基于 Chrome for Testing 的自动化浏览器管理之后,Selenium Manager 0.4.12 通过提供自动化的 Firefox 管理继续这项工作。这样,Selenium Manager 0.4.12 允许我们管理不同的 Firefox 版本(适用于 Windows、Linux 和 macOS),使它们可以无缝地用于 Selenium。

该过程与 Chrome 相同。当运行 Selenium 的计算机中无法使用 Firefox 时,Selenium 会自动发现、下载并缓存它。如果未指定版本,则 Selenium Manager 会管理最新的稳定 Firefox 版本。此外,绑定可以使用名为 browserVersion 的浏览器选项来指定特定的 Firefox 版本(例如,114、115 等)。最后,标签 stable 允许我们显式管理当前的稳定 Firefox 版本,而标签 betadevnightly 用于不稳定的 Firefox 版本。

此功能归功于 Firefox 团队在他们的 公共存储库中维护当前版本和旧版本的卓越工作。此外,Selenium Manager 中的 Firefox 版本发现归功于 product-details JSON API 的可用性,该 API 也由 Firefox 团队维护。

改进的配置

有时,浏览器自动化需要自定义设置。因此,Selenium Manager 已经为 丰富的配置提供了不同的功能。Selenium Manager 0.4.12 通过提供名为 --cache-path 的新配置参数来扩展此功能。此参数允许更改 Selenium Manager 用于存储下载的资产(驱动程序和浏览器)的本地文件夹的路径(默认为 ~/.cache/selenium)。像往常一样,也可以通过在配置文件中包含条目或使用环境变量 (SE_CACHE_PATH) 来更改此参数。关于前者,在 Selenium Manager 0.4.12 中,配置文件的名称已重命名为 se-config.toml。像往常一样,如果您使用此配置文件,则必须将其放置在缓存文件夹的根目录中。

其他更改

Selenium Manager 0.4.12 中的一个次要更改与元数据文件有关,现在称为 se-metadata.json。像往常一样,此文件存储在缓存文件夹的根目录中。此文件包含 Selenium Manager 通过网络请求发现的版本以及它们的有效生存时间 (TTL)。由于浏览器和驱动程序的 TTL 现在是相同的概念,Selenium Manager 将这两个配置元素(以前为 browser_ttldriver_ttl)统一为一个名为 ttl 的配置元素(默认值为 3600 秒,即 1 小时)。有关更多详细信息,请访问 Selenium Manager 中关于 缓存的页面。

最后但同样重要的是,为 macOS 编译的 Selenium Manager 二进制文件是通用的,这意味着它可以直接在 x64arm64 架构中执行。以前,二进制文件是为 x64 编译的,因此,arm64 macOS 机器(即 M1 或 M2)中应该可以使用 Rosetta。使用新的 Selenium Manager macOS 二进制文件,Rosetta 不再是强制性的。

下一步

下一版本的 Selenium Manager 将继续提供自动化的浏览器管理,这次将支持 Edge 浏览器以及其他功能。像往常一样,您可以在 Selenium Manager 项目仪表板中跟踪正在进行的工作。