以视频分析为主要载体的人工智能算法在泛安防场景中是怎样落地的?>> 了解详情
写点什么

国内移动测试服务盘点

  • 2015 年 6 月 24 日
  • 本文字数:3028 字

    阅读完需:约 10 分钟

随着移动设备和系统的碎片化程度越来越高以及复杂的移动网络情况,代码级测试和模拟测试已经无法满足移动开发者的需求,真机甚至真人的测试越来越被开发者们所重视,逐渐成为移动开发的标配。苹果和谷歌也纷纷推出自己的内测服务。苹果自收购 TestFlight 以来,将它深入集成到了 Xcode 和苹果开发者中心内。Google 则计划在这个夏天正式推出 Cloud Test Lab 服务。另外 Twitter 收购 Crashlytics 也在业界引起了一定反响。

不过,TestFlight 等服务由于在国外,不可避免会出现速度慢,不够本地化等问题,再加上国内安卓市场的复杂情况,让它们对于国内开发者来说并不是最佳选择。在这种情形下,国内的移动测试服务趁势而起,下面就为大家盘点一下。

从功能上来划分,移动测试服务可以分为真机自动化测试,内测托管分发,众包测试,移动性能监测。

真机自动化测试

真机自动化测试服务利用一些自动测试框架如 Robotium 等,通过一个 Hub 连接多台真机同时进行应用的测试,在上面可以进行应用的适配、遍历、功能测试,以及根据脚本进行一些模拟操作,多用于 Android 应用的测试。这种模式能够帮助开发者定位一些应用在真实环境中的简单出错信息。但也有一些局限性,一是开发者发现应用在某型号设备上出错也难以进一步深入调查,他还需要向周围同事或朋友征集出错型号设备来进行真人测试;二是这种真机自动化测试只能运行一些简单的脚本,毕竟不是真人操作,可能无法测试出真实场景中的情况。

国内以该模式为代表的服务提供商有:

  • Testin :面向 iOS、Android 平台的真机自动测试服务。公司启动较早,有数千台设备供测试。除了真机自动化测试,Testin 现在还推出了众测、崩溃信息分析、短信平台等功能。
  • 易测云:由东软集团开发的一个测试服务,2013 年 1 月上线。官网上称有 200+ 台设备供测试。它自行研发了一个 Guerrilla 测试框架,并且支持 Robotium 和 Athrun 测试框架编写的自动化测试包。
  • 百度 MTC : 百度移动云测试中心,支持 Robotium 脚本,提供兼容测试、性能测试、遍历测试、安全漏洞扫描。另外它也提供一个众测功能。
  • 腾讯 bita :由腾讯推出的真机自动化测试服务,主要面向 Android 开发者。官方号称有 1000+ 台设备供测试。能够进行测试应用的自动登录,并进行兼容测试、遍历测试、性能测试、功能测试、稳定性测试。
  • 阿里 MQC :全称为阿里移动质量中心,是阿里巴巴淘测试下的一个产品。支持 Robotium 框架编写的脚本对应用进行测试。它一个比较有特色的地方是支持 HTML5 的真机测试,开发者可提交一个 URL,以检测页面在不同设备的上的渲染和性能问题。

另外还有电信运营商提供的真机测试服务,如中国电信推出的 TA 云测试、中国移动推出的终端池,它们进入这一领域非常早,不过由于这些业务难以为运营商直接带来利润,现在已基本被放弃。

内测托管分发

真机自动化测试毕竟不是真人使用,难以深入到真实使用场景,后来的测试服务开始专注于将应用分发给少量用户或测试人员进行测试。

内测托管分发模式以 TestFlight 为代表,iOS 应用的测试多用这种模式。平台为处于内测阶段的应用提供托管服务,并产出用于分发的 URL,开发者需要自己寻找内测人员,并将下载链接发送给他们。这种模式下开发者能对测试结果得到较大程度的掌控,开发者可以和内测人员直接联系,能够对一些特殊案例进行有针对性的调查。不过,这种模式操作起来稍微繁琐,如果是 iOS 应用的话需要制作特殊的内测版本,获取内测设备的 UDID 并制作证书,并且有 100 人的人数限制(TestFlight 作为苹果官方服务限制为 1000 人)。

