[发明专利]一种Android测试事件记录回放方法及装置有效
申请号: | 201110268861.4 | 申请日: | 2011-09-13 |
公开(公告)号: | CN102999419A | 公开(公告)日: | 2013-03-27 |
发明(设计)人: | 冉放;董海峰;林荣文 | 申请(专利权)人: | 百度在线网络技术(北京)有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京鸿德海业知识产权代理事务所(普通合伙) 11412 | 代理人: | 袁媛 |
地址: | 100085 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 android 测试 事件 记录 回放 方法 装置 | ||
技术领域
本申请涉及测试技术领域,特别是涉及一种Android测试事件记录回放方法及装置。
背景技术
安卓(Android)是一种以Linux为基础的开放源码操作系统,主要使用于智能手机、平板电脑等便携设备。该系统采用Java语言开发,包括操作系统、中间件、用户界面和应用软件等组成部分。随着Android系统的不断发展,各大硬件厂商也在不断推出各种基于Android系统的产品,目前,基于Android系统产品已经在市场上占有重要地位。
monkey随机测试是Android平台自动化测试的一种手段,其利用monkey程序模拟用户的按键输入、轨迹球输入、触摸屏输入等操作,并且通过伪随机的形式组织上述事件对运行在设备上的系统进行压力测试,从而检测系统可能存在的bug。
由于Android monkey测试的时间周期长,测试日志可读性差等事实,造成开发人员仅通过monkey测试的日志信息很难去定位一个bug的具体产生原因,从而无法有效地进行相关的修复操作。
发明内容
为解决上述技术问题,本申请实施例提供一种Android测试事件记录回放方法及装置,以实现对Android monkey测试事件的记录与回放,技术方案如下:
本申请实施例提供一种Android测试事件记录方法,包括:
实时生成随机测试事件流并执行;
在执行随机测试事件流的过程中,记录每个测试事件执行时的系统环境信息;
将随机测试事件流中的测试事件从随机模式转换为脚本模式;
将脚本模式的测试事件写入测试记录文件,并在所述测试记录文件中记录每个测试事件的执行时的系统环境信息和所述随机测试事件流的总执行时间。
在本申请方案的一种实施方式中,所述将随机测试事件流中的测试事件从随机模式转换为脚本模式,包括:
从随机模式测试事件指令中,提取事件状态参数;
将随机模式测试事件类型转换为对应的脚本模式测试事件类型,根据所提取的事件状态参数,生成脚本模式测试事件指令。
在本申请方案的一种实施方式中,所述将随机测试事件流中的测试事件从随机模式转换为脚本模式,包括:
在随机测试事件流执行完成后,统一将随机测试事件流中的测试事件从随机模式转换为脚本模式;
或
在执行随机测试事件流的过程中,将随机测试事件流中的测试事件从随机模式转换为脚本模式。
在本申请方案的一种实施方式中,所述在执行随机测试事件流的过程中,将随机测试事件流中的测试事件从随机模式转换为脚本模式,具体实现为:
在monkey源代码的测试事件抽象类中添加脚本模式转换方法,
根据测试事件的类型,在各个测试事件子类中,重写该脚本模式转换方法。
在本申请方案的一种实施方式中,在各个测试事件子类中重写脚本模式转换方法后,还包括:
在测试事件子类中为脚本模式转换方法添加标识,所述标识用于限定该方法仅在随机测试模式下触发。
本申请实施例还提供一种Android测试事件回放方法,包括:
获得测试记录文件,所述测试记录文件中,包括以脚本模式写入的随机测试事件流,还包括随机测试事件流中每个测试事件的执行时的系统环境信息和所述随机测试事件流的总执行时间;
接收测试用户输入的回放时间长度参数,根据回放时间长度与所述总执行时间的比例,在测试记录文件的测试事件流中定位回放起始事件,并将回放起始事件之前的测试事件滤除;
根据剩余的测试事件以及相应的系统环境信息,生成测试脚本;
执行所生成的测试脚本,实现测试事件回放。
在本申请方案的一种实施方式中,在生成测试脚本之前,还包括:
接收测试用户输入的应用包限定参数,将不符合所述限定参数的测试事件滤除。
本申请实施例还提供一种Android测试事件记录装置,包括:
随机测试事件流生成单元,用于实时生成随机测试事件流并执行;
系统环境信息记录单元,用于在执行随机测试事件流的过程中,记录每个测试事件执行时的系统环境信息;
测试事件模式转换单元,用于将随机测试事件流中的测试事件从随机模式转换为脚本模式;
测试记录生成单元,用于将脚本模式的测试事件写入测试记录文件,并在所述测试记录文件中记录每个测试事件的执行时的系统环境信息和所述随机测试事件流的总执行时间。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于百度在线网络技术(北京)有限公司,未经百度在线网络技术(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110268861.4/2.html,转载请声明来源钻瓜专利网。