生成测试用例的方法和终端设备与流程

文档序号:12665608阅读:262来源:国知局
生成测试用例的方法和终端设备与流程

本申请涉及移动互联网领域,尤其涉及一种生成测试用例的方法和终端设备。



背景技术:

自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。通常,在设计测试用例并通过评审之后,由测试人员根据测试用例中描述的规程一步一步的执行测试,得到实际结果与期望结果的比较。在此过程中,为了节省人力、时间或硬件资源,提高测试效率,便引入了自动化测试的概念

但现有的自动化测试方案对测试人员的要求较高,需要较高的代码编写能力,测试用例编写耗时长,并且维护困难。



技术实现要素:

有鉴于此,本申请实施例提供了一种生成测试用例的方法和终端设备,用以解决现有技术中自动化测试用例编写困难的技术问题。

根据本申请实施例的一个方面,提供了一种生成测试用例的方法,所述方法包括:显示控件列表和代表控件执行顺序的列表;检测到针对控件的指令时,所述控件依据指令而发生移动;当所述控件进入所述列表时,根据所述列表内控件的顺序确定对应控件的执行顺序并自动生成测试用例。

所述列表可以为时间轴列表、分类并行列表或二者组合,优选为时间轴列表。

所述指令可以为接触或语音指令,其中接触可以为瞬时接触或持续接触,当检测到针对控件的持续接触时,所述控件随着所述持续接触的移动而移动;瞬时接触可以为单击或双击,当检测到针对控件的瞬时接触时,所述控件跳转到代表控件执行顺序的列表内。

所述控件在列表中可以投射显示为图案、文字或二者组合。

优选其中一个自动生成测试用例为,当检测到针对控件的持续接触时,显示所述控件对应的图案,所述图案随着所述持续接触的移动而移动;当所述图案移动进入所述时间轴并且所述持续接触结束时,在所述持续接触结束的位置显示所述图案;根据所述时间轴内的图案顺序确定对应控件的执行顺序并自动生成测试用例。

根据本申请实施例的另一方面,提供了一种终端设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为:显示控件列表和代表控件执行顺序的列表;检测到针对控件的指令时,所述控件依据指令而移动;当所述控件进入所述列表时,根据所述列表内控件的顺序确定对应控件的执行顺序并自动生成测试用例。

优选处理器被配置为,显示控件列表和代表控件执行顺序的时间轴;检测到针对控件的持续接触时,显示所述控件对应的图案,所述图案随着所述持续接触的移动而移动;当所述图案移动进入所述时间轴并且所述持续接触结束时,在所述持续接触结束的位置显示所述图案;根据所述时间轴内的图案顺序确定对应控件的执行顺序并自动生成测试用例。

本申请实施例的有益效果包括:测试用例的编辑变得简单快捷、容易上手,通过控件的可视化以及列表的辅助,极大程度的降低了编写自动化测试用例的难度,不再需要较强的编程能力,缩短了用户编写自动化测试用例所需要的时间,提高测试工作效率。

附图说明

通过以下参照附图对本申请实施例的描述,本申请的上述以及其它目的、特征和优点将更为清楚,在附图中:

图1是本申请实施例的一种生成测试用例的方法的流程示意图;

图2是本申请实施例的测试用例的编辑界面示意图;

图3是本申请实施例的控件转化为脚本语句的示意图;

图4是本申请实施例的一种生成测试用例的方法的流程示意图;

图5是本申请实施例的测试用例的编辑界面示意图;

图6是本申请实施例的一种终端设备的框图。

具体实施方式

以下基于实施例对本申请进行描述,但是本申请并不仅仅限于这些实施例。在下文对本申请的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本申请。为了避免混淆本申请的实质,公知的方法、过程、流程、元件和电路并没有详细叙述。

此外,本领域普通技术人员应当理解,在此提供的附图都是为了说明的目的,并且附图不一定是按比例绘制的。

除非上下文明确要求,否则整个说明书和权利要求书中的“包括”、“包含”等类似词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是“包括但不限于”的含义。

在本申请的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本申请的描述中,除非另有说明,“多个”的含义是两个或两个以上。

本申请实施例在测试方案的编辑界面中,显示控件列表和代表控件执行顺序的列表,用户(测试人员或开发人员)可以对需要使用的控件进行拖拽操作,将控件移动到该列表内,按照控件在列表内的顺序自动生成对应的测试用例,使测试用例的编辑变得简单快捷、容易上手,极大程度的降低了编写自动化测试用例的难度,缩短了编写自动化测试用例所需要的时间,提高工作效率。

图1是本申请实施例提供的一种生成测试用例的方法,适用于终端设备,终端设备可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,车载控制台,平板设备,医疗设备,健身设备,个人数字助理等。如图1所示,该方法包括以下步骤。

