概述
Selenium是一个开源自动化测试套件,适用于跨浏览器和平台的Web应用程序。 它是一组软件工具,每种工具都有不同的方法来支持测试自动化。
Selenium3.*的组件如下:
- Selenium IDE(集成开发环境 Integrated Development Environment)
- Selenium WebDriver
- Selenium Grid
Selenium3.停止直接使用Selenium RC。 Selenium Core已从最新版本的Selenium 3.中完全删除。

Selenium开源,基于Apache 2.0 License。github: https://github.com/SeleniumHQ/selenium

Selenium IDE
Selenium IDE的介绍请参考 https://www.jianshu.com/p/2259f4a8d4c4,实际上Katalon Recorder更好用。
- python测试开发项目实战-目录 https://china-testing.github.io/practices.html
- python工具书籍下载-持续更新 https://china-testing.github.io/python_books.html
- python 3.7极速入门教程 - 目录 https://china-testing.github.io/python3_quick.html
Selenium WebDriver
Selenium WebDriver是浏览器自动操作的编程接口,更好地支持动态网页。
- 支持很多浏览器,如Chrome,IE,Edge,Firefox,Opera,Safar。
- 支持很多编程语言,如Java,C#,Ruby,Python,JavaScript(Node)
Selenium WebDriver有两种系统配置。
-
只有Selenium Client
图片.png
安装请自行搞定。
快速入门示例:

执行结果:

Selenium客户端和浏览器驱动程序使用JsonWireProtocol通过HTTP方法相互通信。 当我们执行如上所述的自动操作的代码时,Selenium Client在内部使用JsonWireProtocol与浏览器驱动程序交互并执行浏览器操作。
在JsonWireProtocol网站上,我们可以检查命令是否自动运行。
https://github.com/SeleniumHQ/selenium/wiki/JsonWireProtocol

- Selenium Client + Selenium Server

主要适用于PHP等非官方支持的语言及Selenium Grid。
参考资料
- 讨论qq群144081101 591302926 567351477
- 本文最新版本地址
- 本文涉及的python测试开发库 谢谢点赞!
- 本文相关海量书籍下载
- selenium 书籍下载: https://china-testing.github.io/selnium_books.html
Selenium Grid
Selenium Grid允许我们在不同的机器上并行运行不同浏览器的测试。也就是说,针对运行不同浏览器和操作系统的不同计算机同时运行多个测试。 Selenium Grid与Selenium WebDriver一起使用。
Selenium官方网站有关于Selenium Grid的详细解释。
http://www.seleniumhq.org/docs/07_selenium_grid.jsp

Selenium Grid由Hub和Node组成。在下图中,Node由三台机器(Linux,Windows10,macOS)组成,每个节点可以使用两个浏览器。

Hub知道Node的信息,当来自User Code的执行请求到来时,Hub向相应的Node发出执行请求,并在请求的Node上执行自动操作。

由于Selenium Grid支持并行执行,当Hub同时从用户代码接收多个执行请求时,Hub同时向相应的节点发出多个执行请求。

Selenium Grid的执行,我们在后面有空会介绍。
网友评论