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

Posted 软件测试君

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了APP自动化测试-Appium日志分析相关的知识,希望对你有一定的参考价值。

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

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

appium收到请求

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

接下来是一段提示信息

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

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

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

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

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

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

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

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

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

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

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

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


最后:如果对软件测试、接口测试、自动化测试、技术同行、持续集成、面试经验交流。感兴趣可以进到 902061117,群内会有不定期的分享测试资料。

如果文章对你有帮助,麻烦伸出发财小手点个赞,感谢您的支持,你的点赞是我持续更新的动力。

好文推荐

2021软件测试工程师面试题汇总(内含答案)-看完BATJ面试官对你竖起大拇指!

什么样的人适合从事软件测试工作?

软件测试和软件开发哪个发展更好

那个准点下班的人,比我先升职了…

以上是关于APP自动化测试-Appium日志分析的主要内容,如果未能解决你的问题,请参考以下文章

Appium-appium日志分析

appium启动日志分析

Appium自动化测试框架

App自动化测试探索借助Appium实现APP的自动化测试

appium+python搭建自动化测试框架_TestAPP框架

Appium - 自动化测试框架 - adb