Selenium Grid的使用(一)

什么是Selenium Grid

Selenium Grid 是Selenium的三大组件之一

Selenium Grid 允许用户同时在不同的机器和系统上测试不同的浏览器

Selenium Grid的组成

​ *hub节点

​ 中心节点,或者总控节点

​ 管理各个node节点的注册信息和状态信息

​ 接受并转发客户端(测试脚本)请求到合适的node节点

​ *node节点

​ 子节点,或代理节点

​ 负责注册配置信息到hub节点(平台、浏览器、浏览器版本等等)

​ 负责接收来自hub节点的转发的请求以执行具体的用例

​ 也可单独作为远程节点执行测试用例

环境准备

​ *测试机器安装JDK,配置环境变量

​ *下载selenium-server-standalone-x.x.x.jar

​ https://npm.taobao.org/mirrors/selenium

配置运行

1、启动hub

`java -jar selenium-server-standalone-3.5.1.jar -role hub -port 8888 -maxSession 10`

参数解释:

java -jar selenium-server-standalone-3.5.1.jar 运行jar包

-role hub 以hub的角色运行

-port 8888 指定hub运行的端口(默认4444)

-maxSession 10 最大的处理会话

为了方便执行,可以达成bat脚本再执行

2、查看hub的运行状态

浏览器中输⼊http://localhost:8888/grid/console

3、启动node

以chrome的配置为例

`java -Dwebdriver.chrome.driver="chromedriver.exe" -jar selenium-server-standalone-3.5.1.jar -role node -hub "http://192.168.4.4:8888/grid/register" -port 5558 -browser "browserName=chrome,maxInstances=2,version=68,platform=WINDOWS"`

参数解释:

java -Dwebdriver.chrome.driver="chromedriver.exe " 指定chromeDriver驱动所在的路径(本地)

-jar selenium-server-standalone-3.5.1.jar 运行的jar包

-role node 以node角色运行

-hub “http://192.168.4.4:8888/grid/register” 指定连接的url地址,这样node才能和hub通讯上

-port 5558 node的执行端口

-browser “browserName=chrome,maxInstances=2,version=68,platform=WINDOWS”

​ 运行的浏览器名称,最多支持2个浏览器示例,浏览器版本,平台名称

转换成bat脚本

`set command=java`
`set chromeDriver=-Dwebdriver.chrome.driver="chromedriver.exe"`
`set jarParams=-jar selenium-server-standalone-3.5.1.jar`
`set type=-role node`
`set hub=-hub "http://192.168.70.1:8888/grid/register"`
`set port=-port 5558`
`set chrome=-browser "browserName=chrome,maxInstances=2,version=68,platform=WINDOWS"`
`%command% %chromeDriver% %jarParams% %type% %hub% %port% %chrome%`

测试代码

import java.net.MalformedURLException;
import java.net.URL;

import org.openqa.selenium.By;
import org.openqa.selenium.Platform;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.remote.BrowserType;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;

public class tester {

	public static void main(String[] args) throws MalformedURLException, InterruptedException {
		//期望能力对象
		DesiredCapabilities capabilities=new DesiredCapabilities();
		//配置测试的浏览器
		capabilities.setBrowserName(BrowserType.CHROME);
		capabilities.setPlatform(Platform.WINDOWS);
		//hub节点
		String url="http://192.168.70.1:8888/wd/hub";
		WebDriver driver=new RemoteWebDriver(new URL(url),capabilities);
		driver.get("http://www.baidu.com");
		driver.findElement(By.id("kw")).sendKeys("刘秋秀");
		Thread.sleep(3000);
	}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值