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()
相关推荐
weixin_4407305034 分钟前
selenium实战记录-从登陆-首页-进入应用流程用例三种参数化+日志+报告
服务器·selenium·测试工具
啊阿狸不会拉杆8 小时前
《计算机网络-自顶向下方法》3.9 小结 · 课后习题 · Wireshark实验
网络·测试工具·wireshark
岁月失语唯石能言10 小时前
《 Web项目测试实战:博客系统的功能/接口/自动化/性能全流程测试报告》
自动化测试·功能测试·selenium·jmeter·接口测试·压力测试·性能测试
PhotonixBay12 小时前
InGaAs微透镜3D形貌怎么测?共聚焦显微镜在光通信的应用实践
功能测试·测试工具·3d·测试标准
2601_9620777115 小时前
selenium常用的三种等待方式:sleep(),隐性等待,显性等待
selenium·sleep·等待方式·隐性等待·显性等待
测试19981 天前
如何用appium搭建Android自动化测试框架?
自动化测试·软件测试·python·测试工具·职场和发展·appium·测试用例
慧都小项1 天前
从 Burp Suite Professional 到 DAST:把 Web 安全测试接入持续 AppSec 的工程化路径
测试工具·web安全·网络安全·burp suite
程序员杰哥1 天前
如何做接口测试?
自动化测试·python·测试工具·职场和发展·测试用例·接口测试·postman
中国软件测试质量协会1 天前
国产性能测试工具:kylinPET高仿真与高并发性能测试技术深度解析——与JMeter、LoadRunner全面对比
测试工具·jmeter