一种用于自动化脚本的自动修订的方法包括:获得至少一个分类后的记录的动作的序列和自动化脚本,自动化脚本包括分类后的记录的动作的序列的子序列,其中,根据每个动作的分类将该动作包括在自动化脚本中。执行自动化脚本的至少一部分。在自动化脚本的该部分的动作的执行失败时,对分类后的记录的动作的序列的动作重新分类,验证执行失败的动作在重新分类之后是否成功执行,以及修订自动化脚本。还公开了相关的计算机程序产品和数据处理系统。
【技术实现步骤摘要】
【国外来华专利技术】
技术介绍
自动化的应用测试可以应用于测试应用程序,包括在极端使用条件下的基于网络或基于因特网的应用。在此类应用中,测试应用可以模拟正在与被测试的应用交互的大量用户。例如,自动测试应用可以自动执行脚本,该脚本模拟与被测试的应用交互的用户。常规生成此类脚本的一种方式是记录与要被测试的应用交互的人类操作者的动作。然后,脚本生成应用可以从记录的动作中选择要包括在脚本中的那些动作。附图说明做出对附图的参考,其中:图1是根据本专利技术的实施例的用于针对自动化脚本的对记录的用户动作的自动分类调整的系统的示意图;图2示出了与用户接口的用户交互的示例,其中可以向所述用户交互应用根据本专利技术的实施例的针对自动化脚本的对记录的用户动作的自动分类调整;图3示出了向基于图2中示出的用户交互的自动化脚本应用根据本专利技术的实施例的对记录的用户动作的自动分类调整;以及图4是根据本专利技术的实施例的针对自动化脚本的对记录的用户动作的自动分类调整的方法的流程图。具体实施方式根据本专利技术的实施例的针对自动化脚本的对记录的用户动作的自动分类调整包括当自动化脚本执行失败时对记录的动作的自动重新分类。对记录的动作自动重新分类可以使修订后的脚本能够成功执行,而在修订过程中最小地或不直接涉及人类用户或操作者。自动化脚本包括记录的用户动作的序列的子序列(被理解为包括全部或一些)。可以根据一个或多个分类来对记录的用户动作中的每一个进行分类。根据分类将序列中的动作包括在子序列中。例如,自动化脚本的创建可以包括将与用户接口交互的用户的一个或多个记录的动作分类为相关或不相关。脚本生成应用然后可以通过仅包括分类为相关的那些记录的事件来生成自动测试脚本。类似地,分类可以包括对记录的动作的任何其他适当的分类,例如与记录的动作的解释相关的分类(例如,引起状态的绝对改变或状态的相对改变)。例如,用户可以操作诸如鼠标的指示设备以跨显示的用户接口移动光标。此类用户接口典型地包括若干显示的屏幕控件,用户可以例如通过当光标定位在所选屏幕控件上时按下鼠标按钮或键盘键来从该若干显示的屏幕控件中进行选择。当将光标导航到要选择的屏幕控件时,光标可能在一个或多个其他屏幕控件上通过。光标在其他屏幕控件之一上通过也可能通过影响用户接口而生成事件。例如,光标在屏幕控件上通过可能引起屏幕控件改变其外观,或者下拉菜单可能出现。此类用户动作也被脚本生成应用记录为事件。脚本生成应用生成包括从记录的事件中选择的事件的脚本。脚本可以首先选择根据预定准则被认为是相关的或重要的(例如,与预定重要性级别相关的)那些事件。例如,预定准则可以将脚本生成应用限制为首先选择仅那些包括屏幕控件的选择的事件。可以从生成的脚本中省略被认为不相关或不重要的动作。在重放脚本中,计算机模拟生成包括在脚本中的事件的记录的用户动作。在重放脚本中,重放的动作之一可能失败。例如,要选择的屏幕控件未呈现在用户接口中,或者屏幕控件可能处于与重放动作不相容的状态。当检测到此类失败时,根据本专利技术的实施例的脚本生成应用尝试对事件重新分类从而修改脚本,使得可以成功执行重放的动作。在将事件分类成相关或不相关的示例中,根据本专利技术的实施例,失败可能是由于将对于脚本的成功执行必要的事件误分类成不相关而导致的。当检测到失败时,脚本生成应用执行对之前分类为不相关或不重要的记录的事件重新分类的自动过程。作为重新分类的结果,脚本生成应用可以修订生成的脚本。例如,脚本生成应用可以首先寻找这样的记录的动作,该记录的动作位于失败的动作之前,并且已经被分类为不相关并因此从脚本中省略。脚本生成应用然后尝试执行该省略的动作。如果省略的动作成功执行,则再次尝试之前失败的动作的执行。如果之前省略的动作或之前失败的动作执行失败,则脚本生成应用搜索在首先省略的动作之前记录并且也被分类为不相关的另一记录的动作。重复对记录的事件重新分类和修订脚本的过程,直到之前失败的动作成功执行为止。此时,包括之前省略的动作的修订后的脚本替换原始生成的脚本。对脚本的修改可以呈现给用户以供批准。图1是根据本专利技术的实施例的用于针对自动化脚本的对记录的用户动作的自动分类调整的系统的示意图。系统10可以包括用于使用户能够与呈现的用户接口交互的输出设备12,诸如显示屏或其他合适的输出设备。输出设备12可以向用户呈现用户动作的结果。脚本生成应用可以经由输出设备12向用户呈现脚本、脚本选项或者运行脚本的结果。系统10可以包括输入设备14。例如,输入设备14可以包括一个或多个用户可操作的输入设备,诸如键盘、小键盘、指示设备、按钮或其他合适的输入设备。操作输入设备14的用户可以将指令输入到脚本生成应用,并且可以执行导致被脚本生成应用记录的动作或事件的操作。系统10包括处理器16。处理器16可以包括多个交互或相互通信的单独处理器。处理器16可以被编程为运行脚本生成应用。另外,处理器16可以被编程为运行一个或多个附加应用。例如,处理器16可以被编程为运行用于经由网络20与远程站点交互的应用。处理器16可以与数据存储设备18交互。存储设备18可以包括一个或多个固定或可移除的数据存储设备。数据存储设备18可以存储用于在处理器16上运行一个或多个应用的编程的指令。数据存储设备18可以由脚本生成应用用于存储记录的动作和生成的脚本。系统10可以经由网络20与一个或多个远程设备、站点、系统、服务器或处理器通信或交互。网络20可以包括任何类型的有线或无线通信网络,其使两个或更多系统能够通信或交互。例如,网络20可以表示因特网。可以参照包括下拉项目的菜单的示例来说明本专利技术的实施例的原理。图2示出了与用户接口的用户交互的示例,其中可以向所述用户交互应用根据本专利技术的实施例的针对自动化脚本的对记录的用户动作的自动分类调整。根据本专利技术的实施例,记录用户发起的事件。(例如,与此相对地,简单地记录每个光标或鼠标移动,而无论是否生成事件)。在图2中,用户控制的光标22与菜单交互。设计示出的菜单使得当光标悬停在菜单项目上(例如,比预定阈值时间更长地保持定位在该菜单项目上)时,选择并醒目显示该菜单项目。如果下拉菜单与所选菜单项目相关联,则下拉菜单出现在所选菜单项目下方。在示出的用户交互中,记录以下用户动作和事件:(A)导航到包括“Departments”菜单项目的web页面。(B)移动光标至“Departments”菜单项目并悬停在其上。下拉菜单出现在“Departments”菜单项目下方。(C)移动光标至下拉菜单的“Books”菜单项目并悬停在其上。第二下拉菜单出现在“Books”菜单项目下方。(D)移动光标至第一下拉菜单的“Movies”菜单项目并悬停在其上。第二下拉菜单消失。(E)移动光标至第一下拉菜单的“Books”菜单项目并悬停在其上。第二下拉菜单重新出现在“Books”菜单项目下方。(F)移动光标至第二下拉菜单的“eBooks”菜单项目并悬停在其上。(G)移动光标至第二下本文档来自技高网...
【技术保护点】
一种用于自动化脚本的自动修订的方法,所述方法包括:获得至少一个分类后的记录的动作的序列和自动化脚本,自动化脚本包括至少一个分类后的记录的动作的所述序列的子序列,其中,根据每个动作的分类将该动作包括在自动化脚本中;执行自动化脚本的至少一部分;在自动化脚本的所述至少一部分中的动作的执行失败时,对至少一个分类后的记录的动作的所述序列中的动作重新分类;验证执行失败的动作在重新分类之后成功执行;以及修订自动化脚本。
【技术特征摘要】
【国外来华专利技术】1. 一种用于自动化脚本的自动修订的方法,所述方法包括:
获得至少一个分类后的记录的动作的序列和自动化脚本,自动化脚本包括至少一个分类后的记录的动作的所述序列的子序列,其中,根据每个动作的分类将该动作包括在自动化脚本中;
执行自动化脚本的至少一部分;
在自动化脚本的所述至少一部分中的动作的执行失败时,对至少一个分类后的记录的动作的所述序列中的动作重新分类;
验证执行失败的动作在重新分类之后成功执行;以及
修订自动化脚本。
2. 如权利要求1所述的方法,其迭代地执行。
3. 如权利要求1所述的方法,其中,对所述至少一个分类后的记录的动作中的动作的分类包括:将该动作分类为对于取得结果而言相关或不相关,以及如果该动作被分类为相关则将该动作包括在自动化脚本中。
4. 如权利要求1所述的方法,其中,分类包括对所述至少一个分类后的记录的动作中的动作的解释。
5. 如权利要求1所述的方法,其中,对动作的重新分类包括迭代地执行:
对所述至少一个分类后的记录的动作中的当前所选动作重新分类;
尝试执行当前所选动作;以及
如果所尝试的执行失败,则将所述至少一个分类后的记录的动作中的另一动作选择为当前所选动作并重复以上步骤。
6. 如权利要求5所述的方法,其中,当前所选动作是以相反的时间顺序从所述至少一个分类后的记录的动作中选择的。
7. 如权利要求1所述的方法,包括将修订后的自动化脚本用于自动化的应用测试。
8. 一种包含指令的非暂态计算机可读介质,当执行所述指令时使得处理器执行以下步骤:
获得至少一个分类后的记录的动作的序列和自动化脚本,自动化脚本包括至少一个分类后的记录的动作的所述序列的子序列,其中,根据每个动作的分类将该动作包括在自动化脚本中;
执行自动化脚本的至少一部分;
当自动化脚本的所述至少一部分中的动作的执行失败时,对至少一个分类后的记录的动作的所述序列中的动作重新分类;
验证执行失败的动作在重新分类之后成功执行;以及...
【专利技术属性】
技术研发人员:Y霍罗维兹,D施瓦茨,ME克劳斯,S蒙扎,
申请(专利权)人:惠普发展公司,有限责任合伙企业,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。