自动化工具 安卓测试工具的几种实现方式

甬力君 · 2019年06月25日 · 最后由 cmlanche 回复于 2019年06月26日 · 1413 次阅读

因为工作之余经常研究一些乱七八糟的东西,学到了一些东西。
脑洞大开,这里分享一些实现测试工具的歪门邪道,大佬们请补充。

APK

这种方式没有什么介绍的,就是和常规开发一样,Java 调用安卓 sdk 编译打包。

如:腾讯测试工具GT

NDK

这种方式实现的测试工具有点类似于在编写 Linux c/cpp 程序,调用一些自带的头文件或者一些私有的头文件来实现。

如:测试平台 openstf 的辅助工具minicapminitouch都是这种方式,cpp 和私有头文件以及开源库libevdevlibjpeg-turbo实现。

DEX

先说说 dex,dex 是安卓虚拟机的字节码格式,常规的 pc 平台的 Java 虚拟机执行的包后缀名是 jar,那么安卓就是 dex,大家可以解压我们的 apk 包看下里面绝对是包含至少一个.dex 文件的。
既然 dex 可以直接执行,那么我们是不是可以考虑直接用 Java 调用 sdk 的 API 或者使用反射方式调用私有 API 编写测试工具。

如:安卓模拟器提供商 Genymobile 开发的一款开源屏幕同步工具scrcpy就是这种方式。

大部分安卓的测试平台和工具里面用到的辅助工具都是这些方式,大佬们继续补充。
ps:有大佬在长沙的话,帮推荐一份工作。

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

发现新大陆 scrcpy

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