Soloπ:支付宝开源的Android专项测试工具- https://github.com/soloPi/SoloPi
Soloπ:支付宝开源的Android专项测试工具- https://juejin.im/post/5d25a79ee51d4556db694a8d
测试:从早期基于测试脚本的单机自动化,到录制回放、图像识别、云测平台等测试技术贴合实际业务需求深度应用和创新,测试效率从而一次又一次被提升。
支付宝在移动端上实现的一套无线化、非侵入、免 Root 的 Android 专项测试方案 Soloπ。直接操控手机,即可实现自动化的功能、性能、兼容性、以及稳定性测试等工作。
作为一套完整的专项测试方案,除了前面提到的录制回放、一机多控、性能测试外,Soloπ 还提供了数据 Mock,性能加压、网络模拟、智能 Monkey 等功能。目前 Soloπ 的部分源码已开源(项目地址:https://github.com/soloPi/SoloPi
移动测试 1.0 时代,也可以称之为探索期。由于厌倦了日复一日的手工操作,如何提升测试效率成为了移动测试领域最重要的课题,在此期间,除了 Monkey、UiAutomator、Instruments 等官方提供的工具,业界还涌现了一批优秀的开源自动化测试工具/框架,在自动化驱动能力的基础之上,不仅可以实现基本功能的验证,还可以结合性能采集方案、遍历算法等实现各类专项测试的自动化。在这个阶段,自动化测试的常见形态是在单机或本地少数几台 PC 上部署测试环境,再利用 Jenkins 等工具实现持续集成。
移动测试 2.0 时代伴随着测试技术的持续发展、又得益于 STF 的开源,业界开始出现了云测平台的概念,将真机设备、任务管理、自动化框架以及专项测试方案打包在平台中作为服务提供出去,给用户带来了一站式的测试体验。另一方面,远程调试、设备调度等技术的引入极大的提升了设备的利用率,测试人员不再需要为缺少测试设备或测试任务排队耗时而担心。对于云测平台用户而言,在此阶段常见的测试形态是:在本地 PC 上开发测试脚本,再上传至云测平台执行,最后可在平台中查看测试报告,测试流程简单且清晰。
移动测试 2.0+在保留了上述“云测”的玩法之外,移动测试 2.0+ 时代下的测试技术提供的往往不再是某一个独立的小工具,更多的是带来一套完整的解决方案,例如为用户提供一套定制化的 IDE 环境,结合录制回放、图像识别等技术,用户可能只需要做一些简单的框选、拖拽就能完成测试脚本的开发。另一方面,由于办公环境、硬件条件等因素的限制,越来越多的测试人员希望可以在移动端上直接发起测试,做到移动测试“移动测”。当然,无论是云端、IDE 端、还是移动端,都应该做到能力互通,即“多端多通”,这样才能让测试方案更加灵活、适用于更多场景。
目前已经有一些实现 ADB 通信协议的 Java 开源项目,如 AdbLib ,他们封装了一套 ADB 的调试通信服务,能够替代 PC 上 ADB Server 的角色。我们在Soloπ应用中集成了 AdbLib 开源库,包装成一套 ADB 命令执行工具,为 Soloπ 后续各种专项测试能力的实现奠定了坚实的基础。
A Java library implementation of the ADB network protocol- https://github.com/cgutman/AdbLib
这里库的示例项目: https://github.com/cgutman/AdbLibTest
Java ADB library- https://github.com/tananaev/adblib