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()
相关推荐
小陈的进阶之路2 天前
web ui自动化测试
测试工具·ui
redaijufeng2 天前
网络爬虫学习:应用selenium获取Edge浏览器版本号,自动下载对应版本msedgedriver,确保Edge浏览器顺利打开。
爬虫·学习·selenium
Xiaoweidumpb3 天前
JMeter 压测实战全链路(三):登录接口压测实战・验证码+账号密码+登录全流程
测试工具·jmeter
壹方秘境3 天前
Wireshark 太难?ChatTCP 把 TCP 数据包变成“微信对话”
网络·测试工具·wireshark
老神在在0013 天前
商城系统(Mall)性能测试实战:从脚本搭建到结果分析
大数据·测试工具·jmeter·压力测试
网创联盟,知识导航3 天前
沐雨云香港直连500M大带宽云主机深度测评
经验分享·学习·测试工具
小陈的进阶之路3 天前
TestHub自动化测试平台部署使用
测试工具·ai
Xiaoweidumpb3 天前
JMeter 压测实战全链路(一):安装
测试工具·jmeter
Xiaoweidumpb3 天前
JMeter 压测实战全链路(二):发起第一个Get请求
测试工具·jmeter