交互式软件中的操作记录与回放方法

文档序号:6372281阅读:274来源:国知局
专利名称:交互式软件中的操作记录与回放方法
技术领域
本发明涉及一种操作记录与回放方法,特别涉及交互式软件中操作记录与回放方法,属于软件技术领域。
背景技术
目前,各种交互式系统已广泛使用,比如Windows、Linux、Web、集成开发环境(Integrated Development Environment, IDE)等。用户只需要在图形用户界面(GraphicalUser Interface,简称⑶I)中进行鼠标点击、键盘敲击等动作即可以完成各种任务。然而,用户在完成相同或相似的任务时往往会采取许多重复和相似的步骤。例如,开发人员在一台新终端上配置项目环境时,需要不断重复GUI窗口选择、参数填写等操作。再比如,测试人员在测试图形界面时,往往需要反复点击同一个界面元素。一方面,重复的操作导致效率降低;另一方面,对于复杂的操作流程,用户可能会出现经验不足而不知所措的情况,需要 得到相应的指导才能继续操作流程。因此,本发明提出一种交互式软件中的操作记录与回放方法,能有效提高用户操作的便捷性、降低重复操作负担、减轻操作流程学习成本,在自动化测试、教育教学等软件复用领域具有重大意义。现有技术常使用记录鼠标坐标位置的方法,如mouse-click=” 1024, 768 “、键盘字母等。当面临屏幕分辨率等环境改变时,记录下的数据面临“失效”,不能在新环境中正确回放。参考(http: //mydown, yesky. com/soft/utilitie/mousekey/136/464636. shtml)和(http: //www. onlinedown. net/softdown/290290 2. html)是现有技术通常只记录鼠标位置工具,两个工具软件它们都是记录鼠标位置,然后根据该位置进行操作回放,然而却不能适应环境的变化。当它们记录下的序列拿到一个屏幕分辨率不同的机器上回放时,就会出错。因为鼠标位置这种底层信息不具有语义,不能够适应环境的变化。

发明内容
本发明提供一种交互式软件中用户操作的记录与回放方法。其核心是(1)在操作记录时,收集图形用户界面所产生的事件信息,抽取事件语义形成可复用的操作序列;
(2)在操作序列复用时,根据操作序列定位图形用户界面对象并重新触发相应的图形用户界面事件,通过对操作序列的回放驱动操作流程自动完成。为了解决技术问题,本发明包含三部分内容1.基于语义信息的操作记录方法;2.基于特征定位的操作回放方法;3.基于参数值修改的交互式回放方法。具体方法如下一种交互式软件中操作记录和回放方法,其步骤包括I)记录用户开始执行操作任务时在交互式软件上的可回放语义信息操作,设定用户操作事件、图形用户界面GUI事件与操作类型之间的对应规则;1-1)根据用户操作事件、GUI事件对应的操作类型规则,记录操作类型;1-2)记录操作实施的⑶I对象、操作内容和操作时间;2)记录用户完成任务的所有操作参数,按照时间排序得到可回放操作序列,所述操作参数包括操作类型,GUI对象,操作内容,操作时间;3)当用户完成任务后,根据特征相似技术确定GUI对象特征属性,并基于特征阀值确定在不同用户环境下,可回放操作序列中是否有可执行操作回放的对象;4)对可执行操作回放的对象,按照操作类型与事件之间的对应规则对操作进行回放。在操作回放的过程中,用户可通过中断回放,并增加新操作或者修改参数适应新的交互过程。根据操作相关度匹配方法进行参数替换与识别以修改参数,其步骤包括I)给定一个用户操作序列A1A2A3. . . An,对操作类型为可更改Modify的Ai的修改为Aj,其中是待匹配操作,Ai是执行的第i个操作;
2) 与Ai的相关程度由顺序相关度S,环境相关度O,操作和环境相关度m定义,根据操作Ai所记录的UI特征和环境,赋予Ai —相关度基准因子t及分别与S,O,m相关的调节因子 ct,3,Y,其中 a+3 + Y=l,0〈a〈l,0〈3〈l,0〈Y〈l;3)若s+o+m>t/2则Aj与Ai相关;标记出与Aj相关的Ak(i〈k ( n) ,Ak是用户的操作;将Ak作为下一轮的Ap并返回3-2)继续进行运算,直到j=n ;4)把所有标记过的Ak(i〈k<n)反馈给用户,经用户示意后,修改所有相关操作。所述顺序相关度s = l!i^I±^h”a所述环境相关度0=t*f3 ;操作和环境相
in-J +1).
关度m=t* y。所述操作类型包括选择;焦点集中;文本编辑;展开;勾选;关闭;栓扣;所述用户操作事件包括鼠标左键单击、键盘敲击;鼠标焦点集中、键盘焦点集中;键盘敲击,GUI事件包括按钮、菜单项、工具栏项、可以得到焦点的UI对象、文本编辑框、文本编辑域、树、表、列表、组合框、勾选控件、窗口、栓扣控件。特征相似技术步骤为I)统计交互式系统中各个⑶I类的属性;1-1)提取可以作为对象特征的属性,可以得到各个GUI类的属性汇总表;1-2)对于每个属性,设定一个权值,代表该属性有多少置信度去定位相应的GUI对象;1-3)对于每个GUI类,设定特征阈值,用以决定GUI对象是否所需要的对象;2)定义操作回放入口根⑶I对象;3)计算特征得分以定位对象,用记录下的信息和当前面对的候选⑶I对象相比较,选择那个属性匹配得分最高的GUI对象作为需要定位的GUI对象。所述不同用户环境包括,屏幕分辨率不同、屏幕分辨率不同、软件版本不同、同一个软件的用户界面按照用户自定义进行不同界面设置的情况。所述可执行操作回放的对象在GUI对象上执行的操作是I)创建一个事件对象,并且把定位的对象作为其事件源;2)根据用户操作事件与操作类型相互对应规则,通过操作类型和GUI事件对象,确定事件对象的事件类型属性;3)向交互式系统的事件管理机制发送此事件对象,从而通过事件的处理执行来驱动操作流程的实施。交互式软件包括Web、Windows、Linux和环境开发软件IDE。所述根⑶I对象包括windows桌面、IDE主界面、WEB主页面。本发明的有益效果本发明的方法提取出可回放的语义记录,抽取时间语义形成可复用的操作序列,避免记录重复和相似的操作,I)具有较高的空间利用率和时间效率。本发明提出的记录和回放方法不仅可边操作边记录,操作完成记录也完成,而且可控制回放的速度。2)具有较高的回放正确性。适用于不同的用户环境包括,如,屏幕分辨率不同、屏·幕分辨率不同、软件版本不同、同一个软件的用户界面按照用户自定义进行不同界面设置的情况。3)可以遍修改边回放。在操作回放的过程中,用户可通过中断回放,并增加新操作或者修改参数适应新的交互过程4)本发明适用于软件界面自动化测试、教育教学等操作复用场景,为可复用操作设定自动、快捷、可重复、有较高准确性的记录与回放方式。


