之前有从事过,不,应该是一直从事移动应用的工作,开发、测试都是做了很久的,特别是自动化测试方面,今天就说说移动应用领域那些必须知道的些许不同。
移动测试领域,基本包含手游测试、app测试。通过怎么多年的经验,有些心得,首先两者在测试理论基本一致,但测试场景和测试需求完全不同。
从开发角度看,APP测试一般可以用Android SDK,而手游是基于游戏引擎来写的。这样导致手游的层级要比APP多一层,无法通过Android自带的服务来找出游戏中的按钮了,也就没法进行常规的自动化测试。
从功能角度看,游戏情节更加随机,如果测试脚本不能满足需求或者说不灵活的话,很容易导致很难多次成功运行,或者说根本实现不了需求。我们需要在测试脚本里适当的加入探索和自适应的功能。而app功能测试就没有这个问题,大部分App的使用方式都是静态且可以重复的。因此自动化测试可以完全按照测试脚本进行编写并执行。
从商业角度看,两者的商业模式完全不一样。App商业模式基本上以广告收入为主,基本不会向用户收取费用。而手游的业模式,就是直接从玩家上获利,这就导致了测试项目完全不一样,比如支付测试,对手游测试而言,就需要测试在各种严格的环境下,有效保证玩家的支付操作能实现,且失败几率降到极低来保证收益。
从测试角度看,基本App都做的简单易懂,这样用户的使用成本就越低,有更好的体验,而在测试上,跟简单的结构就意味测试要求更简单。但任何手游的测试都非常复杂,且难以测试。举个列子,当bug会导致游戏崩溃,这种bug虽说原因简单,但确实非常难测试到。网络,硬件,突发事件,人为操作等等都可能是原因。如果我们要遍历所有可能行,那耗费的人力成本将是非常大的,只有使用自动化进行用例遍历才能有效进行。
从服务器角度看,相对于app,手游基本都是有规律性且更集中的用户上线,这就对服务器抗压性有更高要求,所以基本上线都有多服务器进行压力测试,以调整上线后的服务器运营管理。
最后,还是说说两者的相似之处,就测试来说,两者在兼容性测试,中断测试,弱网测试基本都是一样的,这些也是用户体验的保证。
今天就写到这里,之后再详细说说两者在开发上的各种区别。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。