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()
相关推荐
敬业小码哥3 小时前
记一次:postman请求下载文件的使用方法
测试工具·postman
测试老哥14 小时前
pytest+requests+allure自动化测试接入Jenkins学习
自动化测试·软件测试·学习·测试工具·职场和发展·jenkins·pytest
Mike_Wuzy1 天前
【音频信号发生器】基本应用
测试工具
程序员三藏1 天前
Selenium+python自动化测试:解决无法启动IE浏览器及报错问题
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
Warren981 天前
软件测试-Selenium学习笔记
java·javascript·笔记·学习·selenium·测试工具·安全
zzc9212 天前
Wireshark获取数据传输的码元速率
网络·测试工具·wifi·wireshark·路由器·802.11n·物理层参数
小丁爱养花2 天前
接口性能测试工具 - JMeter
测试工具·jmeter
甄超锋3 天前
python sqlite3模块
jvm·数据库·python·测试工具·django·sqlite·flask
中草药z3 天前
【自动化测试】Selenium详解-WebUI自动化测试
前端·功能测试·selenium·自动化·html·web·测试
zzc9213 天前
TLSv1.2协议与TCP/UDP协议传输数据内容差异
网络·测试工具·安全·wireshark·ssl·密钥·tlsv1.2