一、环境检查与参数获取

1.通过adb命令获取,获取参数信息

测试怎么查看ios的日志 app测试如何查看日志_缓存

 参数信息:

{
  "appium:deviceName": "emulator-5554",
  "appium:platformVersion": "5.1.1",
  "platformName": "Android",
  "appium:appPackage": "com.android.launcher3",
  "appium:appActivity": "com.android.launcher3.Launcher"
}


测试怎么查看ios的日志 app测试如何查看日志_adb_02

连接成功,证明appium环境不存在问题

2.真机环境检查

adb获取参数信息:

测试怎么查看ios的日志 app测试如何查看日志_测试怎么查看ios的日志_03

二、日志的问题逐项尝试解决办法

1.The 'automationName' capability was not provided in the desired 
 capabilities for this Android session.automationName:制定自动化引擎,
默认是Appium(Android下是uiautomator2,ios下是uiautomation)
安卓下还可以指定uiautomator1,ios下还可以指定为XCUITest(只能是这个)
automationName没有提供安卓会话,这个问题可以先搁置。默认是Appium(Android下是uiautomator2,这条日志是可以忽略。
2.Setting 'automationName=UiAutomator2' by default and using the UiAutomator2 Driver 与日志In previous versions (Appium <= 1.13.x), the default was 'automationName=UiAutomator1'

从日志中发现:[UiAutomator2]检测过程异常终止。重新启动UiAutomator2(1中的1),

测试怎么查看ios的日志 app测试如何查看日志_Android_04

 也就是说,将automationName:UiAutomator1,启动连接,结果也是相同的错误,故这一条日志,忽略

3.The next major version of Appium (2.x) will **require** the ,  'automationName' capability to be set for all sessions on all platforms,Appium的下一个主要版本(2.x)将要求为所有平台上的所有会话设置'automationName'功能,这里可以看一下appium的版本,这一条日期,可以忽略

4.Appium v1.22.3 creating new AndroidUiautomator2Driver (v1.70.1) session,Applying relaxed security to 'AndroidUiautomator2Driver' as per server command line argument.  All insecure features will be enabled unless explicitly disabled by --deny-insecure
译文:创建新的AndroidUiautomator2Driver (v1.70.1)会话,根据服务器命令行参数对'AndroidUiautomator2Driver'应用宽松的安全性。所有不安全特性都将被启用,除非通过——deny-insecure显式禁用,可以参照官网文档,了解一下,忽略的内容

5.io.appium.uiautomator2.server与io.appium.uiautomator2.server.test未安装的问题,一般在appium安装位置:C:\Program Files\Appium Server GUI\resources\app\node_modules\appium\node_modules\appium-uiautomator2-server\apks目录下,单独将这两个文件复制到桌面,重新安装

测试怎么查看ios的日志 app测试如何查看日志_测试怎么查看ios的日志_05

 从日志中发现,这里他们已经被安装了。

测试怎么查看ios的日志 app测试如何查看日志_adb_06

再次连接报错,成功这说明问题已解决。个人手机出现的问题:

[UiAutomator2] The instrumentation process cannot be initialized. Make sure the application under test does not crash and investigate the logcat output.

与之前的日志对比:[[W3C]]Encountered internal error running command: Error: The instrumentation process cannot be initialized.
Make sure the application under test does not crash and investigate the logcat output.

首先,io.appium.uiautomator2.server与io.appium.uiautomator2.server.test,在模拟器上运行正常,则说明,这两个app不存在问题,

其次:观测手机屏幕变化,打开了appium setings连续闪了2次,结合POST /wd/hub/session 500 16200 ms - 861,总结为:手机作为服务器,返回500,证明手机端服务出现了问题,导致uiautomator2无法初始化检测进程,应用程序不会崩溃,需要去看手机运行日志。

测试怎么查看ios的日志 app测试如何查看日志_缓存_07

通过一个快速的办法,区分是手机的问题还是io.appium.uiautomator2.server的问题,

在手机应用中,找到io.appium.uiautomator2.server的app,查看存储和缓存

测试怎么查看ios的日志 app测试如何查看日志_Android_08

 软件只要被打开过,总会产生用户数据和缓存,记录使用信息,这里查看

测试怎么查看ios的日志 app测试如何查看日志_缓存_09

 用户数据和缓存都是没有,对比模拟器:

测试怎么查看ios的日志 app测试如何查看日志_adb_10

手机没有任何 io.appium.uiautomator2.server的使用记录。在手机路径浏览,这两个目录下,找日志,关于手机错误的问题,也是及时反馈的手机售后服务

测试怎么查看ios的日志 app测试如何查看日志_android_11

 这条错误日志,并不是我在使用appium。

测试怎么查看ios的日志 app测试如何查看日志_测试怎么查看ios的日志_12

 

测试怎么查看ios的日志 app测试如何查看日志_Android_13