图I是本发明交互式软件中的操作记录与回放方法中操作记录方法示意图;图2是本发明交互式软件中的操作记录与回放方法中操作序列示意图;图3a、3b、3c本发明交互式软件中的操作记录与回放方法在一软件上进行记录回放的实施例;图4是本发明交互式软件中的操作记录与回放方法中操作捕捉到操作回放基本示意图;图5是本发明交互式软件中的操作记录与回放方法步骤执行示意图。
具体实施例方式( I)基于语义信息的操作记录方法以复用为目的所实施的操作记录需满足以下要求。

发明内容
可回放的语义数据满足,第一,必须准确记录软件操作流程。准确的标准是根据记录下的操作信息能够区分不同的操作,这也是操作记录最基本的要求。第二,记录的操作信息必须能够完整、准确地表达操作流程。一个操作所具备的相关属性繁多,必须找出并记录所有决定操作流程进展的相关属性。第三,记录下的操作信息必须易于提取语义。语义是用户理解操作流程、可复用操作单元抽取、在新环境进行操作特化及实施的依据。第四,记录下的操作信息要有利于操作流程回放的实施,以在环境条件变化导致图形用户界面的布局发生变化时仍然能保障操作回放的正确性。在交互式软件中,用户操作的本质就是对交互式系统中的图形用户界面进行鼠标点击、键盘敲击等动作的过程。资料(Thomas Ostrand, Aaron Anodide, A VisualTest Development Environment for GUI Systems, Proceedings of the ACM SIGS0FTInternational Symposium on Software Testing and Analysis (ISSTA-98), volume23, 2of ACM Software Engineering Notes,1998. New York, ACM Press. pages82_92.)指出,交互式系统大都采用事件驱动机制与外界(用户、操作系统)进行交互,因此可以在GUI上捕获的信息进行操作的记录。然而,这种捕获技术仅仅帮助捕获到用户事件,不能设置规则提取可复操作信息。因而综合前面介绍的四个要求,为了以操作复用为目的实施操作记录,所需要记录的信息可参考([3]张弩云,基于动作的编程过程复用方法与技术研究,2010,北京大学博士研究生毕业论文)做详细的说明操作的类型、操作所作用的界面元素、操作的内容、操作的时间。设定用户操作事件、图形用户界面GUI事件与操作类型相互对应规则,具体分析如下,参见附图1、2是本发明交互式软件中的操作记录与回放方法中操作记录方法和操作序列示意图。(a)操作的类型。操作的类型是指鼠标和键盘对所有界面元素的所有操作的类型,例如文本输入、按钮点击、复选框勾选等。操作的类型信息由具体交互式软件的事件类型以及GUI对象而定。从事件到操作类型的映射需要依据一定的映射规则,该规则也与具体交互式软件有关。本方法实现的映射规则如表I所示,事件类型分类可参见参考文件[3]张弩云,基于动作的编程过程复用方法与技术研究,2010,北京大学博士研究生毕业论文)。 (b)操作所作用的界面元素特征。界面元素即操作上下文,是指操作所实施的GUI对象,例如按钮、文本输入框、下拉列表等。操作的GUI对象可以从收集到的交互事件中的GUI对象直接提取。特别的,需要保存事件GUI对象的父对象,以确定该GUI对象所属的作用范围。 ( c )操作内容。不是每个操作都对应有操作内容。操作类型是本文输入、复选框勾选、代码输入等存在多种状态的操作才具有操作内容,如填写的文本内容、复选框的选择和反选状态等。而如窗口关闭、普通按钮点击等操作,由于对应状态只有一个,因而没有操作内容。操作内容可以从事件所包含的事件内容中直接提取。表I
权利要求
1.一种交互式软件中操作记录和回放方法,其步骤包括 1)记录用户开始执行操作任务时在交互式软件上的可回放语义信息操作,设定用户操作事件、图形用户界面GUI事件与操作类型之间的对应规则; 1-1)根据用户操作事件、GUI事件对应的操作类型规则,记录操作类型; 1-2)记录操作实施的GUI对象、操作内容和操作时间; 2)记录用户完成任务的所有操作参数,按照时间排序得到可回放操作序列,所述操作参数包括操作类型,GUI对象,操作内容,操作时间; 3)当用户完成任务后,根据特征相似技术确定GUI对象特征属性,并基于特征阀值确定在不同用户环境下,可回放操作序列中是否有可执行操作回放的对象; 4)对可执行操作回放的对象,按照操作类型与事件之间的对应规则对操作进行回放。
2.如权利要求I所述的一种交互式软件中操作记录和回放方法,其特征在于,在操作回放的过程中,用户可通过中断回放,并增加新操作或者修改参数适应新的交互过程。
3.如权利要求2所述的一种交互式软件中操作记录和回放方法,其特征在于,根据操作相关度匹配方法进行参数替换与识别以修改参数,其步骤包括 3-1)给定一个用户操作序列A1A2A3. . . An,对操作类型为可更改Modifv的Ai的修改为Aj,其中是待匹配操作,Ai是执行的第i个操作; 3-2) Aj与Ai的相关程度由顺序相关度S,环境相关度O,操作和环境相关度m定义,根据操作Ai所记录的UI特征和环境,赋予Ai —相关度基准因子t及分别与S,O,m相关的调节因子 a , ¢, 其中 a+3 + Y=l,0〈a〈l,0〈3〈l,0〈Y〈l; 3-3)若s+o+m>t/2则Aj与Ai相关;标记出与Aj相关的Ak(i〈k ^ n) ,Ak是用户的操作;将Ak作为下一轮的Ap并返回3-2)继续进行运算,直到j=n ; 3-4)把所有标记过的Ak(i〈k ( n)反馈给用户,经用户示意后,修改所有相关操作。
4.如权利要求3所述的一种交互式软件中操作记录和回放方法,其特征在于,所述顺 序相关度5 = "所述环境相关度o=t*P ;操作和环境相关度m=t*Y。
.
5.如权利要求I所述的一种交互式软件中操作记录和回放方法,其特征在于,所述操作类型包括选择;焦点集中;文本编辑;展开;勾选;关闭;栓扣;所述用户操作事件包括鼠标左键单击、键盘敲击;鼠标焦点集中、键盘焦点集中;键盘敲击,GUI事件包括按钮、菜单项、工具栏项、可以得到焦点的n对象、文本编辑框、文本编辑域、树、表、列表、组合框、勾选控件、窗口、栓扣控件。
6.如权利要求I所述的一种交互式软件中操作记录和回放方法,其特征在于,特征相似技术步骤为 1)统计交互式系统中各个GUI类的属性; 1-1)提取可以作为对象特征的属性,可以得到各个GUI类的属性汇总表; 1-2)对于每个属性,设定一个权值,代表该属性有多少置信度去定位相应的GUI对象; 1-3)对于每个GUI类,设定特征阈值,用以决定GUI对象是否所需要的对象; 2)定义操作回放入口根⑶I对象; 3)计算特征得分以定位对象,用记录下的信息和当前面对的候选GUI对象相比较,选择那个属性匹配得分最高的GUI对象作为需要定位的GUI对象。
7.如权利要求I所述的一种交互式软件中操作记录和回放方法,其特征在于,所述不同用户环境包括,屏幕分辨率不同、屏幕分辨率不同、软件版本不同、同一个软件的用户界面按照用户自定义进行不同界面设置的情况。
8.如权利要求I所述的一种交互式软件中操作记录和回放方法,其特征在于,所述可执行操作回放的对象在GUI对象上执行的操作是 1)创建一个事件对象,并且把定位的对象作为其事件源; 2)根据用户操作事件与操作类型相互对应规则,通过操作类型和GUI事件对象,确定事件对象的事件类型属性; 3)向交互式系统的事件管理机制发送此事件对象,从而通过事件的处理执行来驱动操作流程的实施。
9.如权利要求I所述的一种交互式软件中操作记录和回放方法,其特征在于,交互式软件包括Web、Windows、Linux和环境开发软件IDE。
10.如权利要求6所述的一种交互式软件中操作记录和回放方法,其特征在于,所述根⑶I对象包括windows桌面、IDE主界面、WEB主页面。
全文摘要
本发明涉及交互式软件中操作记录和回放方法,1)记录用户开始执行操作任务时在交互式软件上的可回放语义信息操作,设定用户操作事件、图形用户界面GUI事件与操作类型之间的对应规则;2)记录用户完成任务的所有操作参数,按照时间排序得到可回放操作序列;3)当用户完成任务后,根据特征相似技术确定GUI对象特征属性,并基于特征阀值确定在不同用户环境下,可回放操作序列中是否有可执行操作回放的对象;4)对可执行操作回放的对象,按照操作类型与事件之间的对应规则对操作进行回放。本发明的方法提取出可回放的语义记录,抽取时间语义形成可复用的操作序列,具有较高的空间利用率和时间效率。
文档编号G06F9/44GK102799428SQ20121021892
公开日2012年11月28日 申请日期2012年6月28日 优先权日2012年6月28日
发明者黄罡, 张颖, 张弩云, 孙艳春 申请人:北京大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1