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 小时前
Wireshark抓包完全入门教程:从零开始掌握网络分析
arm开发·测试工具·wireshark
梦想不只是梦与想18 小时前
鸿蒙 测试工具:DevEco Testing(一)
测试工具·harmonyos·testing
ClouGence20 小时前
Selenium 写不动了?这个工具录一次就能跑 Web 自动化
前端·selenium·测试
我的xiaodoujiao2 天前
快速学习Python基础知识详细图文教程17--类型注解和断点调试
开发语言·python·学习·测试工具
泽众云测试2 天前
泽众软件与日联科技达成合作,TestOne自动化测试平台助力搭建工业检测装备数字化品控防线
功能测试·测试工具·自动化
xy34532 天前
SQLMap 核心语法与使用指南(三)
测试工具·渗透测试·sqlmap
我的xiaodoujiao2 天前
快速学习Python基础知识详细图文教程18--多线程
开发语言·python·学习·测试工具
匠测AI说2 天前
Selenium 工作原理深度解析:从架构到实践
selenium·测试工具·架构
程序员杰哥2 天前
依赖于第三方接口时,如何进行测试?
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
liwulin05063 天前
【PYTHON】使用Selenium + ChromeDriver以及XPATH语法
开发语言·python·selenium