selenium 是一个用于 web 应用程序自动化测试工具。selenium 测试直接运行在浏览器中,就像真正的用户在操作一样。它主要的功能有:
- 测试与浏览器的兼容性——测试应用程序看是否能够很好的工作在不同浏览器和操 作系统之上。
- 测试系统功能——创建回归测试检验软件功能和用户需求
1.selenium的组成
selenium包括三个项目,分别是:
- selenium webDriver
- selenium IDE
- selenium Grid
1.1 selenium webDriver
(1)selenium webDriver 是客户端 API 接口,测试人员通过调用这些接口,来访问浏览器驱动,浏览器驱动再访问浏览器。过程如下所示:
(2)与浏览器的通信也可以是通过 selenium server 或 RemotewebDriver 的远程通信。RemotewebDriver与驱动程序和浏览器在同一系统上运行。过程如下所示:
(3)还可以使用 selenium server 或 selenium Grid 进行分布式测试
1.2 selenium IDE
selenium IDE 是一个浏览器插件,支持 Chrome 浏览器和 Firefox 浏览器,可以将手动测试过程记录下来,并生产自动化测试脚本,可以实现回放。
1.3 selenium Grid
如果想通过在多台计算机上进行分布式来扩容,并从一个中心点管理多个环境,从而轻松地对多种浏览器/os 组合运行测试,那么可以使用 selenium Grid。.selenium Grid的结构如下图所示:
2.selenium的特点
- 开源,免费
- 多浏览器支持:Firefox、Chrome、IE、Opera、Edge
- 多平台支持:Linux、windows、MAC
- 多语言支持:Java`、Python、Ruay、C#、JavaScript、C++
- 支持分布式测试(使用 selenium Grid)
- 支持录制、回放和脚本生成(使用 selenium IDE)
.
.
.