国内提供该模式的服务商有以下几家:

  • fir.im :面向 iOS、Android 平台的内测托管和分发服务。它们还提供崩溃信息收集 BugHD 、邀请码管理 inCode 等服务。另外它们提供了开放 API,这意味着开发者可以方便的将 fir.im 集成到自己的开发流程中。它们比较有特色的地方是很重视工具类的研发,提供了 CLI、Log Guru、网速测试等工具。前不久 fir.im 刚刚庆祝了 Melaka 版本上线一周年,并发布了 Rio 新版,在产品与架构方面进行了大量优化,开放更多的 API 接口,并提供 Android Studio 插件,方便 Android 开发者上传应用。创始人王猛为资深 iOS 开发者,根据自己在开发移动应用的过程中的感到的不便从而推出此项服务。
  • 蒲公英:面向 iOS、Android 平台的内测托管和分发服务。同样提供开放 API。它还提供移动端 SDK 用于应用内测数据收集分析、版本更新提示、数据分析统计、应用内提交用户反馈等。另外它还提供用于管理的桌面客户端。 蒲公英与 2014 年 7 月上线,目前总部在西安。创始人为石瑞,创立公司的想法和王猛类似,团队目前有 10 余人,来自腾讯、微软、ThoughtWorks 等知名互联网公司。

其它国内做这种模式的还有内测宝,从去年到现在一直处于邀请注册中,貌似已经不再活跃了。

众包测试/ 众测

内测托管分发的模式还需要自己寻找内测人员,对于一些开发者来说不是很方便,于是服务商自己提供测试人员的众包测试模式应运而生。

这种模式也是国外先兴起,如 uTest 号称有 17 万测试人员。这种模式的一般流程为,开发者向服务提供商上传应用,并且选择测试用户的规模、机型 / 系统、地理分布,服务提供商则向对应的测试人员发放任务,测试人员接到任务,测试完应用后可获得一定分成。这种模式已经基本满足真实测试的需求,不过也有一些缺点,开发者无法与测试人员接触,出现问题仍然需要寻找对应机型进一步收集信息,另外测试人员只是为完成任务,并非目标用户,可能无法对功能进行深入测试。另外这种模式一般是收费的。

国内提供这类模式的服务商除了上面提到的 Testin 和百度 MTC 之外,还有:

  • 我测测:我测测是班墨云推出的众包测试平台,它以众包的模式为 APP 开发者提供兼容性测试,功能测试,性能测试等服务。

移动应用性能监测

以上三种模式是大家都比较认可的测试服务模式,但实际上,新兴的应用性能管理(APM)也有机会在这个领域分一杯羹。

移动应用性能监测(移动 APM)是应用性能管理的一部分,它通过在 App 中嵌入 SDK 的方式来收集应用的运行信息,包括各种性能指标、崩溃信息等。显然移动 APM 可以应用在移动 App 的整个生命周期,而不仅仅是内测阶段。如果控制应用只分发给内测人员,那么它可以完成和一些内测托管服务类似的功能。我们可以看到上面有些服务商如蒲公英已经提供了 SDK,说明将移动 APM 用于测试是可行的。

国内提供移动 APM 的服务商如下:

  • 腾讯 Bugly :Bugly 原本是腾讯内部使用的一个产品,现在开放出来。它提供对 iOS 和 Android 应用崩溃信息的收集和分析,专注于应用的 Crash,可以说是移动 APM 里最偏测试的一个,但它不是只能用在测试阶段。
  • Mobile Insight :这是 OneAPM 下面的移动领域的产品,注重真实用户使用感受监控,提供 Crash 分析、InteractionTrace、网络问题分析、外部调用监控能力。
  • 听云 App :这是听云旗下的一款移动 APM 产品,其对网络性能的监控能力较为突出。
  • 睿动:这是博睿 Boree 旗下的移动 APM 产品,提供移动 WAP 监测、性能监测、适配监测和 SDK 监测。

