新书
速递
文|马华平
免费送书
【APP测试前瞻】
当前移动互联网已颠末了草创时期,各家公司都在抢占市场和用户;那么,就看哪一家做的更风雅(交互做的更好,瓦解出现的更少)。
Android用户大概会常常碰到以下的题目:
1.稳固性题目——ANR/Crash等题目;ANR是指当Android体系监测到应用程序在5秒内没有相应输入的变乱或广播在10秒内没有实行完毕时抛出无相应提示。Crash是指当应用程序出现错误时导致程序非常克制或退出的环境。
2.性能题目——应用启动慢(初次/非初次启动应用,进入应用特别慢),CPU不敷/内存泄漏(应用利用过程中,越来越卡),应用耗电快(应用背景开着,手机很快没电)等题目。
注:卡顿与ARN的题目。卡顿简单的来说,就是手机没有及时相应、页面耽误,出现丢帧的征象,大概点击无相应。绝大多数的卡顿,稍等半晌体系就会规复正常,但假如高出5S,就大概会引发手机ANR告诫。
APP测试涉及各个方面,而稳固性和性能测试一样平常在功能测试完成后开展。怎样应用主动化测试场景,如图1所示:
图1主动化测试应用场景
主动化框架的选择
1.autoMonkey框架:Android平台一样平常都会思量利用体系自带的Monkey工具举行测试,此工具既易上手也实用,但运用起来有非常多的讲求和本领,简单的Monkey工具不肯定能完成任务,在测试中也必要耗费心思去对Monkey举行封装改造(还可以修改原生的Monkey),以满意测试需求。
2.MBT(Modelbasedtesting):基于模子的测试。建模过程,通常是指对被测体系的某些方面的形貌,以及对被测体系预期举动的抽象形貌。FSM(有限状态机)用途最广泛,一样平常用于黑盒测试的建模。MBT与Monkey测试理论的连合,即放一只“猴子”在FSM模子中随机环游,开展充实的稳固性测试。
本文是针对APP完成首轮功能测试后,利用autoMonkey框架举行稳固性和性能测试,从而进步产物的稳固性和留存率。知识布局分为四个部分,如图2所示:
图2autoMonkey框架原理与应用
一、Monkey底子知识与测试场景
在Android的官方主动化测试范畴有一只非常闻名的“猴子”叫Monkey,这只“猴子”一旦启动,就会让被测的Android应用程序像猴子一样到处乱跑。我们常用这只“猴子”对被测程序举行压力测试,查抄和评估被测程序的稳固性。
Android官方对这只“猴子”的形貌:Monkey是Google提供的一个下令行工具,可运行在模仿器或实际装备中。它可以在规定的次数范围内做任何随机的操纵,随机操纵包罗点击、滑动、Application切换、横竖屏、应用关闭等等,用户能做的操纵都可以模仿,从而对正在运行的应用程序举行压力测试,目标是看装备多长时间会出现非常,并观察体系的稳固性和容错性能。
Monkey测试出crash的bug品级永久为1,版本发布前,Monkey跑出的结果中crash要为0。
业内标准:终极发布版本前,Monkey跑完的总次数应为25W次,其结果里不答应有nullPointException出现。
Monkey程序是Android体系自带的,其启动脚本是位于Android体系的/system/bin目次的Monkey文件,其jar包是位于Android体系的/system/framework目次的Monkey.jar文件。用户重要是通过adb下令来启动Monkey。Monkey在运行时,会根据下令行参数的设置,天生伪随机的变乱流,并在Android装备上实行对应的测试变乱。
按照选定的差别级别的反馈信息,在Monkey中还可以看到其实行过程陈诉和天生的变乱。
Monkey的弊端
?无法正确地得知bug的复现步调
?发送的用户变乱流的有效性成题目,很多是无效操纵(待续)
欢迎投稿
735821166@qq.com
我要评论