其他测试框架 在 APK 上点击一个按钮以开启停止自动化测试的方法

bauul · 2017年04月25日 · 最后由 bauul 回复于 2017年04月26日 · 6392 次阅读

编写测试用例

使用 uiautomator 或 uiautomator2.0 编写自动化测试用例

编写启动停止测试的 APK

启动:主要是建一个 service,在 service 中调用 am start 命令启动自动化测试
停止:杀掉执行的进程

系统签名

需要使用系统签名打包,基本上只有手机软件生产商才有,比如小米,华为。

提问

上面的方法,我有试过,是可以的,但是是否还有其他方法?

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 10 条回复 时间 点赞

此处的"需要使用系统签名打包"就是执行命令的 app 需要 root 权限.
你看懂我的帖子https://testerhome.com/topics/8080 就知道怎么做了

对 哈喽 回复

你那是 root 过的手机吧,我这方法是在没 root 的手机做的,

曾经看过一篇文章,具体步骤忘记了,只记得:
1、写一个 APK,在 APK 里引入第 2 和第 3 点里的 jar 包。
2、uiautomator 的 run 方法是 public 的,所以可以将 uiautomator 的源码打成 jar 包,替换安卓手机里的 uiautomator 文件。
3、将 uiautomator 的用例脚本编译为 jar 包。
只记得这些了。

对 wixed 回复

替换手机里的 uiautomator 文件,哪个位置的文件,不需要 ROOT 吗?

对 wixed 回复

有尝试过这个方法,应该是需要从 PC 下发点击指令吧,楼主的意思是可能是直接脱离 PC 运行,不需要数据线辅助的。

对 Eric 回复

对滴

对 bauul 回复

不需要 ROOT 的。执行的开关其实就是在一个 APK 里运行 uiautomator 的命令。
手机里有一个 uiautomator 的文件。

对 wixed 回复

那是需要系统签名才可以的,否则会报没有权限的错误

对 bauul 回复

我去找找那篇文章,不需要系统级的权限

对 wixed 回复

那最好了,感谢

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册。