selenium工具python快速入门1简介

概述

Selenium是一个开源自动化测试套件,适用于跨浏览器和平台的Web应用程序。 它是一组软件工具,每种工具都有不同的方法来支持测试自动化。

Selenium3.*的组件如下:

  • Selenium IDE(集成开发环境 Integrated Development Environment)
  • Selenium WebDriver
  • Selenium Grid

Selenium3.停止直接使用Selenium RC。 Selenium Core已从最新版本的Selenium 3.中完全删除。

官网:http://www.seleniumhq.org/

12713060-32e529de60eba41f.png
图片.png

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

12713060-4174e34ff20b46d1.png
图片.png

Selenium IDE

Selenium IDE的介绍请参考 https://www.jianshu.com/p/2259f4a8d4c4,实际上Katalon Recorder更好用。

Selenium WebDriver

Selenium WebDriver是浏览器自动操作的编程接口,更好地支持动态网页。

  • 支持很多浏览器,如Chrome,IE,Edge,Firefox,Opera,Safar。
  • 支持很多编程语言,如Java,C#,Ruby,Python,JavaScript(Node)

Selenium WebDriver有两种系统配置。

  • 只有Selenium Client


    12713060-7d502ea0532d4dae.png
    图片.png

安装请自行搞定。

快速入门示例:

12713060-5d8d04b4ad20279a.png
图片.png

执行结果:

12713060-cdf4e7e3bc760605.png
图片.png

Selenium客户端和浏览器驱动程序使用JsonWireProtocol通过HTTP方法相互通信。 当我们执行如上所述的自动操作的代码时,Selenium Client在内部使用JsonWireProtocol与浏览器驱动程序交互并执行浏览器操作。

在JsonWireProtocol网站上,我们可以检查命令是否自动运行。

https://github.com/SeleniumHQ/selenium/wiki/JsonWireProtocol

12713060-300cdd59deb0a2f3.png
图片.png
  • Selenium Client + Selenium Server
12713060-a74c144a8492f299.png
图片.png

主要适用于PHP等非官方支持的语言及Selenium Grid。

参考资料

Selenium Grid

Selenium Grid允许我们在不同的机器上并行运行不同浏览器的测试。也就是说,针对运行不同浏览器和操作系统的不同计算机同时运行多个测试。 Selenium Grid与Selenium WebDriver一起使用。

Selenium官方网站有关于Selenium Grid的详细解释。
http://www.seleniumhq.org/docs/07_selenium_grid.jsp

12713060-b90a50d54e21b591.png
图片.png

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

12713060-a6a324e434c1acdc.png
图片.png

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

12713060-a1b690216f6d68d8.png
图片.png

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

12713060-4e45307f105b49f6.png
图片.png

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

猜你喜欢

转载自blog.csdn.net/weixin_34273046/article/details/88182704
今日推荐