别拿少数来说了,普遍同岗位的测试就是比开发工资低,这是事实。
首先你这段命令是在脚本中运行的吧,根本就不需要加 adb shell 前缀。然后如果你用的是 u2,不允许直接 runtime 运行 shell 脚本的,可以使用 UIDevice.executeShellCommand。
—— 来自 TesterHome 官方 安卓客户端
厉害,2 年资深
—— 来自 TesterHome 官方 安卓客户端
飞跃。。。
—— 来自 TesterHome 官方 安卓客户端
截完图了,继续抛出一个异常不就可以了,except 后面先捕获一个 e
—— 来自 TesterHome 官方 安卓客户端
打开源码看下就知道了,猜测可能是 dump 出来的布局文件没有权限拉出来,看下/data/local/tmp/有没有读写权限吧!
—— 来自 TesterHome 官方 安卓客户端
#4 楼 @codeskyblue 不是的,uiautomator 本身就是利用了 accessibility APIS,本身和 accessibility 就是冲突了,和抓取 toast 关系不大!
—— 来自 TesterHome 官方 安卓客户端
#1 楼 @396266318 因为 ATX 助手的自动点击授权功能要么是通过 uiautomator 脚本实现,要么是通过 AccessibilityService,当 Appium 启动时也会注册 uiautomator 的 Accessibility 客户端,会干掉原来所有注册的!
—— 来自 TesterHome 官方 安卓客户端
#9 楼 @FengYeLoveCode 如果底层用 u1 可以指定 instance 指定选哪个,如果用 u2,可以 findObjects 获得一个列表,完全自己取一个,这完全可以改的。
—— 来自 TesterHome 官方 安卓客户端
难道不可以用类似 instance 的方式吗?或者把所有相同 id 的控件集合找出来,然后在列表中选择其中一个,不一定要完全唯一才可以定位的!
—— 来自 TesterHome 官方 安卓客户端
monkey 是随机的不可能做到 100% 覆盖,哪怕是定制 monkey 实现自动遍历也不太可能 100%,或者可以用 monkey 的脚本模式,通过写脚本覆盖,不过 100% 也是强人所难。
—— 来自 TesterHome 官方 安卓客户端
社区就应该多些思维的碰撞,没什么不好的,每个人都有不同的看法,像之前很多篇帖子都没什么人回复才显得死气沉沉哈!
—— 来自 TesterHome 官方 安卓客户端
这不一定是真的原因,你看源码就知道了,可能是 appium 启动的 uiautomator 进程还没关闭导致的,其实你只要调出手机多任务管理,清理下后台应用就可以了,和 uiautomator 要等待 idle 空闲状态没有关系。
—— 来自 TesterHome 官方 安卓客户端
#1 楼 @anonymous 瞎说
—— 来自 TesterHome 官方 安卓客户端
#8 楼 @codeskyblue +1
—— 来自 TesterHome 官方 安卓客户端
赞!
—— 来自 TesterHome 官方 安卓客户端
试下监听 AccessibilityEvent 事件,可以抓取 Toast!
—— 来自 TesterHome 官方 安卓客户端
android 除了 logcat,还可以看 dropbox 的缓存,crash 或者 anr 等问题都会缓存日志的。
—— 来自 TesterHome 官方 安卓客户端
抛弃 adb 的话,可以用串口板的,走网络更加不可靠。
—— 来自 TesterHome 官方 安卓客户端
请楼主先给出你的答案。
—— 来自 TesterHome 官方 安卓客户端
adb 本身就不够稳定,超过一定数量机器扛不住的。
—— 来自 TesterHome 官方 安卓客户端
控件的左上角和右下角坐标。
—— 来自 TesterHome 官方 安卓客户端
最简单的方式,adb shell dumpsys activity top | grep ACTIVITY,可以获取当前页面的 activity 名。
—— 来自 TesterHome 官方 安卓客户端