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

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

编写测试用例

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

编写启动停止测试的 APK

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

系统签名

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

提问

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

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

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

bauul #10 · 2017年04月26日 Author
哈喽 回复

你那是 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 回复

那最好了,感谢

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