S10,显示控件列表和代表控件执行顺序的列表。

控件代表着待测应用程序中能够进行的各种操作,每一个控件对应着一个或多个操作,例如,点击、输入、滚动、删除、翻页、滑动、解锁、等待、双击、长按等操作。控件列表是指将上述操作所对应的控件按照一定规则在界面中进行排列的形式,控件可以根据各种规则灵活排列。代表控件执行顺序的列表是一个反应时间先后的列表,如果控件被移动到该列表内,则根据其在列表内的位置确定它的执行时间,当列表内包括多个控件时,各个控件之间便形成执行的先后顺序。该列表可以为时间轴列表、分类并行列表或二者的组合,优选为时间轴列表。

S11,检测到针对控件的指令时,控件依据指令而发生移动。

该指令可以为接触式指令或语音式指令,其中接触为瞬时接触或持续接触,当检测到针对控件的持续接触时,所述控件随着所述持续接触的移动而移动;瞬时接触为单击或双击,当检测到针对控件的瞬时接触时,所述控件跳转到代表控件执行顺序的列表内。例如,通过鼠标点击显示的控件,通过触控方式(手指、触控笔)点击显示的控件。

控件在列表中可以投射显示为图案、文字或二者的组合。当针对控件持续接触时,显示该控件对应的图案、文字或二者的组合,这种持续接触在界面内移动时,该控件对象的图案或文字也随之移动,从而形成拖动该控件在界面内移动的视觉效果。

S12,当控件进入列表时,根据列表内控件的顺序确定对应控件的执行顺序并自动生成测试用例。

控件进入列表是指,控件与列表在界面中发生接触,或者,控件在界面中已进入能够通过该列表而确定执行时间的范围,而非必须与该列表发生接触。针对控件的指令结束后,控件也停止移动,从而完成将控件拖动进入列表的操作。

移动到列表内的控件之间的位置关系决定了控件之间的执行顺序。如图2所示,在控件列表中显示各个控件的名称,时间轴列表内的两个控件:沟通和搜索在时间轴列表内按照时间顺序(即执行的先后顺序)排列。控件名称“沟通”对应着点击操作,“搜索”对应着输入操作,在时间轴列表内显示控件名称的同时,还显示各个控件对应的操作。依据这两个控件在时间轴列表内的顺序便可以确定先执行“沟通”控件的点击操作,再执行“搜索”控件对应的输入操作。按照时间轴列表内各个控件的执行顺序自动生成测试用例,生成过程在界面的后台自动完成且用户无感知。这样,测试用例的编辑变得非常简单快捷、容易上手,通过控件的可视化以及列表的辅助,极大程度的降低了编写自动化测试用例的难度,不再需要较强的编程能力,缩短了用户编写自动化测试用例所需要的时间,提高测试工作效率。

在自动生成测试用例时,将列表内的各个控件按照执行顺序和预设规则转换为设备可执行的脚本语句。例如图3所示,时间轴列表内包含“沟通”和“搜索”两个控件。其中,“沟通”控件包含一个“点击”操作,生成测试用例时转换为脚本语句“element(‘沟通’).click()”;“搜索”控件包含一个“点击”操作和一个“输入”操作,输入的文字内容为“聂磊”,转换成的脚本语句为“element(‘搜索’).click();element(‘搜索’).send_keys(‘聂磊’)。另外,这两个控件之间在时间轴列表内的时间间隔为2秒,在这个两个控件之间生成相应的脚本语句“sleep(2)”,作用是延时(或挂起)2秒。转换后的所有脚本语句共同构成一个完整的测试用例。

利用列表对测试用例完成编辑后,用户在进行测试时便可以运行列表内的测试用例。运行时,在终端设备的屏幕中显示执行对应控件时的操作过程,使用户观看到测试用例的执行过程,以验证是否能够达到预想的交互效果。如果达到预想效果,则可以保存已编辑的测试用例,以便以后反复使用;如果没有达到预想的效果,则可以在编辑界面中对列表内的控件进行调整,包括向列表内加入新的控件,从列表内移除现有的控件,改变控件在列表内的顺序或者距离等。调整完成后,运行调整后的测试用例,直到达到预想的测试效果。

如果测试用例的控件包括输入操作,在运行测试用例并执行到该控件时,可以暂停运行并弹出完成该输入操作的输入框,由测试人员输入相应的内容,输入完毕后,继续运行该测试用例。而为了进一步提高测试效率,在一个实施例中,在将控件添加到列表时,如果添加到列表的控件包含输入操作,则在控件进入列表内时,显示该控件的图案和其中输入操作的文字输入框,此时,测试人员就可以编辑需要输入的文字内容。这样,在执行测试用例时就不需要暂停并输入文字,可直接将测试用例执行完毕。

