macaca .真机 测试 各种疑难杂症

1、安装macaca  及相关配置之后,用安卓真机跑sample java案例,报uiautomatorwd.java的错误,具体就是这样子:

INSTRUMENTATION_STATUS: stream=Error in MacacaTestRunner(com.macaca.android.testing.UIAutomatorWD):com.alibaba.fastjson.JSONException: syntax error, expect [, actual undefined, pos 0 at com.alibaba.fastjson.parser.DefaultJSONParser.parseArray(DefaultJSONParser.java:1103) at com.alibaba.fastjson.parser.DefaultJSONParser.parseArray(DefaultJSONParser.java:1090) at com.alibaba.fastjson.JSON.parseArray(JSON.java:487) at com.macaca.android.testing.UIAutomatorWD.MacacaTestRunner(UIAutomatorWD.java:34)


nnd,花费了n多天时间去查这么问题,没查到解决方案,偶尔看到群里有人说回退uiautomatorwd版本到1.0.45,抱着试一试的态度,居然成功了!

具体操作,到macaca网站去找关于uiautomatorwd的1.0.45版本的commit,点击<>进去就可以下载zip包,解压之后就是完整的文件夹。


呕心巨献的地址:

https://github.com/macacajs/UIAutomatorWD/commit/5f28a89e5eb6b749086aad5ef1b69d97d85ba24b

点击页面里的browse files,进去新页面之后点击clone or download,获取git地址或者直接下载zip!本地解压之后,替换到macaca服务后重启即可!


将本地的macaca下的uiautomatorwd做替换,使用cp命令即可,比如:

cp -Rf UIAutomatorWD-58d843b27efb936907d306818a05254b108d463e/* /tmp/node_modules/[email protected]@uiautomatorwd


然后再重启macaca server服务再去跑真机测试,如果还是报错,那就删除真机上安装的uiautomator的包,然后再次重新跑case,一般就能通了!

2、同样的如果app inspector也出现同样的同样关于json的报错,回退app inspector里的uiautomatorwd的版本!使用的命令比如:

cp -Rf UIAutomatorWD-58d843b27efb936907d306818a05254b108d463e/* /usr/local/lib/node_modules/app-inspector/node_modules/[email protected]@uiautomatorwd


之后重启app inspecor,如果还是不行那么同样的,删除手机上的相关包,再次重启app inspector!



哎,劝一句,不要随便更新macaca了。更新完了坑太多,而且也不好招人去问问题,有可能会有很久的延迟!就让uiautomatorwd先留在1.0.45版本,蛮好的




你可能感兴趣的:(乱起八糟)