深入了解 Selenium

Selenium 是一个伞形项目,包含一系列工具和库,用于启用和支持 Web 浏览器的自动化。

Selenium 控制 Web 浏览器

Selenium 包含多种功能,但其核心是 Web 浏览器自动化工具集,它使用最佳技术来远程控制浏览器实例并模拟用户与浏览器的交互。

Selenium 允许用户模拟最终用户执行的常见活动;在字段中输入文本、选择下拉列表值、选中复选框以及单击文档中的链接。它还提供了许多其他控制,例如鼠标移动、任意 JavaScript 执行等等。

尽管 Selenium 主要用于网站的前端测试,但其核心是一个浏览器用户代理。这些接口在应用程序中无处不在,鼓励与其他库进行组合以满足您的目的。

一个接口,掌控一切

该项目的指导原则之一是支持所有(主要)浏览器技术的通用接口。Web 浏览器是非常复杂的、高度工程化的应用程序,它们以完全不同的方式执行其操作,但通常看起来相同。即使文本以相同的字体呈现,图像显示在相同的位置,并且链接将您带到相同的目的地。底层发生的事情却大相径庭。Selenium “抽象”了这些差异,对编写代码的人隐藏了它们的细节和复杂性。这使您可以编写几行代码来执行复杂的工作流程,但这些相同的行将在 Firefox、Internet Explorer、Chrome 和所有其他受支持的浏览器上执行。

工具和支持

Selenium 的极简主义设计方法使其具有多功能性,可以作为大型应用程序的组件包含在其中。Selenium 伞形项目下提供的周围基础设施为您提供了工具,可以将您的浏览器网格组合在一起,以便可以在不同的浏览器和跨一系列机器的多个操作系统上运行测试。

想象一下,您的服务器室或数据中心里有一组计算机,它们同时启动浏览器,点击您网站的链接、表单和表格,每天 24 小时测试您的应用程序。通过为最常用语言提供的简单编程接口,这些测试将不知疲倦地并行运行,并在发生错误时向您报告。

我们的目标是通过向用户提供工具和文档来帮助您实现这一目标,不仅可以控制浏览器,还可以轻松扩展和部署此类网格。

谁在使用 Selenium

世界上许多最重要的公司都采用了 Selenium 进行基于浏览器的测试,这通常取代了多年来使用其他专有工具的努力。随着其受欢迎程度的增长,其要求和挑战也成倍增加。

随着 Web 变得越来越复杂,并且网站中添加了新技术,该项目的使命是尽可能跟上这些技术。作为一个开源项目,这种支持是通过许多志愿者的慷慨捐赠时间提供的,每个人都有“日常工作”。

该项目的另一个使命是鼓励更多志愿者参与这项工作,并建立一个强大的社区,以便该项目能够继续跟上新兴技术,并保持作为功能测试自动化的主要平台。

上次修改时间:2024 年 11 月 7 日:重述/重新格式化一些句子 (#1981) (77ae509e3ca)