APP自动化测试-Appium日志分析

下面是我们的代码脚本:(环境准备工作就不在这里讲述,自行百度)

APP自动化测试-Appium日志分析

下图中,appium作为server端收到客户端发出的post请求,可以看到请求参数就是我们代码里面写的那些字段信息

APP自动化测试-Appium日志分析

appium收到请求

appium接收到请求后,开始创建会话,如下图:

APP自动化测试-Appium日志分析

接下来是一段提示信息

APP自动化测试-Appium日志分析

意思是:在创建的会话中没有"automationName(自动化测试引擎)"属性(在老版本里面用的是UiAutomator1–对应的Android版本是4.1以上UiAutomator2-对应的Android版本是4.3,所以这里我们要使用2)

如果没填写,Appium自动给按照默认值UiAutomator2来处理的,同时可以看到

APP自动化测试-Appium日志分析

这个属性值在后面2.x版本中将作为必传参数。同时Appium-1.13版本一下的automationName默认值为UIAutomator1,我这里使用的版本是1.21。为了后续代码兼容性,我们在这里把它加到我们的代码中,如下图:

APP自动化测试-Appium日志分析

创建会话成功之后,就开始使用adb命令查找已经连接的设备列表信息

APP自动化测试-Appium日志分析

图中日志可以看到,已经找到1台设备,并且已连接上(这里我用的是模拟器,所以看到的是IP地址+端口号)。这里大家会有一个疑问,假如我连了多台设备,那又该怎么处理呢?这个我们在后续的文章中来讲述。

注:如果本机的adb环境变量没有配置,这里就会报错。

接下来检查手机的Android版本信息,如下图:

APP自动化测试-Appium日志分析

下面开始Appium与手机进行通信,先在手机上安装appium相关的apk

APP自动化测试-Appium日志分析

 依次为:io.appium.settings、
io.appium.uiautomator2.server、appium-uiautomator2-server-v4.21.1.apk

 APP自动化测试-Appium日志分析

整个流程基本结束,现在把整个流程总结如下:

1、发送http请求到appium server

2、appium server收到之后创建session

3、获取已连接的设备,并找到对应的Android版本号信息

4、获取io.appium.settings的状态,获取它的版本信息,确保其为最新的版本

获取settings_apk-debug.apk的状态,获取它的版本信息,确保其为最新的版本

获取
io.appium.uiautomator2.server的状态,获取它的版本信息,确保其为最新的版本

5、启动手机上的uiautomator.server的服务,然后设置将本地appium server 收到的指令从本地的8200端口,转发到设备的6790端口

6、跟手机创建会话

7、打开app

8、如果60s内appium server没有收到客户端的http请求,则主动关闭与客户端、手机端的会话,然后关闭app

APP自动化测试-Appium日志分析

客户端-appium-手机通信过程

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值