最新消息:20210917 已从crifan.com换到crifan.org

【已解决】Appium启动调试界面报错:Original error You must include a platformName capability

报错 crifan 749浏览 0评论
折腾:
【已解决】Mac中用appium的GUI图形界面调试页面元素
期间,对于点击 放大镜🔎 后,出现的 调试界面
点击 Start Session,但是报错:
An unknown server-side error occurred while processing the command. Original error: You must include a platformName capability
因为此处 手机端,已黑屏。貌似调试或session停止了?暂停了?
重新试试。
结果问题依旧。

参考:
Mac 下安装 appium 调试安卓真机 – 简书 (jianshu.com)
需要复制json的Capability才行的
注:前面之所以没去想到,填入参数,是因为刚刚从Python代码中,已经启动并运行了appium,且可以正常启动app(微信),以为是:
此调试界面,是和内部appium的server是相同的,自动会传递当前内部的(Capability的)参数的。
结果现在和后续证实:是需要额外填入参数的。
-》这点上,已经启动appium的server和client的情况下,用GUI界面调试,仍需重新填入参数,和之前的uiautomator2+weditor比,其无需额外参数,直接一个安卓的设备id即可连接,appium显得是使用起来麻烦了些
去试试
{
    "platformName": "Android",
    "deviceName": "crifan Redmi10X",
    "udid": "orga4pmzee4ts47t",
    "appPackage": "com.tencent.mm",
    "appActivity": ".ui.LauncherUI",
    "noReset": True
}
点击 Save as
再点击Start Session
问题依旧。
难道是参数没保存进去?
后记:此处,之所以没注意到json参数有误,主要是因为:
此处窗口大小没有全部最大化,导致JSON Representation的底部的 红色错误提示,被遮挡了,没看到。
后来窗口拉大,高度增加后,才看到json报错了
结果发现真的是:
点击Save报错:
Unexpected token T in JSON at position 190
看来是:True 的T是大写,不支持
改为:
{
    "platformName": "Android",
    "deviceName": "crifan Redmi10X",
    "udid": "orga4pmzee4ts47t",
    "appPackage": "com.tencent.mm",
    "appActivity": ".ui.LauncherUI",
    "noReset": true
}
再点击Save,即可保存了
参数同步到左边,作为多个参数了:
之后再点击Start Session,就可以正常启动appium的调试界面了,而不会报错了。
【总结】
此处,背景是
已启动了appium的server端
已用Python代码,加上Capability参数,启动了client端,且成功打开了当前的app:微信
然后希望用appium的GUI图形界面调试,结果报错:
An unknown server-side error occurred while processing the command. Original error: You must include a platformName capability
原因:没有填入参数
解决办法:
填入参数即可
但要注意+额外说明的是:
  • 此处appium的GUI调试界面,要填写的Capability参数,和Python代码中Capability参数,没关系
    • 就不会,像我本以为的,appium的server内部,自动填入python代码传递的参数了
  • GUI中填写Capability参数时,可以直接一次性写好JSON字符串,放到 JSON Representation中,点击Save,即可自动解析到左边参数列表中
    • 注意
      • 如果填写的json有错误,会有错误提示的
        • 注:GUI窗口要足够大,确保能看到JSON Representation底部的JSON错误提示
          • 我开始就是,窗口太小,没看到底部错误提示,而搞不清为何还是报错
    • 说明
      • Save后,记得Save as一下,可以直接加载,避免每次充分输入参数。
        • 正常Save后,第二个Tab:Saved Capability Set 后面会有个数提示,比如 1,2。点击Saved Capability Set,可以看到参数详情。
附上,此处的参数:
{
    "platformName": "Android",
    "deviceName": "crifan Redmi10X",
    "udid": "orga4pmzee4ts47t",
    "appPackage": "com.tencent.mm",
    "appActivity": ".ui.LauncherUI",
    "noReset": true
}
其中:
  • json中,不支持Python中的True,要写成小写的 true

转载请注明:在路上 » 【已解决】Appium启动调试界面报错:Original error You must include a platformName capability

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
87 queries in 0.147 seconds, using 21.62MB memory