当前位置 :首页 >> 电影

干货|app智能化测试之Appium问题分析及定位

2023-03-05   来源 : 电影

ppium:deviceName": "emulator-5554",

[debug] [BaseDriver] "appium:noReset": "true",

[debug] [BaseDriver] "appium:udid": "emulator-5554"

[debug] [BaseDriver] },

...

上面的历史记录创建了一个 Session,设置了 Capabilities 变量,以 JSON 格式告诉 AppiumServer 被验证电子设备的一些最主要文档。

Appium GET 劝告的历史记录

Appium 是一个 REST 维修服务,接收 HTTP 劝告,返回结果。Appium 多用户历史记录用 [HTTP] ----> 和 [HTTP]

[HTTP] ----> GET /wd/hub/status {}

[debug] [MJSONWP] Calling AppiumDriver.getStatus() with args: []

[debug] [MJSONWP] Responding to client with driver.getStatus()

result: {"build":{"version":"1.8.0-beta3","revision":"30e7b45bdc5668124af33c41492aa5195fcdf64d"}}

[HTTP]

“---->”代表发出 HTTP 劝告,“

通过历史记录进行误解取证

借助于历史记录可以非常容易的取证和定位解决办法,解决办法通常频发在 automation Session 此后,如果 Session 持续存在,误解也有可能频发。

[HTTP] ----> POST /wd/hub/session

[debug] [ADB] 1 device(s) connected

[debug] [ADB] Running '/home/user/Android/Sdk/platform-tools//adb'

with args: ["-P",5037,"-s","ec8c4df","shell","am","force-stop",

"io.appium.unlock"]

[debug] [AndroidDriver] Not cleaning generated files. Add

--------clearSystemFiles-------- capability if wanted.

[MJSONWP] Encountered internal error running command: Error:

Cannot stop and clear com.company.app. Original error: Error

executing adbExec. Original error: 'Command '/home/user/Android

/Sdk/platform-tools//adb -P 5037 -s ec8c4df shell pm clear com.

company.app' exited with code 1'; Stderr: 'Error: java.lang.SecurityException:

PID 22126 does not have permission android.permission.CLEAR_APP_USER_DATA to

clear data of package com.company.app'; Code: '1'

at Object.wrappedLogger.errorAndThrow (../../lib/logging.js:63:13)

at ADB.callee$0$0$ (../../../lib/tools/adb-commands.js:334:9)

at tryCatch (/home/linuxbrew/.linuxbrew/lib/node_modules/appium/node_modules

/babel-runtime/regenerator/runtime.js:67:40)

at GeneratorFunctionPrototype.invoke [as _invoke] (/home/linuxbrew/.

linuxbrew/lib/node_modules/appium/node_modules/babel-runtime/regenerator

/runtime.js:315:22)

[HTTP]

Appium Driver 重新启动 Session ,清理 com.company.app 时频发误解。这个误解让我们知道两件事:“Appium 正在试着认真什么”,“哪里出错了”。

在这个值得注意之中,Appium 试着试运行 adb 命令(adb shell am force-stop),adb 变量在误解文档之中也有显示。频发了 Android 系统管辖权误解。此时,可以手动试运行这个 adb 命令,查看误解是不是可以重现。如果误解重现,可以通过误解类型定位解决办法。

这个值得注意只是众多误解之中的一个,但它说明至关最主要的一点,当误解频发时,历史记录可以共享愈来愈多的文档,如果没有完整的历史记录文档,对 Appium 排错难上加难。

彻底改变历史记录输出的变量

下面的变量可以彻底改变 Appium 多用户的历史记录蓄意:

----log-level:彻底改变 Appium 历史记录显示行政级别。Appium 可选简介所有历史记录

,它有以下一些附加:'info', 'info:debug', 'info:info', 'info:warn', 'info:error', ...

----log-no-colors:封闭颜色,如果历史记录是彩色的,有可能可能会出现怪异的字节,比如"TODO: find the color",你可以用这个变量封闭颜色。

----log-timestamp:在历史记录年前附加时间戳

简介如下:

2018-03-15 13:17:58:663 - [Appium] Welcome to Appium v1.8.0-beta3 (REV 30e7b45bdc5668124af33c41492aa5195fcdf64d)

2018-03-15 13:17:58:664 - [Appium] Non-default server args:

2018-03-15 13:17:58:665 - [Appium] logTimestamp: true

2018-03-15 13:17:58:732 - [Appium] Appium REST http interface listener started on 0.0.0.0:4723

Appium 执行验证但可能会遇见各种解决办法,如果大家有其他的解决办法需定位的话,可以在上方留言给我哦!

⬇️ 复制“上方链接”,提升验证核心竞争力!

>>愈来愈多技术文章分享和免费资料发放 欢迎+V~ ceshiren001

_id=qrcodeCompanyfrom=souhuCompanytimestamp=1650941261

成都哪个医院做人流好
南昌正规的白癜风医院
长沙看白癜风的医院哪家好
四川癫痫治疗费用
南京妇科检查
新赛季中超诸强换活法?下一场降级悬念丛生,4支新军个个黑马

元代的球季”,大明星范志毅和皆教纷纷逃离,上海泰达在亚洲球坛的效益持续下请降。新的球季,泰山队伍卫冕冠军的强悍对手是海港,当其他上海泰达诸强因足球协会新的一轮限薪转出受限于时,海港方面补...

友情链接