随着测试在移动开发中的地位越来越重要,第三方的测试服务也将成为移动开发标配。不过,这不意味着开发者不需要测试,开发者仍然需要在本地进行一些测试,如 UI 自动化测试和 Mock 测试。7 月 11 日由 TesterHome 社区主办的 Mobile Testing Summit China 将在北京举行,这是移动测试领域知名度很高的国际会议,第一次来中国举办,届时知名开源自动化测试框架 Appium 主要开发者 JLipps 也会前来分享测试经验,欢迎感兴趣的开发者报名参会。

2015 年 6 月 24 日 04:385027
用户头像

发布了 164 篇内容, 共 93.5 次阅读, 收获喜欢 381 次。

关注

评论

发布
暂无评论
发现更多内容

我叫你不要重试,你非得重试。这下玩坏了吧?

比伯

Java 编程 架构 面试 程序人生

终于学完了阿里云大数据架构师推荐的Flink入门与实战PDF

小Q

大数据 flink 学习 编程 面试

基于LiteOS Studio零成本学习LiteOS物联网操作系统

华为云开发者社区

操作系统 物联网 华为云

网络入门模拟器:Cisco Packet Tracer 实验教程

聚焦LS-MIMO的四大层面,浅谈5G关键技术

华为云开发者社区

华为 5G 华为云

有了Git这个功能,再也不需要依赖IDE了!

编程 架构

手把手教你免费获取正版 Jetbrains 全家桶 License

郭旭东

ide JetBrains

SSO的通用标准OpenID Connect

程序那些事

OAuth 2.0 程序那些事 授权框架 安全框架 openid

XMEX交易所系统软件开发|XMEX交易所APP开发

系统开发

如何在软件发布计划中自动化语义化版本与变更日志

华为云开发者社区

自动化 工具 发布

Athena雅典娜交易所系统开发|Athena雅典娜交易所软件APP开发

系统开发

腾讯云TcaplusDB成为首批通过信通院-键值型内存数据库功能评测的产品,树立内存数据库行业标杆

TcaplusDB

数据库 nosql 腾讯云 腾讯 国产化

海淀区政府携手百度,打造数字政务时代新门户

DT极客

互联网新规鼓励保险与大数据、区块链等新技术融合!业内呼吁配套产品管理制度尽快出炉

CECBC区块链专委会

互联网金融

探营苏州数字人民币试点

CECBC区块链专委会

数字人民币

工作日志:一文总结HBase从搭建到实操,大家一起进步

小Q

大数据 学习 编程 面试 HBase

破51项国际榜单纪录!解读华为云擎天架构调度求解引擎

华为云开发者社区

华为 架构 华为云

即构SDK12月迭代:新增多项质量回调,互动白板、云录制SDK同步更新

ZEGO即构

阿里三面惨遭被虐,spring,jvm,mybatis,并发编程等一窍不通

Java架构之路

Java 程序员 架构 面试 编程语言

赶紧看!阿里架构师必备“绝杀版”Tomact架构笔记堪称绝技

比伯

Java tomcat 编程 架构 程序人生

第三代人工智能基础设施背后,是一次技术应用的常识普及运动

脑极体

你只修改了2行代码,为什么需要两天时间?

Java架构师迁哥

没弄懂这些Java基础,简历上千万别写熟悉:异常+反射+注解+泛型

小Q

Java 学习 编程 面试 基础

LeetCode题解:429. N叉树的层序遍历,BFS,JavaScript,详细注释

Lee Chen

算法 LeetCode 前端进阶训练营

BAT等大厂面试复习资料文档整理:ActiveMQ+redis+Spring+高并发多线程+JVM

Java架构之路

Java 程序员 架构 面试 编程语言

BATJ面试常被问到的100+题:Spring+微服务+SpringMVC+MyBatis

Java架构之路

Java 程序员 架构 面试 编程语言

C语言服务器编程必备常识

MySQL从删库到跑路

c

网易云音乐Java面试题:Mybatis事务+SpringBean+Java锁+Redis

Crud的程序员

Java redis spring 程序员 面试

一个改变世界的“箱子”

阿里巴巴云原生

Docker 阿里云 容器 云原生 k8s

盘点 2020 | 坚持写技术博客一年能有多少收获!

小傅哥

Java 小傅哥 技术人 盘点2020

SpringBoot魔法堂:应用热部署实践与原理浅析

设计原则 框架 spring Boot Starter

国内移动测试服务盘点-InfoQ