1、找两台Windows系统,一个是A,作为Hub;一个是B,作为Node;

2、在A、B两台电脑分别下载selenium-server-standalone-2.48.0.jar,并放到指定目录

3、先设置Hub,打开A电脑的cmd,cd进入该目录

4、并执行命令:java -jar selenium-server-standalone-.jar -2.48.0role hub  ,执行-role hub 意思是将server之行为hub主服务器,可以集中控制Node,命令行窗口出现以下i,192.168.1.2是本机IP,4444是grid默认端口

 

5、在浏览器输入 本机的IP 端口,打开grid,如:http://192.168.1.2:4444/grid/console,出现下图,代表启动成功,在B电脑的浏览器,输入A的IP端口访问grid成功

6、在B电脑也打开cmd窗口,进入selenium-server-standalone-2.48.0.jar 的目录,执行命令:java -jar selenium-server-standalone-2.48.0.jar -role webdriver -hub http://192.168.1.2:4444/grid/register -port 6655 ,设置B为node节点,端口号随便写一个,比如6666,讲该节点注册到主服务器A,执行命令后如下显示:

在A电脑的浏览器刷新grid地址,会出现Node的IP及配置信息

7、相关代码如下:

public static String nodeUrl = "http://192.168.1.5:6655/wd/hub";

@BeforeMethod

public void beforeMethod() throws MalformedURLException{
  DesiredCapabilities capability = DesiredCapabilities.firefox();//设定远程方法使用Firefox浏览器
  capability.setBrowserName("firefox");//设置node的浏览器为Firefox

  //设置node使用的操作系统为WINDOWS,设置成Win10报:org.openqa.selenium.WebDriverException: No enum constant org.openqa.selenium.Platform.WIN10,没去找具体原因,有空再分析
  capability.setPlatform(Platform.WINDOWS);

  //设置node的Firefox的路径,如果用System.setProperty("webdriver.firefox.bin", "D:\\Program Files\\Mozilla Firefox\\firefox.exe");不起作用,设置不了远程服务器的firefox路径

  capability.setCapability("firefox_binary", "D:\\Program Files\\Mozilla Firefox\\firefox.exe");//不设置时,报错selenium grid: Cannot find firefox binary in PATH.

  driver = new RemoteWebDriver(new URL(nodeUrl), capability);//启动node的driver
  driver.get("http://www.baidu.com/");
}

8、大概是这样,还有2个问题待解决

  1)用selenium-server-standalone-3.9.1.jar,执行脚本会报Driver info: driver.version: unknown,可能用高版本的grid需要再配置其他配置

  2)打开的火狐浏览器,总是默认打开火狐起始页,待解决

参考文档:https://www.cnblogs.com/zhangyachaun/p/4409480.html ,写的很全,对我帮助很大,分享给大家

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

远程IE浏览器设置:

1、在B服务器进行Hub节点注册使用如下命令

  java -jar selenium-server-standalone-2.48.0.jar -role webdriver -hub http://192.168.1.2:4444/grid/register -Dwebdriver.ie.dirver="C:\IEDriverServer.exe" -port 6655 -maxSession 5 -browser browserName="internet explorer",maxInstances=5

2、设置远程方法: 

  DesiredCapabilities capability = DesiredCapabilities.internetExplorer();//设定远程方法使用internetExplorer浏览器
  capability.setBrowserName("internetExplorer");//设置node的浏览器为internetExplorer

远程Chrome设置

1、在B服务器进行Hub节点注册使用如下命令

  java -jar selenium-server-standalone-2.48.0.jar -role webdriver -hub http://192.168.1.2:4444/grid/register -Dwebdriver.chrome.dirver="C:\chromedriver.exe" -port 6655 -maxSession 5 -browser browserName="chrome",maxInstances=5

2、设置远程方法: 

  DesiredCapabilities capability = DesiredCapabilities.chrome();//设定远程方法使用chrome浏览器
  capability.setBrowserName("chrome");//设置node的浏览器为chrome

 

最新文章

  1. ASP.NET Core管道深度剖析[共4篇]
  2. 认真理解 图片 <img> background-image
  3. 《西科软件》一个高级PHP工程师所应该具备的
  4. Nginx如何设置拒绝或允许指定ip访问
  5. Linux内核实现中断和中断处理(一)
  6. 后台跳转到登录页嵌套在iframe的问题(MVC例)
  7. c 深度剖析 3
  8. MySQL二进制日志的备份和恢复
  9. Soft Renderer的乐趣
  10. 隐藏TabBar的一些方法小结(适用与各种情况)
  11. 常见的DoDataExchange什么意思
  12. win8,win10安装mysql
  13. SharePoint 2013 图文开发系列之列表定义高级篇
  14. sbt结合IDEA对Spark进行断点调试开发
  15. android 屏幕适配基础(1)
  16. 基于Docker构建带有Rsync的Jenkins
  17. 吴裕雄 python 机器学习——线性判断分析LinearDiscriminantAnalysis
  18. 为什么可逆矩阵又叫“非奇异矩阵(non-singular matrix)”?
  19. Win10系列:VC++调用自定义组件3
  20. swift3.0:NSURLSession的使用

热门文章

  1. bzoj4036 [HAOI2015]按位或 状压DP + MinMax 容斥
  2. vue.js 导出JSON
  3. Kafka数据如何同步至MaxCompute之实践讲解
  4. 常见Serialize技术探秘(ObjectXXStream、XML、JSON、JDBC byte编码、Protobuf)
  5. SpringMvc返回JSON的工作原理。
  6. Code Review怎样做好
  7. SGU 176 (有源汇最小流)
  8. JSON对象及方法
  9. sqlserver数据库里怎样设置datetime类型的小数位数为3位
  10. Python 进阶_OOP 面向对象编程_静态方法和类方法