Appium Grid 并发测试

一、背景

Selenium玩的比较6的同学比较清楚:在Selenium中三大组件中有包含了Selenium Grid,而其作用就是分布式执行测试用例。

主要的应用场景在于:

◆ 缩短测试执行时间,提高自动化测试效率

◆ 多浏览器的兼容性测试。

Selenium只是针对于web平台的自动化,然而移动端平台的兼容性测试所涉及到机型众多,多设备并发测试需求更加迫切。

而Appium Grid恰好就是基于Selenium Grid这一模式发展而来,可以很好的满足我们的需求。

Google爬到一张原理图,大家可以来看下:

Appium Grid 并发测试

 

Grid模式下有两个非常重要的组件:

◆ hub跟交换机的角色类似,通过网线连通到各种设备。

官方的解释是:hub用来管理各个节点的注册和状态信息,并且接受远程客户端代码的请求调用,然后把请求的命令再转发给节点来执行。

◆ node节点,执行脚本代码,通过上图可以看到,hub将请求发给node去执行,这里的node就是Appium Server端 。

二、环境/工具准备

◆ selenium-server-standalone-3.12.0.jar

◆ 夜神模拟器多开

◆ Appium Desktop V1.8.2

◆ nodejs安装包

三、实践步骤

开启hub

selenium-server-standalone-3.12.0.jar

这支文件可以从


http://selenium-release.storage.googleapis.com/index.html 进行下载

下载完成之后直接再dos环境下去执行:

Appium Grid 并发测试

 

-role参数表示指定当前角色是为hub 当然除了-role参数还有很多其他的参数可以提供

Appium Grid 并发测试

 

此时可以在浏览器中输入
http://127.0.0.1:4444/grid/console 进行访问,

默认hub起来的端口为4444

此页面为hub的控制管理页面,当前没有node节点链接上

Appium Grid 并发测试

 

三、node注册

首先开启模拟器(这里以夜神模拟器举例,其他的模拟器/真机类似),保证adb devices是可以检测到设备

Appium Grid 并发测试

 

当前deviceName为127.0.0.1:62001

新建test1.json文件,在json中的配置即为node注册到hub所需要的信息(注意在#后面的内容需要删除掉,我这边是为了方便进行释义)

Appium Grid 并发测试

 

安装nodejs(Appium desktop版本默认没有提供命令行启动的方式,需要安装nodejs支持)

进入到Appium的js启动脚本路径,我的路径为

C:\Users\Administrator\AppData\Local\Programs\Appium\resources\app\node_modules\appium\build\lib\main.js

通过执行如下Appium启动指令

Appium Grid 并发测试

 

◆ -a参数表示Appium Server的工作IP地址

◆ -p参数表示Appium Server的端口号

◆ -bp参数表示bootstrap的监听端口号

◆ -U参数表示Appium链接到哪台设备上

◆ --nodeconfig后面接node节点配置文件

可以看到第一个Appium Server节点已经成功注册上

Appium Grid 并发测试

 

刷新浏览器即可得到节点相关信息

Appium Grid 并发测试

 

四、注册另外的节点

以此类推,使用夜神模拟器多开功能开启第二台夜神模拟器,第二个node节点的json配置:

Appium Grid 并发测试

 

执行命令:

Appium Grid 并发测试

 

Appium Grid 并发测试

 

五、总结

目前我们的hub能够管理多个节点,但是需要注意的是我们只是用Grid搭建好了分布式测试环境,不能直接一个脚本扔给hub就可以开始在node上并发测试。

怎么对接到我们的脚本,能够让我们的脚本分发到不同node去执行,多个node节点并发执行测试用例这些问题我们还没有解决,后续的文章我们为大家补充,大家可以持续关注。

推荐一个软件测试学习交流群:785128166,群里有分享的视频,面试指导,测试资料,还有思维导图、群里有视频,都是干货的,你可以下载来看。主要分享测试基础、接口测试、性能测试、自动化测试、TestOps架构、Jmeter、LoadRunner、Fiddler、MySql、Linux、简历优化、面试技巧以及大型测试项目实战视频资料。合理利用自己每一分每一秒的时间来学习提升自己,不要再用"没有时间“来掩饰自己思想上的懒惰!趁年轻,使劲拼,给未来的自己一个交代!

公众号:程序员二黑, 关注后免费领取海量学习资料。

好东西要和朋友一起分享哦
 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值