在一个实施例中,在进行测试用例编辑的界面中,显示待测应用程序界面和代表控件执行顺序的列表,而控件则按照其在待测应用程序界面中的实际位置进行分布。那么,在编辑测试用例时,从待测应用程序界面中各个控件的实际位置进行点击选取或者拖动进入列表,点击选取或者拖动的过程与前文所述相同,在此不再重复说明。图4是本申请实施例提供的一种生成测试用例的方法的流程示意图,包括以下步骤。

S20,显示应用程序界面和代表控件执行顺序的时间轴列表,控件按照在应用程序界面中的实际位置进行分布。

S21,检测到针对应用程序界面中的控件的持续接触时,显示控件对应的图案,图案随着持续接触的移动而移动。

S22,当图案移动进入时间轴列表并且持续接触结束时,在持续接触结束的位置显示图案,当对应的控件包含输入操作时,还同时显示一个文本输入框。

S23,根据时间轴列表内的图案顺序确定对应控件的执行顺序并自动生成用于该应用程序界面的测试用例。

如图5所示的测试用例的编辑界面中包括一个应用程序界面和一个时间轴列表,该应用程序界面包括“通讯录、消息、必达、搜索、沟通、客户、日程、我的”等控件并按照实际位置分布。在选取“沟通”控件时,从其所在位置点击或触控该控件并移动进入时间轴列表,再以同样的方式选取“搜索”控件,“搜索”控件移动进入时间轴列表时显示该控件的图案和文本输入框。这样,使得针对该待测应用程序各项功能的测试变得更加直观,既有助于快速编辑测试用例又能够同时感受人机交互过程,有助于测试人员发现交互过程中的“痛点”。

在一个实施例中,在进行测试用例编辑的界面中,还可以打开已保存的测试用例。打开一个测试用例后,对该测试用例内的脚本语句进行语义分析,确定该测试用例所包含的控件、每个控件所包含的操作、输入的文字内容以及各个控件之间的执行顺序和延时。根据分析结果,将该测试用例的内容在逻辑层生成相对应的控件图案,将控件图案按照执行顺序显示在代表控件执行顺序的列表内,使测试人员能够直观的了解到测试用例所包含的控件、操作和内容。如果需要对该测试用例进行修改,还可以在代表控件执行顺序的列表内添加或删除控件图案、修改输入的文字内容、调整图案之间的顺序和距离。

此外,本申请实施例中,终端设备可以通过硬件处理器(hardware processor)来实现上述各个功能步骤。如图6所示,终端设备包括:处理器30,用于存储处理器30可执行指令的存储器31;其中,处理器30被配置为:显示控件列表和代表控件执行顺序的列表;检测到针对控件的指令时,控件依据指令而发生移动;当控件进入列表时,根据列表内控件的顺序确定对应控件的执行顺序并自动生成测试用例。

在一个实施例中,处理器30进一步被配置为:

运行测试用例并显示执行对应控件时的操作过程。

在一个实施例中,处理器30进一步被配置为:

打开已有的测试用例,根据测试用例的脚本语言确定测试用例内存在的控件和控件执行顺序;按照控件执行顺序在列表内显示控件。

在一个实施例中,处理器30进一步被配置为:调整列表内的控件或者控件之间的顺序。

在一个实施例中,处理器30进一步被配置为:当控件包括文字输入操作时,显示输入框以便填充文字内容。

在一个实施例中,显示控件列表和代表控件执行顺序的列表包括:

显示应用程序界面和代表控件执行顺序的列表,控件按照在应用程序界面中的实际位置进行分布。

在一个实施例中,根据列表内控件的顺序确定对应控件的执行顺序并自动生成测试用例包括:根据列表内控件的顺序确定对应控件的执行顺序;将控件按照预设规则转换为设备可执行的脚本语句,由转换后的脚本语句构成所述测试用例。

在一个实施例中,所述代表控件执行顺序的列表可以为时间轴列表、分类并行列表或二者组合。

在一个实施例中,所述指令可以为接触式指令或语音式指令,其中接触为瞬时接触或持续接触,当检测到针对控件的持续接触时,所述控件随着所述持续接触的移动而移动;瞬时接触为单击或双击,当检测到针对控件的瞬时接触时,所述控件跳转到代表控件执行顺序的列表内。

在一个实施例中,所述控件在列表中投射显示为图案、文字或二者组合。

本领域的技术人员应明白,本申请的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述仅为本申请的优选实施例,并不用于限制本申请,对于本领域技术人员而言,本申请可以有各种改动和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1