Selenium grid是用来分布式执行测试用例脚本的工具,比如测试人员经常要测试多浏览器的兼容性,那就可以用到grid了。

selenium grid的hub相当于一个接收脚本并分发脚本的角色,node相当于一个执行脚本的角色。

(一)

1、从http://selenium-release.storage.googleapis.com/index.html上下载对应版本的Selenium server:

你使用的是什么版本的selenium就下载对应版本的server(我用的是3.141.59)

2、下载下来后打开cmd,进入到jar包所在的文件目录,输入java -jar selenium-server-standalone-x.xx.x.jar -role hub,这是万恶之源,先启它才能干后面的事。

java -jar selenium-server-standalone-3.141.59.jar -role hub

启动后在浏览器输入http://192.168.201.1:4444/可以访问,并可以看到一些默认配置

修改默认配置的方法

(1)直接命令行修改,启动的时候带上需要修改的配置,如下:修改端口号为4445

java -jar selenium-server-standalone-3.141.59.jar -role hub -port 4445

(2)新建一个json文件去修改 (hub.json与jar包不是同一目录下,需要带上json文件所在路径)

java -jar selenium-server-standalone-3.141.59.jar -role hub -hubConfig hub.json  

json文件格式如下:

(二)

将node服务注册到hub下

打开cmd输入以下:

java -jar selenium-server-standalone-3.141.59.jar -role node -hub http://192.168.201.1:4444/grid/register

提示意见注册了node,端口号为1667

注册成功界面

同样可以修改默认配置,与上述修改配置方法一样。

(1)cmd命令行修改

如果端口号已经被一个node节点占用了,那么我们可以修改默认端口号,相当于重新注册一个新的node,如下:

java -jar selenium-server-standalone-3.141.59.jar -role node -hub http://192.168.201.1:4444/grid/register -port 7777  

这时已经注册了两个node了,一个为1667,一个为7777

(2)外部json文件修改配置

新建一个json文件去修改 (node.json与jar包不是同一目录下,需要带上json文件所在路径)

java -jar selenium-server-standalone-3.141.59.jar -role node -nodeConfig node.json -hub http://192.168.201.1:4444/grid/register 

json文件格式如下:

****所有的配置的文件(浏览器驱动,json,jar包等等)都需要放在同一个目录底下,不然可能会报一些不知名错误

也可以配置phantomjs,方法都一样。

grid:一个脚本在不同(多台或一台)机器不同浏览器上执行

xml文件:配置脚本单个跑还是并发跑还是以什么方式去跑

grid+xml:多个脚本同时在不同机器不同浏览器上跑(并发跑)。

selenium grid的使用的更多相关文章

  1. 搭建selenium grid简单配置

    1.使用selenium提供的服务端独立jar包 :服务端.客户端都是运行于java7环境. 2.启动hub: hub配置文件如下: Java -jar selenium-server-standal ...

  2. Robot Framework + Selenium2Library环境下,结合Selenium Grid实施分布式自动化测试

    最近一段时间,公司在推行自动化测试流程,本人有幸参与了自定义通用控件的关键字封装和脚本辅助编写.数据驱动管理.测试用例执行管理等一系列工具软件的研发工作,积累了一些经验,在此与大家做一下分享,也算是做 ...

  3. Selenium Grid 学习笔记

    Selenium Grid 学习笔记http://www.docin.com/p-765680298.html

  4. Selenium Grid 运行报错 Exception thrown in Navigator.Start first time ->Error forwarding the new session Empty pool of VM for setup Capabilities

    Selenium Grid 运行报错 : Exception thrown in Navigator.Start first time ->Error forwarding the new se ...

  5. selenium Grid(一)

    selenium grid Quick Start selenium-grid是用于设计帮助我们进行分布式测试的工具,其整个结构是由一个hub节点和若干个代理节点组成.hub用来管理各个代理节点的注册 ...

  6. selenium Grid

    Selenium Grid 的机制是启动一个 hub,然后启动多个 Selenium RC 注册到 hub 上, 当测试请求到 hub 时,hub 会将测试分发给 Selenium RC, Selen ...

  7. selenium grid java 资料

    Grid TestNG: 使用Selenium Grid改进Web应用程序的测试: http://www.ithov.com/server/117464.shtml

  8. Selenium Grid跨浏览器-兼容性测试

    Selenium Grid跨浏览器-兼容性测试 这里有两台机子,打算这样演示: 一台机子启动一个作为主点节的hub 和 一个作为次节点的hub(系统windows 浏览器为ie) ip为:192.16 ...

  9. selenium grid的使用与配置

    一.selenium grid的组成与作用:由一个集线器hub和多个客户机node组成,如果你的程序需要在不用的浏览器,不同的操作系统上测试,而且比较多的case需要多线程远程执行,那么一个比较好的测 ...

  10. 转:Selenium Grid深入学习

    应网友要求写一个用Selenium Grid控制多系统多浏览器并行执行test case的例子. 因为我这里有两台机子,我打算这样演示: 一台机子启动一个作为主点节的hub 和 一个作为次节点的hub ...

随机推荐

  1. geoserver发布地图服务

    1.      Geoserver启动 blog.csdn.net 2014-09-18 20:30 Geoserver是著名的开源GIS软件之一.也是项目中常用的地图服务软件.基于geoserver ...

  2. PAT (Basic Level) Practice (中文)1041 考试座位号 (15 分)

    每个 PAT 考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位.正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考 ...

  3. PIE-SDK For C++栅格数据的创建

    1.功能简介 目前在地理信息领域中数据包括矢量和栅格两种数据组织形式.每一种数据有不同的数据格式,目前PIE SDK支持多种数据格式的数据创建,下面对栅格数据格式的数据创建功能进行介绍. 2.功能实现 ...

  4. 【算法】用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。

    public class Solution { Stack<Integer> stack1 = new Stack<Integer>(); Stack<Integer&g ...

  5. Qt多线程实现思路一

    实现一个线程开启时,时间计时器任然能够计数,两路独立工作的线程功能.从类的帮助文件中可以看到如下信息,静态公共成员函数和保护类型的函数,在静态函数中有睡眠函数msleep毫秒级,sleep秒级,usl ...

  6. IDEA 接口调试插件 HTTP Client

    界面客户端 使用手册 https://www.jetbrains.com/help/idea/testing-restful-web-services.html 打开方式 Tools -> HT ...

  7. 【转载】Cadence验证仿真工具IUS和IES

    本博客转自: cadence验证仿真工具IUS和IES | 骏的世界http://www.lujun.org.cn/?p=3714 cadence验证仿真工具IUS和IES cadence,有两大验证 ...

  8. react-native构建基本页面1---主页:tab栏

    配置Tab栏 配置Tab栏的图标 注意:使用图标,需要接收 license; /** * Sample React Native App * https://github.com/facebook/r ...

  9. 二分查找 python实现

    欢迎回来 [^first blood]. 要求A是升序数组 递归 只能查 数据存不存在,不能返回下标 def binary_find(A, m): if len(A) == 0: return -1 ...

  10. java面试记录一:跳表、判断二叉树相同、冒泡排序、cookie和session的区别、设计模式(单例、工厂、模板方法、原型、代理、策略)、抽象类与接口的区别

    1.什么是跳表? 跳表实际上就是多层链表 跳表可用在让链表的元素查询接近线性时间 代码结构及java实现参考博客园随笔 2.判断两棵二叉树是否相同?(结构相同,内容相同) 思路:(1)先定义树节点Tr ...