selenium Grid

作者: Jeff_9021 | 来源:发表于2022-09-20 20:46 被阅读0次

一、下载selenium server

Grid2不再提供单独的jar包,其功能已集成到Selenium Server中,故需要下载和运行Selenium Server

二、配置Java环境

三、运行selenium Server

切换到selenium server所在目录并启动

四、Selenium Grid 工作原理

当测试用例需要验证的环境比较多时,可以通过Grid控制测试用例在不同的环境下运行。Grid分布式测试的建立是由一个Hub(主节点)和若干个node(代理节点)组成的。HUb用来管理各个node的注册和状态信息,接受远程客户端代码的请求调用,把请求的命令转发给node来执行。

    需要首先启动selenium server,可以在单台机器上启动一个或多个节点,也可以在多台机器上启动多个节点,然后按上面的方法执行selenium grid脚本。

    1)同一台主机上,启动1个Hub和多个node,需要指定不同node的端口号;Hub默认端口号为4444;node默认端口号为5555。

启动主节点:

java -jar selenium-server-4.4.0.jar hub

启动分支节点:

java -jar selenium-server-4.4.0.jar node --port 5555

java -jar selenium-server-4.4.0.jar node --port 5557

开启Hub 添加多个node hub界面

注意,要开启两个windows命令行窗口去分别执行,且要先执行hub命令

2)远程主机Hub

注:不同浏览器的Webdriver最终都继承了remote的WebDriver类.该类通过向远程服务器发送命令来控制浏览器。在初始化方法中,command_executor参数用来指定远程服务器的URL或自定义字符串的远程连接,默认为http://127.0.0.1:4444/wd/hub,4444为Grid的默认监听端口。

../selenium/webdriver/remote/webdriver.py

启动本地Hub所在主机(IP地址为172.16.10.66)

java -jar selenium-server-4.4.0.jar hub

启动远程node所在主机(IP地址为172.16.10.34)

java -jar selenium-server-4.4.0.jar node --port 5555 -hub http://172.16.10.66:4444/grid/register

要在其它主机启动node必须满足以下几个要求:

1、本地hub主机与远程node主机之间可以相互ping通

2、远程主机必须安装运行脚本的运行环境(Python 、 Selenium、浏览器及浏览器驱动 )

3、远程主机必须安装 java 环境,因为需要运行 Selenium Server。

五、selenium Grid应用

1)启动本地Hub和node

2) 修改..selenium/webdriver/common/desired_capabilities.py文件中定义了不同浏览器的配置

3)修改测试代码

相关文章

网友评论

    本文标题:selenium Grid

    本文链接:https://www.haomeiwen.com/subject/zamvortx.html