概述
参考官网:Getting started with Selenium Grid | Selenium
selenium grid4有三种模式
- Standalone模式:顾名思义”独立的”,就是将主控和节点都在同一台机器上
standalone模式能够在一台机器上面执行完整的分布式功能,是Selenium Grid的最简单的模式,默认情况下,服务会在http://localhost:4444地址监听,我们需要通过RemoteWebDriver指向这个地址。
- Classical模式
classical模式也可以称为hub和node模式,此项模式比较适用于中小型分布式执行要求,根据需要设置一个服务节点(hub)和多个代理节点(node)。
- Fully Distributed模式
对于大型的分布式要求,可以采用完全分布式模式,这是Selenium Grid 4中最高级的模式,这种模式下需要自己启动每个组件
今天分享的是standalone模式使用
1.安装grid前需要准备java环境
安装jdk即可,给jdk设置环境变量,
检查jdk是否安装成功
2.下载浏览器驱动,解压后将其目录添加至环境变量path中
实际我之前已经有下载好chromedriver,并且已经写在path中,但是在时候运行jar包时会报找不到驱动
想了一下有可能最近刚更新过chrome浏览器版本,导致driver与浏览器不匹配,于是重新下载驱动
Chrome与chromedriver.exe的版本对应_agrapea的博客-CSDN博客
解压后将原驱动替换,但实际注册时仍然报找不到驱动。在环境变量path中删除了到chromedriver.exe的变量,保留驱动所属目录的变量,再次执行成功。
重点:添加环境变量至path时,只添加驱动所在的目录,而非驱动
3.创建selenium grid4
先下载selenium server,最新版本是4.3.0
Downloads | Selenium
下载完毕后放置任何目录下,然后在命令行运行
java -jar E:安装软件selenium-server-4.3.0.jar standalone
此时发现2个driver,chrome和internet explorer都已经被注册到grid中,
访问localhost:4444或者按照上面命令行地址查看grid控制台,可见两个浏览器已经注册成功。
同时也可以通过localhost:4444/status
查看json格式的每个node的状态
4.运行测试代码,使用python在已注册的两个浏览器中打开百度
from selenium import webdriver
#driver=webdriver.Edge()
host='http://172.31.56.77:4444'
lists=['chrome','MicrosoftEdge']
for browser in lists:
print(host)
print(browser)
driver = webdriver.Remote(
command_executor=host,
desired_capabilities={'platform':'ANY','browserName':browser}
)
driver.get("http://www.baidu.com")
driver.quit()
最后
以上就是健壮眼神为你收集整理的selenium grid4入门-standalone模式的全部内容,希望文章能够帮你解决selenium grid4入门-standalone模式所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复