手机软件自动化测试研究 告
http://blog.csdn.net/vincetest
一、引言
通过长期的手工测试得出如下可以以自动化测试来解决的问题:
1. 压力测试:一些连续不断的操作,比如反复切换歌曲播放及联 操作等;
2. 极限临界测试:一些极限条件的构造(创建多个列表)及输入字符个数等;
3. 兼容及中断:比如在播放或下载歌曲的时候来电话或者信息;
4. 基本功能回归测试:这样大大的节约了时间和人力成本。
面对诸多因素,我们不得不重视手机软件的自动化测试研究。其实如果掌握了一些自动化测试要领,从简单入手,逐步实现和突破,相信一定能够解决手机软件自动化测试的难题。
二、自动化测试原理
【自动化测试原理图】
1. TestAgent
TestAgent为嵌入在手机软件系统中的一个测试代理模块,解决PC端与手机端交互处理及互联消息通讯问题,这是区别于其他桌面软件自动化测试的关键点,也是嵌入式软件自动化测试的主要特征之一。通过串口或蓝牙设备与PC端中的TestTool建立通讯,其具备的主要功能如下:
1) 接收TestTool发送的消息并向手机端软件系统分发消息及任务
2) 监控手机端软件运行情况并根据相应的约束反馈给PC端的TestTool
3) 被测软件的功能(接口)封装及消息响应
TestTool自动化测试工具在PC端用于测试控制及测试操作实体,与TestAgent对应,该工具与常规的自动化测试软件一样,其具备的主要功能如下:
1) 向手机端TestAgent发送可识别的消息及任务
2) 接收来自手机端TestAgent的反馈结果
3) 对来自手机端TestAgent的反馈进行测试业务的处理
4) 将测试业务的处理结果呈现给测试人员
三、测试业务
1. 主动式测试
TestTool主动式测试是根据我们的测试需求比如(压力、性能、极限)在TestTool中编写测试脚本控制手机端软件进行测试,或者构造一些手工很难实现的测试场景,通过运行脚本向TestAgent发送消息及任务,TestAgent再向被测软件分发消息及任务,并将结果原路返回给TestTool,TestTool再通过数据处理分析得出测试结果。关键点:发送和分发消息、接收及处理反馈结果(结果判断)。
2. 回归式测试
基本功能的回归测试最为简单的方法就是录制和回放机制,通过运行录制的测试脚本达到按照先前的操作顺序、步骤、输入数据等再次测试被测软件以此达到回归测试的目的。
1) 录制:就是在执行手工测试时将手工测试的任何操作及返回结果(预期正确的结果)通过TestAgent在TestTool中保存下来,并进行分析处理形成一个可执行的脚本。录制的关键点:按键或触屏消息、坐标、响应结果(GUI界面)。
四、关键技术
1. 消息传送机制
利用手机Modem中提供的AT Command通过串口向手机端建立命令消息通讯,目前手机厂商提供了常用的AT Command,基本满足普通的自动化测试需求,另外厂商还提供了用户自定义AT Command的功能,当标准的AT Command不能满足自动化测试需求时,我们可以利用自定义AT Command来实现我们自动化测试中所需要的消息通讯。如下为MTK平台上实现自定义AT Command的关键样例代码:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!