- 为什么要用到selenium Grid
1.需要在不同系统和浏览器运行测试(如我现在是win7系统,需要脚本在safari浏览器中运行, 如果不使用grid 那我们做法一般是将环境代码在到mac上搭一个,脚本copy过去后在mac上跑,这样很麻烦,使用grid后 只需要搭建hub node即可)
2.减少测试执行时间
3.进行多浏览器,多线程并发运行
selenium grid的组成简单描述
上面有提到hub 与node,grid是由一个集线器hub和多个客户机node组成,如果你的程序需要在不用的浏览器,不同的操作系统上测试,而且比较多的case需要多线程远程执行,那么一个比较好的测试方案就是使用 selenium grid,hub用来管理各个代理节点的注册和状态信息,并且接受远程客户端代码的请求调用,然后把请求的命令再转发给代理节点来执行。
1. 环境搭建
hub启动
1.java环境搭建及环境变量配置
2.jar包下载
http://selenium-release.storage.googleapis.com/index.html 下载jar包最好与selenium版本一致
3.dos命令运行hub
1.dos命令进入jar包存放目录
2.dos命令中执行java -jar selenium-server-standalone-2.53.1.jar -role hub ,执行后出现如下页面则启动成功
可通过http://192.168.40.27:4444 地址访问,出现如下页面
hub默认端口4444,启动多个hub时需要修改端口,如下启动端口为4445的hub, java -jar selenium-server-standalone-2.53.1.jar -role hub -port 4445
node注册
1.保证node与hub两台机器能互相ping通,
2.java环境配置
3.jar包下载
http://seleniumrelease.storage.googleapis.com/index.html
4.dos命令先进入jar包存放目录,然后再当前目录下执行E:\grid>java -jar selenium-server-standalone-2.53.1.jar -role node -hub http://1
92.168.40.27:4444/grid/register 出现下图说明成功