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

bauul · April 25, 2017 · Last by bauul replied at April 26, 2017 · 1724 hits

编写测试用例

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

编写启动停止测试的 APK

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

系统签名

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

提问

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

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

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

bauul #2 · April 26, 2017 Author
哈喽 回复

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

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

bauul #4 · April 26, 2017 Author
wixed 回复

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

wixed 回复

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

bauul #6 · April 26, 2017 Author
Eric 回复

对滴

bauul 回复

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

bauul #8 · April 26, 2017 Author
wixed 回复

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

bauul 回复

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

bauul #10 · April 26, 2017 Author
wixed 回复

那最好了,感谢

需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up