Selenium系列教程 - 分布式自动化测试 selenium-server-standalone 搭建

1. 预置环境

  • Java 环境
  • Python3 环境

2. Selenium Grid 环境安装

Selenium Grid 是 Selenium 套件的一部分,它专门用于并行运行多个测试用例在不同的浏览器、操作系统和机器上。

优点:

  • 同时在不同的浏览器、操作系统和机器上运行测试。最大程度用于兼容性测试;
  • 减少运行时间。

查看安装的 selenium 版本
在这里插入图片描述
下载对应版本的 selenium server ,下载地址

将下载的 selenium-server-standalone-3.141.0.jar 分别放在服务器和客户机上。

3. Selenium Grid 启动服务中心(hub)和节点(node)

3.1 启动 hub

java -jar selenium-server-standalone-3.141.0.jar -role hub -host 0.0.0.0
# 其默认监听端口4444,默认IP是localhost  如果要修改,只需要加-port 和-host
# 如果启动失败,查看是否端口被占用:netstat -aon|findstr 4444

启动失败(端口被占用):
在这里插入图片描述

启动成功:
在这里插入图片描述
浏览器访问: localhost:4444
在这里插入图片描述
点击“console”,然后单击“view config”。将显示hub的配置。截至目前,我们还没有得到任何节点,因此我们将无法看到细节。
在这里插入图片描述
在这里插入图片描述

3.2 注册 node

在客户机上执行:

1.命令提示符cmd,cd到本地计算机放置selenium-server-standalone-3.141.0.jar的文件夹

2.执行:
java -jar selenium-server-standalone-3.141.0.jar -role node -port 5555 -hub http://xxx.xx.xx.x:4444/grid/register 
#备注:http://xxx.xx.xx.x:4444/grid/register 中x是hub的ip地址,一定要注意是ip,而不是0.0.0.0;即便你hub设置了0.0.0.0,只是表示你主机运行所以ip访问,port也可自己配置;

2.1.指定chromedriver.exe
全命令:java -Dwebdriver.chrome.driver="C:\software\Program Files\Python36\chromedriver.exe" -jar selenium-server-standalone-3.141.0.jar -role node -port 5555 -hub http://xxx.xx.xx.x:4444/grid/register

2.2.指定firefox
java -jar selenium-server-standalone-3.141.0.jar -role node -port 5555 -hub http://xxx.xx.xx.x:4444/grid/register -maxSession 5 -browser browserName=firefox,seleniumProtocol=WebDriver,maxInstances=5,platform=WINDOWS,version=83.0

执行成功结果

  1. hub 服务:
    在这里插入图片描述
  2. node 节点:
    在这里插入图片描述
    浏览器重新访问之前的地址,可查看目前注册的所有节点。
    在这里插入图片描述

4. 应用

from selenium.webdriver import Remote
import time

driver = Remote(
	command_executor='http://192.168.171.1:5555/wd/hub',
	desired_capabilities={
		'browserName': 'chrome',
		'platform': 'ANY',
		'version': '',
		'javascriptEnabled': True
	}
)
driver.get('http://www.baidu.com')
driver.find_element_by_id('kw').send_keys('hwijew')
driver.find_element_by_id('su').click()
time.sleep(3)
driver.quit()

将 py 文件放在服务器上执行,在对应客户机上即可看见效果。

在这里插入图片描述


在这里插入图片描述

  • 6
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值