Selenium Grid

Selenium Grid

什么是Selenium Grid

Selenium是Selenium套件的一部分,它专门用于并行运行多个测试用例在不同的浏览器、操作系统和机器上

Selenium Grid的两个版本

Grid1与Grid2两个版本的原理和基本工作方式完全相同,Grid2同时支持Selenium1和Selenium2,并且在一些小的功能和易用性上进行了优化。Grid2不再提供单独的jar包,其功能已经集成到Selenium Server中。

Selenium Grid的工作原理
什么时候用Selenium Grid

同时在不同的浏览器、操作系统和机器上运行测试

Selenium Server环境配置

1)下载Selenium Server

https://www.selenium.dev/downloads/

2)配置Java环境

Java下载地址:https://www.oracle.com/java/technologies/downloads/#java18

搭建selenium grid环境

新版本的selenium grid操作说请参考 Grid

启动hub
复制代码
java -jar selenium-server-<version>.jar hub

hub由以下组件组成:路由器、分发器、会话映射、新会话队列和事件总线。

注册Node

hub与node在同一台机器上

复制代码
java -jar selenium-server-<version>.jar node --port prot_num

Node和Hub在不同的机器上

复制代码
java -jar selenium-server-<version>.jar node --hub http://<hub-ip>:4444

对于hub可以理解为服务注册中心,客户端向hub发送操作请求后,hub根据机器系统与浏览器类型等将请求分发到对应的节点上,由节点执行具体的操作

操作代码

python 复制代码
import time

from selenium import webdriver
from selenium.webdriver.chromium.options import ChromiumOptions

chrome_options = ChromiumOptions()
chrome_options.set_capability("browserName", "chrome")
chrome_options.set_capability("platformName", "ANY")
remote = webdriver.Remote('http://10.100.14.39:4444/wd/hub', options=chrome_options)

remote.get("http://www.baidu.com")
time.sleep(3)
remote.quit()
相关推荐
测试老哥1 天前
Selenium 使用指南
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
文人sec2 天前
性能测试-jmeter9-逻辑控制器、定时器压力并发
测试工具·jmeter·性能优化·模块测试
学生信的大叔2 天前
【Python自动化】Ubuntu24.04配置Selenium并测试
python·selenium·自动化
Freed&3 天前
《没有架构图?用 netstat、ss、tcpdump 还原服务连接与数据流向》
网络·测试工具·tcpdump
程序员杰哥3 天前
什么是Jmeter? Jmeter工作原理是什么?
自动化测试·软件测试·python·测试工具·jmeter·职场和发展·测试用例
C3 天前
商城购物系统自动化测试报告
python·功能测试·selenium
卓码软件测评3 天前
第三方软件测试机构【性能测试工具用LoadRunner还是JMeter?】
java·功能测试·测试工具·jmeter·性能优化
鱼鱼说测试4 天前
如何用Postman做接口自动化测试
测试工具·postman
瑞瑞绮绮4 天前
玩转PostMan之调试天气接口-心知天气 API
测试工具·postman