这几天偶然接触到了一个叫做Testin的云测试平台,经过一番体验,感觉还是不错的,因为里面提供了大量的测试机型,可以针对Android手机的严重碎片化现象做出比较全面的测试,同时Testin的测试内容包括了UI适配、内存分析、BUG查找、异常数据统计与分析等诸多方面,从反馈的结果当中我们可以提炼出很多有价值的信息,从而方便我们进一步完善自己的应用。在此,我推荐大家去体验一下,虽说不一定能真正用到,但是可以接触和学习一些测试方面的知识。
下面,就让我简单说一下我的使用体会吧!
一、Testin提供的服务
Testin目前主要提供了六项测试服务,其中三项免费服务、三项收费服务,在此,我用表格的形式整理出了这六项服务的相关信息,如下:
编号 | 服务名称 | 功能描述 | 收费情况 | 一般方案(我们自己平时选择的方案) | 优点 |
1 | 内测 | 1.上传应用之后,会自动生成一个应用下载页,供用户下载; 2.集成SDK后,会附带摇一摇上传BUG的功能。 | 免费 | 1.将应用上传到公共的服务器,测试人员自行下载测试; 2.将打包好的应用上传至应用市场; 3.直接通过通讯工具传输安装文件; 4.客户端捕获异常日志并自动回传至服务器; 5.测试人员和开发人员之间口头反馈BUG,或者通过常用通讯工具反馈BUG。 | 1.提供统一的应用下载页面,可以更加快速地进行分发测试; 2.摇一摇上传BUG,可以方便测试人员及时反馈使用过程中遇到的BUG,提高反馈的效率和精确度。 |
2 | 标准兼容测试 | 最大支持100种通用机型免费测试,8小时内反馈测试结果(我用了自己的一个小Demo测试,实际反馈时间不到2小时)。 | 免费 | 1.模拟器测试。有的功能是模拟器无法测试的,且模拟器的测试效果不如真机测试。 2.真机测试。一般公司的测试真机机型较少,很难覆盖市面上的主流机型。 |
|
3 | 崩溃分析 | 自动收集异常崩溃日志并回传至Testin服务器进行数据统计分析。 | 免费 |
| 能够方便开发人员第一时间获取应用崩溃记录,并作出各种分析,从而更快速、更精准地修复BUG。 |
4 | 远程真机测试 | 通过浏览器或者开发工具远程连接真实设备,实时操作,快速定位问题 | 收费 | 1.模拟器测试。有的功能是模拟器无法测试的,且模拟器的测试效果不如真机测试。 2.真机测试。一般公司的测试真机机型较少,很难覆盖市面上的主流机型。 | 更专业的测试,提高测试质量。 |
5 | 深度兼容测试 | 由Testin专家团队定制测试用例,在大量机型上面执行脚本测试,人工参与审查核心功能和UI适配。 | 收费 | 开发人员自己测试,没有测试用例,没有大量机型,核心功能审查力度不够,UI适配程度不够。 | 更专业的测试,提高测试质量。 |
6 | BUG探索 | 由Testin专家团队测试应用中意想不到的BUG | 收费 | 开发人员自己测试,一些意向不到的BUG难以测试到。 | 测试更仔细,更全面。 |
二、实用功能
我认为Testin提供的服务中包含了以下实用的功能:
编号 | 功能 |
1 | 自动生成应用下载页 |
2 | 摇一摇上传BUG |
3 | 大量真机兼容性测试 |
4 | 自动测试,如monkey测试等 |
5 | 自动收集异常崩溃日志,并进行统计分析 |
6 | 收费功能测试更专业、更深入、更全面、更彻底 |
三、测试结果分析
我用自己的一个小Demo进行了测试,得到了以下测试结果,测试结果是以图形化报表的形式呈现的,从截图可以看出,测试数据统计分析包含了CPU分析、RAM分析、GPU分析、机型适配分析、问题分布分析等各个方面,总的来说测试还是很全面的。以下是测试结果的部分截图:
1.测试结果总览:
2.测试结果概况
a)兼容概况
b)性能概况
3.问题报告
a)问题类型分布
b)问题原因分析
c)终端属性分析
d)失败终端列表
4.性能报告
a)性能概况
b)性能分析
c)详细性能列表
5.终端列表
a)筛选条件
b)详细终端列表
四、使用感受
1.Android端支持SDK和NDK两种测试方案,能够对Java层和Native层代码进行深度测试;
2.最终来看,Testin集成的过程还是比较简单、方便的;
3.测试的内容很全面,测试结果分析很详细;
4.官方文档质量有待提高,感觉目前的官方文档介绍稍微有点乱。举个例子,官方并没有说明SDK和NDK是应该分开集成,还是一起集成,因此在最开始在集成的时候,我先集成了SDK,然后又集成了NDK的jar包和.so库文件,结果导致我的程序虽然能够正常运行,但是打包导出的时候一直提示引用的类重复,导不成功,最后我删除了SDK,只是集成了NDK才打包导出成功。出现这个问题的原因是如果已经集成了NDK,那么项目的libs下面的jar包其实是就已经包含了SDK,就不需要再次集成SDK了。而官方给出的集成步骤里面并未详细说明。
五、使用建议
1.如果我们还没有用过Testin,那么我们可以在我们的Demo或者项目里面先使用一段时间免费服务,体验一下免费功能的测试效果,如果觉得效果好,后期也确实需要使用收费服务,那么再考虑收费服务吧;
2.对于简单的APP或者用户量小的APP,没必要集成Testin;如果App较为复杂,需要面对大量用户,或者App的质量要求很高,那么建议使用Testin;
3.作为开发人员,测试环节往往被我们忽略了,或者是没忽略但是却不够重视。在Android的框架里面其实是集成了很多测试框架的,比如Adnroid SDK中的monkey.jar、JUnit、Memory Analyzer等,且结合Google推出的MVP、Clean、RxAndroid开发框架案例来看,单元测试的重要性不言而喻。因此,作为开发人员,我们应该有意识地去学会测试自己的软件。
以上便是我初次使用Testin的心得,其中难免有纰漏,还请大家多多指教!同时,我顺便说明一下,我写这篇文章不是为了给Testin做推广,只是想分享一些值得分享的东西!