如何应对移动测试的五大挑战?

TestBird官方技术博客 发布于 2016/09/21 11:04
阅读 155
收藏 0


移动设备正在爆炸式的增长,手机已经成为最主要的联系方式,每天都会有数千款app产生。移动化已经不止局限在电话和平板电脑,汽车、可穿戴设备、和家用设备的app也逐渐涌现。

移动设备的高速增长已经打开了将其整合成计算环境的通道。如今的移动应用程序提供复杂的功能平台,有限资源计算。多样性提出了独特的挑战,需要独特的测试策略。

1.移动设备数量爆炸

自从Android1.0以来,已经有超过5亿台Android设备问世,从2007年以来iOS设备也超过了2亿台。这么多的移动设备包括手机、平板、可穿戴设备等,可想而知app要面临的运行环境有多少种。

即使被测应用在给定的设备上运行良好,QA团队也无法保证它能在相似的设备上运行。不同设备的屏幕分辨率、CPU、内存、系统优化程度和硬件都可能存在差异。

2.设备碎片化 & 系统平台多样化

移动测试矩阵最难的地方或许就是设备碎片化了。虽然iOS设备矩阵增长速度很快,Android操作系统的设备碎片化问题尤为突出。如下图:

由于移动应用可能会被部署到各种不同设备上,而这些设备可能会存在各种各样的兼容性问题,所以说移动应用测试面临巨大的挑战。

      1.操作系统,如:iOSAndroidWindows等。

      2.操作系统版本,如:iOS 4.XiOS 5.XAndroid 4.X5.X6.X等。

3.不同的移动App类型

移动App可能是native appweb app,也可能是hybrid app。由于每种app的实现都存在差异,测试每种app的方式都是不同的。正如我们所见,从安装到功能,每个app的行为都是不同的,也可以理解它们的测试方式和测试覆盖率会存在差异。

4.众多的测试接口

移动设备模拟器是一个重要的测试工具,利用模拟器,我们可以做功能测试和回归测试。模拟器类型多种多样,然而利用模拟器测试其实并不够真实。

模拟器的优点是将测试限定在了一定范围,不要指望用模拟器来代替真机。使用模拟器来做in-the-wild测试是一个不错的选择。

5.种类繁多的测试工具

先不说market自动化测试工具的数量有多少,光是其复杂性已经使人望而却步了。免费的、付费的;测试native app的、测试web app的;android平台的、iOS平台的。哪一款自动化测试工具才是最适合的呢?或者说,是否有一款工具使我们需要的?

解决

那么移动测试的理想解决方案是什么?应该采取什么样的方式?让我们继续往下看:


1.移动测试实验室


如果移动测试的需求非常巨大而且频繁,搭建一个移动测试实验室是一个不错的选择。当然也可以寻找使用一个外部的测试实验室,或者云端移动测试解决方案。

我们应该构建一种能实现最大覆盖率的测试环境。测试实验室应该构筑在真实手机之上,而不仅仅是在模拟器上进行测试。测试手机应该覆盖各种操作系统,终端类型,屏幕大小,内存大小以及各种可能影响app运行的因素。


2.正确的测试方案


应该使用怎样的移动测试方案呢:

一款只需要写少量脚本的IDE

所有Tester都能使用的关键词驱动的方式?

结合移动云来应对终端碎片化问题?

基于属性和图片识别对象的方式?

有许多解决方案可以用:开源的有RobotiumAppiumCalabash,商用的有eggplantperfecto等。

本文系TestBird测试工程师编译整理。想了解更多开发测试相关信息,请访问 TestBird

 

 

加载中
0
珊小猫
我在TestBird上做的兼容性测试,报告还是很详实
返回顶部
顶部