selenium 官网可知,selenium 是支持分布式测试的,需要部署 Grid 服务;
Selenium Grid
是 Selenium
套件的一部分,它专门用于并行运行多个测试用例在不同的浏览器、操作系统和机器上。
使用优点 :
下载地址 : https://www.seleniumhq.org/download/ ,尽量选择稳定且较新的版本。(https://selenium-release.storage.googleapis.com/3.141/selenium-server-standalone-3.141.59.jar)
传到服务器:将下载好的 selenium-server-standalone-3.141.59.jar 包传输至 Linux 服务器
在 linux 主机上进入到 jar 包目录执行:
[root@gitlab download]# java -jar selenium-server-standalone-3.141.59.jar -role hub -host 0.0.0.0
Picked up _JAVA_OPTIONS: -Xms64m -Xmx64m -Xmn32m
11:45:08.914 INFO [GridLauncherV3.parse] - Selenium server version: 3.141.59, revision: e82be7d358
11:45:08.974 INFO [GridLauncherV3.lambda$buildLaunchers$5] - Launching Selenium Grid hub on port 4444
2021-05-19 11:45:09.339:INFO::main: Logging initialized @581ms to org.seleniumhq.jetty9.util.log.StdErrLog
11:45:09.459 INFO [Hub.start] - Selenium Grid hub is up and running
11:45:09.460 INFO [Hub.start] - Nodes should register to http://172.17.0.1:4444/grid/register/
11:45:09.460 INFO [Hub.start] - Clients should connect to http://172.17.0.1:4444/wd/hub
11:46:27.116 INFO [DefaultGridRegistry.add] - Registered a node http://192.168.89.148:5555
在本地浏览器(同一局域网)访问地址 http://<hub主机ip>:4444/grid/console ,访问成功,可查看目前有没有注册 node
下载地址:https://chromedriver.chromium.org/,在本地调试好 chromedriver 能启动浏览器
错误解决办法:DevToolsActivePort file doesn't exist
在 windows 机器上进入下载好的 selenium-server-standalone-3.141.59.jar 目录,执行(主机 ip 地址要写对哈,并且是可以 互 ping 的):
liunx 主机上执行:python3 t.py 就会看到节点机器在运行