基于安卓操作系统的业务流程录制-回放方法及系统的制作方法_2

文档序号:8258327阅读:来源:国知局
台上非截屏类⑶I录制-回放工具的使用难度。
[0068] 3.应用领域更加广泛。本发明具备完善的录制、回放机制,不仅能在软件自动化测 试领域得到更好地应用,而且与一般的截屏类屏幕录制-回放工具相较,本发明在录制过 程中产生的文本形式中间数据的数据量非常小,因此本发明产生的录制结果数据能够更方 便的在互联网上传输,从而使得本发明在分析终端用户行为方面也能得到广泛地应用。
【附图说明】
[0069]图1是本发明实施例的一种基于安卓操作系统的业务流程录制-回放系统的结构 示意图;
[0070]图2是本发明实施例的一种基于安卓操作系统的业务流程录制方法的流程图;
[0071] 图3是本发明实施例的一种基于安卓操作系统的业务流程回放方法的流程图。
【具体实施方式】
[0072]为了解决现有技术在回放时同一脚本在多次执行过程中CTI状态不一致的问 题,本发明提供了一种基于安卓操作系统的业务流程录制-回放方法及系统,以下结合附 图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用 以解释本发明,并不限定本发明。
[0073] 本发明实施例的一种基于安卓操作系统的业务流程录制-回放方法包括录制方 法和回放方法,所述录制方法包括以下步骤:
[0074] A、当外部应用启动后,且检测到用户在界面进行操作时,采集并存储动作数据。具 体包括:A1、外部应用启动后初始化动作采集代理,将当前应用显示页面信息告知动作采集 代理;A2、检测到用户在界面进行操作时,外部应用将用户动作数据传递给动作采集代理; 所述动作数据包括:页面启动动作数据、页面退出动作数据、单击动作数据、长按动作数据、 触摸动作数据和/或按键动作数据。A3、动作采集代理将动作数据格式化;A4、调用动作采 集接口保存动作数据。
[0075] B、当外部应用从外存或网络加载数据后,根据加载的数据采集并存储上下文数 据;具体包括:B1、外部应用将加载的数据传递给上下文采集代理;B2、上下文采集代理将 上下文数据格式化,所述上下文数据包括当前运行环境上下文对象、上下文标识和Json格 式的上下文数据;B3、调用上下文采集接口保存上下文数据。
[0076] 本发明实施例的基于安卓操作系统的业务流程回放方法包括以下步骤:
[0077] C、加载动作及上下文数据;具体包括:C1、外部应用初始化回放控制代理,将当前 应用显示页面的页面控制对象交给回放控制代理;C2、启动动作及上下文管理组件,加载并 将动作及上下文数据按照时间顺序显示。
[0078] D、选择回放起始位置,并从所述起始位置开始进行回放。具体包括:D1、选择一条 动作数据作为回放起始位置;D2、启动回放组件,回放组件从选择的起始动作数据开始预加 载动作数据;D3、按时间顺序将播放数据逐条传递给回放控制代理;D4、回放控制代理通过 解析动作数据,生成页面控制指令;D5、回放控制代理通过页面控制对象向页面发出控制指 令;D6、页面收到回放控制代理发出的控制指令,产生页面响应。
[0079] 在所述步骤D4中,所述生成页面控制指令包括生成单击控制指令、触摸控制指 令、按键控制指令。
[0080] 所述生成单击控制指令具体包括:D411、从动作数据中解析出单击动作发生的页 面控件ID(IDentity,身份标识号码)号;D412、根据单击动作数据中的页面控件ID号得到 页面控件对象;D413、向所述控件对象的中心点发出"按下"指令;D414、向所述控件对象的 中 ;1_1、点发出"弹起"指令。
[0081] 所述生成触摸控制指令具体包括:D421、从动作数据中解析出触摸动作发生处屏 幕横纵坐标;D422、判断当前触摸位置是否属于页面中任何控件所覆盖区域,如果是,则转 步骤D424 ;否则转步骤D423 ;D423、直接向页面相应位置发出触摸指令,并结束;D424、根据 触摸动作数据中的页面控件ID号得到页面控件对象;D425、向所述控件相应位置发出触摸 指令。
[0082] 所述生成按键控制指令具体包括:D431、从动作数据中解析出按键编码;D432、向 页面发出按键编码对应的键盘按下指令;D433、向页面发出按键编码对应的键盘弹起指 令。
[0083] 所述回放方法还包括:E、在回放模式下,外部应用从外存或网络取数据;具体包 括以下步骤:E1、当外部应用需要从外存或网络取数据时,截获外部应用数据请求事件,转 为向回放控制代理请求数据;E2、回放控制代理根据上下文唯一标识,通过回放控制接口向 回放组件发出数据查询请求;E3、回放组件根据上下文唯一标识在数据库中进行查询,将查 询到的上下文数据从数据库中取出,并传递给回放控制代理;E4、回放控制代理向外部应用 返回上下文数据;E5、外部应用根据回放控制代理返回的上下文数据产生页面响应。
[0084] 本发明实施例的一种基于安卓操作系统的业务流程录制_回放系统如图1所示, 所述系统包括数据层、服务层、业务层、接口层和外部代理。
[0085] 所述数据层提供动作信息和上下文信息的持久化存储;所述动作信息包括动作类 型(Activity切换、单击、长按、触摸、功能键等)、操作控件的ResourcelD、动作发生的屏 幕坐标、功能键编码;所述上下文信息包括状态标识和上下文数据,上下文数据采用标准 Json格式。数据库选择开源嵌入式数据库引擎SQLite。
[0086] 所述服务层为所述业务层和接口层提供支持,包括动作存取服务、上下文存取服 务、动作及上下文聚合服务和回放控制服务;所述动作存取服务对动作数据做数据库存取 操作;所述上下文存取服务对上下文数据做数据库存取操作;所述动作及上下文聚合服务 通过解析动作和上下文数据,去除、合并其中的冗余数据;所述回放控制服务按照一定规则 加载动作和上下文数据,在内存占用尽可能小的情况下保证回放的流畅性。
[0087] 所述业务层为外部应用提供直接可用的组件,包括动作及上下文管理组件和回放 组件;外部应用可直接启动所述动作及上下文管理组件实现对动作及上下文数据的查询和 删除操作;所述回放组件为外部应用提供一个能够播放动作及上下文数据的专用播放器, 其功能包括播放、暂停、重放和变速播放。
[0088] 所述接口层为外部应用提供动作采集、上下文采集、回放控制和动作及上下文管 理接口。
[0089] 所述外部代理为外部应用提供封装好的动作采集、上下文采集、回放控制代理,夕卜 部应用可直接通过所述外部代理实现动作及上下文数据的采集和回放。
[0090] 本发明实施例的一种基于安卓操作系统的业务流程录制方法的流程如图2所示, 外部应用启动后首先初始化动作采集代理,用户操作界面时,外部应用将用户动作相关数 据传递给动作采集代理,动作采集代理将动作数据格式化后,调用动作采集接口保存动作 数据。外部应用从外存或网络加载数据后,进行数据传递,上下文采集代理将上下文数据格 式化后,调用上下文采集接口保存上下文数据。具体包括:
[0091] 步骤1、初始化动作采集代理,外部应用将当前应用显示页面信息告知动作采集代 理。
[0092] 步骤2、用户操作界面,该过程为动作采集触发时机。
[0093] 步骤3、外部应用将如用户点击按钮ID号等动作数据告知动作采集代理。
[0094] 步骤4、数据格式化处理,方便数据库存储。
[0095] 步骤5、将动作数据存储至数据库。
[0096] 步骤6、外部应用从外存或网络加载数据,该过程为上下文采集触发时机。
[0097] 步骤7、将加载的数据传递给上下文采集代理。
[0098] 步骤8、数据格式化处理,方便数据库存储。
[0099] 步骤9、将上下文数据存储至数据库。
[0100] 动作采集接口提供以下方法:
[0101] (1)页面启动动作采集方法(参数1 :页面实例,参数2 :页面名称,参数3 :动作描 述);
[0102] (2)页面退出动作采集方法(参数1 :页面实例,参数2 :动作描述);
[0103] (3)单击动作采集方法(参数1 :页面实例,参数2 :单击控件ID号,参数3 :动作 描述);
[0104] (4)长按动作采集方法(参数1 :页面实例,参数2 :单击控件ID号,参数3 :动作 描述);
[0105] (5)触摸动作采集方法(参数1 :页面实例,参数2 :单击控件ID号,参数3 :触摸 动作类型,参数4 :触摸点屏幕横坐标,参数5 :触摸点屏幕纵坐标,参数6 :动作描述);
[0106] (6)按键动作采集方法(参数1 :页面实例,参数2 :按键编码,参数3 :动作描述)。
[0107] 动作采集接口提供启动Activity事件采集、Activity回退事件采集、单击事件 采集、长按事件采集、触摸事件采集和按键事件采集等方法。其中各方法的参数主要有 Activity对象、Activity名、事件描述、事件产生控件ID、触摸动作类型、触摸点坐标、按键 码等。
[0108] 上下文采集接口提
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1