用户界面测试方法、装置、计算机设备和存储介质与流程

文档序号:18642292发布日期:2019-09-11 23:36阅读:145来源:国知局
用户界面测试方法、装置、计算机设备和存储介质与流程

本申请涉及计算机技术领域,特别是涉及一种用户界面测试方法、装置、计算机设备和存储介质。



背景技术:

随着计算机技术的发展,移动互联网技术到了广泛的应用,出现了各种各样的应用程序,便利了人们的工作和生活。各应用程序的人机交互通过用户界面(userinterface,ui)实现,具体由用户通过操作用户界面的控件,如滑动、点击等,实现对应用程序的操作控制。

目前,对用户界面进行测试处理的方案中,无论用户界面内容包括哪种类型的元素,均是在用户界面进行简单随机地点击和滑动的方式进行测试,对用户界面中各控件进行测试的针对性差,存在用户界面的测试效率低的问题。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种能够提高测试效率的用户界面测试方法、装置、计算机设备和存储介质。

一种用户界面测试方法,所述方法包括:

获取待测试用户界面,并确定待测试用户界面中的待测试控件;

获取待测试控件对应的控件结构数据;

将控件结构数据输入预设的界面测试模型中,得到界面测试策略;其中,界面测试策略用于描述待测试控件对应的测试方案;

按照界面测试策略,对待测试控件进行测试,得到界面测试结果。

在其中一个实施例中,确定待测试用户界面中的待测试控件包括:

接收界面测试命令,并根据界面测试命令得到测试控件表;

按照测试控件表,确定待测试用户界面中的待测试控件。

在其中一个实施例中,控件结构数据包括控件树数据;将控件结构数据输入预设的界面测试模型中,得到界面测试策略包括:

查询预设的界面测试模型;

根据控件树数据得到模型输入向量;

将模型输入向量输入界面测试模型中,得到界面测试策略。

在其中一个实施例中,在查询预设的界面测试模型之前,还包括:

获取历史界面测试数据,并从历史界面测试数据中提取历史控件结构数据和历史测试操作数据;

根据历史控件结构数据和历史测试操作数据得到模型训练数据;

训练模型训练数据,得到界面测试模型。

在其中一个实施例中,根据历史控件结构数据和历史测试操作数据得到模型训练数据包括:

从历史控件结构数据中提取历史测试界面的历史控件树数据;

根据历史测试操作数据,确定历史测试界面中各历史测试控件的历史测试顺序及历史操作行为数据;

将历史控件树数据、历史测试顺序和历史操作行为数据进行组合,得到模型训练数据。

在其中一个实施例中,其特征在于,界面测试策略包括待测试控件对应的控件测试顺序以及测试操作行为表;按照界面测试策略,对待测试控件进行测试,得到界面测试结果包括:

根据测试操作行为表,确定待测试控件对应的测试操作动作;

按照控件测试顺序,依次根据测试操作动作对待测试控件进行测试,得到控件测试结果;

根据控件测试结果得到界面测试结果。

在其中一个实施例中,在得到控件测试结果之后,还包括:

当控件测试结果为测试通过时,确定触发待测试控件的触发操作动作;

当触发操作动作不处于测试操作行为表的首位时,对测试操作行为表进行更新,得到操作行为更新表;

根据控件结构数据、控件测试顺序和操作行为更新表得到模型更新数据,并根据模型更新数据对界面测试模型进行更新。

一种用户界面测试装置,其特征在于,所述装置包括:

测试控件确定模块,用于获取待测试用户界面,并确定待测试用户界面中的待测试控件;

控件结构获取模块,用于获取待测试控件对应的控件结构数据;

测试模型处理模块,用于将控件结构数据输入预设的界面测试模型中,得到界面测试策略;其中,界面测试策略用于描述待测试控件对应的测试方案;

界面测试处理模块,用于按照界面测试策略,对待测试控件进行测试,得到界面测试结果。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

获取待测试用户界面,并确定待测试用户界面中的待测试控件;

获取待测试控件对应的控件结构数据;

将控件结构数据输入预设的界面测试模型中,得到界面测试策略;其中,界面测试策略用于描述待测试控件对应的测试方案;

按照界面测试策略,对待测试控件进行测试,得到界面测试结果。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

获取待测试用户界面,并确定待测试用户界面中的待测试控件;

获取待测试控件对应的控件结构数据;

将控件结构数据输入预设的界面测试模型中,得到界面测试策略;其中,界面测试策略用于描述待测试控件对应的测试方案;

按照界面测试策略,对待测试控件进行测试,得到界面测试结果。

上述用户界面测试方法、装置、计算机设备和存储介质,通过将待测试用户界面中待测试控件对应的控件结构数据,输入预设的界面测试模型中,进而确定用于描述待测试控件对应的测试方案的界面测试策略,并按照该界面测试策略对待测试控件进行测试,使得用户界面测试操作更具针对性,从而提高了用户界面的测试效率。

附图说明

图1为一个实施例中用户界面测试方法的应用场景图;

图2为一个实施例中用户界面测试方法的流程示意图;

图3为一个实施例中获得模型训练数据的流程示意图;

图4为另一个实施例中用户界面测试方法的流程示意图;

图5为一个实施例中用户界面测试装置的结构框图;

图6为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请提供的用户界面测试方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104通过网络进行通信。终端102向服务器104发送待测试用户界面,如可以为用户界面文件数据,服务器104接收到待测试用户界面后,通过将待测试用户界面中待测试控件对应的控件结构数据输入预设的界面测试模型中,得到界面测试策略,并按照该界面测试策略对待测试控件进行测试,得到界面测试结果。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。

在一个实施例中,如图2所示,提供了一种用户界面测试方法,以该方法应用于图1中的服务器104为例进行说明,包括以下步骤:

步骤s201:获取待测试用户界面,并确定待测试用户界面中的待测试控件。

其中,待测试用户界面为需要进行测试的用户界面,待测试用户界面包括各种界面元素,如各种控件,用户在用户界面通过操作控件,如滑动、点击或长按等,可以实现对应用程序的各种操作。待测试用户界面可由终端102确定并发送至服务器104,如由终端102向服务器104发送待测试用户界面对应的待测试用户界面文件,以由服务器104对其进行测试。待测试控件为待测试用户界面中需要进行测试的控件。基于不同功能应用的待测试用户界面对应设有不同的控件,如可以包括文本控件、按钮控件、状态开关控件、单选与复选按钮、图片控件、时钟控件、日期与时间选择控件等。

获得待测试用户界面后,从中确定需要进行测试的待测试控件,具体可以根据进一步接收的界面测试命令确定待测试用户界面中的待测试控件。

步骤s203:获取待测试控件对应的控件结构数据。

确定待测试用户界面中的待测试控件后,进一步获取该待测试控件对应的控件结构数据。控件结构数据反映了待测试用户界面中各控件元素的结构信息和属性信息,其中,结构信息反映了待测试用户界面中各控件元素之间的结构特征,如控件元素间的层级关系;属性信息反映了待测试用户界面中各控件元素本身的控件特征,如控件元素的名称、类型等。在具体实现时,控件结构数据可以包括控件树数据,控件树数据描述了待测试用户界面中树形架构的控件元素特征。

步骤s205:将控件结构数据输入预设的界面测试模型中,得到界面测试策略;其中,界面测试策略用于描述待测试控件对应的测试方案。

得到待测试控件对应的控件结构数据后,将其作为输入参数,输入预设的界面测试模型中,得到界面测试策略,界面测试策略用于描述待测试控件对应的测试方案。其中,界面测试模型基于各种应用程序在开发过程中,对各ui测试时的历史界面测试数据训练得到;界面测试策略描述了针对该待测试用户界面的待测试控件进行测试的测试方案。界面测试策略具体可以但不限于包括待测试控件对应的控件测试顺序以及测试操作行为表,其中,控件测试顺序为待测试用户界面中各待测试控件的测试先后顺序,测试操作行为表为测试时触发各待测试控件执行相应指令的测试操作行为集合,测试操作行为表中各测试操作行为可以按照一定次序排列,在测试时按照该次序通过对应的测试操作行为进行测试。

步骤s207:按照界面测试策略,对待测试控件进行测试,得到界面测试结果。

得到界面测试模型输出的界面测试策略后,按照该界面测试策略对待测试控件进行测试,得到界面测试结果。在具体应用中,若界面测试策略包括待测试控件对应的控件测试顺序以及测试操作行为表,则在对待测试控件进行测试时,可以根据控件测试顺序按照测试操作行为表中的各测试操作行为依次对待测试控件进行测试,得到界面测试结果。

上述用户界面测试方法中,通过将待测试用户界面中待测试控件对应的控件结构数据输入预设的界面测试模型中,得到用于描述待测试控件对应的测试方案的界面测试策略,并按照该界面测试策略对待测试控件进行测试,得到界面测试结果。在用户界面测试过程中,通过预设的界面测试模型输出描述了与待测试用户界面中待测试控件对应测试方案的界面测试策略,并根据该界面测试策略对待测试控件进行测试,提高了控件测试的针对性,从而提高了用户界面的测试效率。

在一个实施例中,确定待测试用户界面中的待测试控件包括:接收界面测试命令,并根据界面测试命令得到测试控件表;按照测试控件表,确定待测试用户界面中的待测试控件。

在接收到待测试用户界面后,待测试用户界面中包括各种控件元素,其中包括需要进行测试的控件元素,即待测试控件,也可能还包括不需要进行测试的控件元素,此时,可以根据进一步接收的界面测试命令确定待测试用户界面中的待测试控件。

具体地,获得待测试用户界面后,接收界面测试命令,界面测试命令可以由测试人员通过终端102发送,其包括需要待测试用户界面中需要信息测试的各种控件元素。得到界面测试命令后,根据该界面测试命令得到测试控件表,测试控件表记录有待测试用户界面中需要进行测试的待测试控件。在具体实现时,可以直接从界面测试命令中提取得到测试控件表,并按照该测试控件表,确定待测试用户界面中的待测试控件。例如,可以根据测试控件表中需要进行测试的各控件元素对应的名称、编号等控件标识信息,从待测试用户界面中确定待测试控件。

在一个实施例中,控件结构数据包括控件树数据;将控件结构数据输入预设的界面测试模型中,得到界面测试策略包括:查询预设的界面测试模型;根据控件树数据得到模型输入向量;将模型输入向量输入界面测试模型中,得到界面测试策略。

得到控件结构数据后,将其输入预设的,基于各种应用程序在开发过程中,对各ui测试时的历史界面测试数据训练得到的界面测试模型中,得到界面测试策略。其中,控件结构数据反映了待测试用户界面中各控件元素的结构信息和属性信息,其中,结构信息反映了待测试用户界面中各控件元素之间的结构特征,如控件元素间的层级关系;属性信息反映了待测试用户界面中各控件元素本身的控件特征,如控件元素的名称、类型等。本实施例中,控件结构数据包括控件树数据,控件树数据描述了待测试用户界面中树形架构的控件元素特征。

具体地,将控件结构数据输入预设的界面测试模型中,得到界面测试策略时,查询预先训练得到的界面测试模型,并按照界面测试模型根据控件树数据得到模型输入向量,再将模型输入向量输入界面测试模型中,得到界面测试策略。其中,界面测试策略描述了针对该待测试用户界面的待测试控件进行测试的测试方案。通过界面测试模型输出的界面测试策略实现对待测试用户界面中的待测试控件进行针对性测试,提高界面测试效率。

在一个实施例中,在查询预设的界面测试模型之前,还包括:获取历史界面测试数据,并从历史界面测试数据中提取历史控件结构数据和历史测试操作数据;根据历史控件结构数据和历史测试操作数据得到模型训练数据;训练模型训练数据,得到界面测试模型。

界面测试模型基于各种应用程序在开发过程中,对各ui测试时的历史界面测试数据训练得到。在训练界面测试模型时,可以获取历史界面测试数据,并从历史界面测试数据中提取历史控件结构数据和历史测试操作数据。其中,历史控件结构数据为历史界面测试数据中历史测试界面的控件结构数据,历史测试操作数据为对历史测试界面进行测试时对应采取的操作行为数据,如左滑、右滑、长按、点击或双击等操作行为。根据得到的历史控件结构数据和历史测试操作数据得到模型训练数据,具体可以将历史控件结构数据和历史测试操作数据之间建立映射关系,并组合得到模型训练数据。通过训练得到的模型训练数据,得到界面测试模型。界面测试模型可以根据输入的控件结构数据输出对应的界面测试策略,根据该界面测试策略对待测试用户界面中的待测试控件进行测试,可以确保测试的针对性,提高界面测试效率。

具体地,在训练模型训练数据时,可以将模型训练数据划分成训练集和测试集,通过训练集训练得到待测试模型,并通过测试集对待测试模型进行测试,在待测试模型通过模型测试后,得到训练完成的界面测试模型。

在一个实施例中,如图3所示,获得模型训练数据的步骤,即根据历史控件结构数据和历史测试操作数据得到模型训练数据包括:

步骤s301:从历史控件结构数据中提取历史测试界面的历史控件树数据。

从历史界面测试数据中提取得到历史控件结构数据和历史测试操作数据后,从历史控件结构数据中提取历史测试界面的历史控件树数据。其中,历史测试界面可以为历史控件结构数据中进行界面测试的各ui,历史控件树数据可以为各ui中树形架构的控件元素特征。在具体实现时,可以从各历史测试界面分别对应的历史控件结构数据中提取历史控件树数据。

步骤s303:根据历史测试操作数据,确定历史测试界面中各历史测试控件的历史测试顺序及历史操作行为数据。

历史测试操作数据为对历史测试界面进行测试时对应采取的操作行为数据,如左滑、右滑、长按、点击或双击等操作行为。根据历史测试操作数据,确定各历史测试界面中各历史测试控件分别对应的历史测试顺序及历史操作行为数据。其中,历史测试顺序为在对历史测试界面进行测试时,对历史测试界面中的各历史测试控件进行测试的顺序,历史操作行为数据为对各历史测试控件进行测试时对应采取的操作行为。

步骤s305:将历史控件树数据、历史测试顺序和历史操作行为数据进行组合,得到模型训练数据。

得到历史控件树数据、历史测试顺序和历史操作行为数据后,将其进行组合,得到模型训练数据。具体可以将历史控件树数据、历史测试顺序和历史操作行为数据之间建立映射关系,并对应组合得到模型训练数据,通过训练得到的模型训练数据,可以得到界面测试模型。

在一个实施例中,界面测试策略包括待测试控件对应的控件测试顺序以及测试操作行为表;按照界面测试策略,对待测试控件进行测试,得到界面测试结果包括:根据测试操作行为表,确定待测试控件对应的测试操作动作;按照控件测试顺序,依次根据测试操作动作对待测试控件进行测试,得到控件测试结果;根据控件测试结果得到界面测试结果。

得到界面测试模型输出的界面测试策略后,按照该界面测试策略对待测试控件进行测试,得到界面测试结果。本实施例中,界面测试策略包括待测试控件对应的控件测试顺序以及测试操作行为表。其中,控件测试顺序为待测试用户界面中各待测试控件的测试先后顺序,测试先后顺序与待测试用户界面中各待测试控件之间的结构关系有关,具体可以根据控件结构数据中结构信息反映的控件元素间的层级关系确定,对于上下层关系控件,层级高的优先测试,对于相同层级控件,可以根据功能主次确定测试顺序。测试操作行为表为测试时触发各待测试控件执行相应指令的测试操作行为集合,各测试操作行为与待测试控件的类型有关,不同类型的控件有不同的测试操作动作,如按钮控件的点击、滑动和长按等测试操作动作,测试操作行为表中各测试操作行为可以按照一定次序排列,在测试时按照该次序通过对应的测试操作行为进行测试。一般地,不同用户界面的控件结构数据对应不同的界面测试策略,即具有控件测试顺序以及测试操作行为表。例如,对于用户主页面,其中包括众多的跳转控件,如按钮、滑动块等,则各功能主次不同的跳转控件对应有不同控件测试顺序,主要功能优先测试,以确保用户界面的正常运行。又如,对于控件结构数据中最小分支下的控件,其使用频率较低,则该控件的测试顺序较后。而不同的测试操作动作可以根据控件的类型确定,例如对于按钮类型的控件,最常用的测试操作动作为点击,其次包括长按、拖动等;对于文本控件,最常用测试操作动作为点击输入等。

具体地,在按照界面测试策略,对待测试控件进行测试,得到界面测试结果时,根据测试操作行为表,确定待测试控件对应的测试操作动作。测试操作行为表记录了测试时触发各待测试控件执行相应指令的测试操作行为集合,根据该测试操作行为表可以确定待测试控件对应的测试操作动作。再按照控件测试顺序,依次根据测试操作动作对待测试控件进行测试。控件测试顺序确定了待测试用户界面中各待测试控件的对应的测试顺序,按照控件测试顺序依次根据测试操作动作对待测试控件进行测试,得到控件测试结果。在待测试用户界面中所有的待测试控件均完成测试,即得到待测试用户界面中所有的待测试控件对应的控件测试结果后,根据控件测试结果得到界面测试结果。具体可以按照各待测试控件的测试顺序,将对应的控件测试结果进行聚合,得到待测试用户界面的界面测试结果。相比于传统的进行简单随机地点击和滑动的用户界面测试方式,本实施例通过预设的界面测试模型对待测试用户界面进行分析,得到对应的界面测试策略,按照该界面测试策略确定的控件测试顺序以及测试操作行为表对待测试用户界面中的各控件进行测试,提高了对各控件测试顺序和测试动作的针对性,提高了用户界面的测试效率。

在一个实施例中,在得到控件测试结果之后,还包括:当控件测试结果为测试通过时,确定触发待测试控件的触发操作动作;当触发操作动作不处于测试操作行为表的首位时,对测试操作行为表进行更新,得到操作行为更新表;根据控件结构数据、控件测试顺序和操作行为更新表得到模型更新数据,并根据模型更新数据对界面测试模型进行更新。

得到待测试控件对应的控件测试结果后,可以利用该控件测试结果对界面测试模型进行更新,从而实现界面测试模型的自学习,进一步提高界面测试效率。

具体地,在得到控件测试结果之后,判断控件测试结果的结果类型,当控件测试结果为测试通过,即通过界面测试模型输出的界面测试策略成功触发待测试控件执行相应指令时,确定触发待测试控件的触发操作动作。触发操作动作为触发待测试控件执行相应指令时对应的操作行为,如左右滑动、点击、双击或长按等。判断该触发操作动作是否为测试操作行为表的首位对应的操作行为,若触发操作动作不处于测试操作行为表的首位时,即该触发操作动作并非测试操作行为表优先确定的操作行为时,对测试操作行为表进行更新,得到操作行为更新表。具体可以将触发操作动作更新至测试操作行为表的首位,得到操作行为更新表。再根据控件结构数据、控件测试顺序和操作行为更新表得到模型更新数据,并通过该模型更新数据对界面测试模型进行更新。

通过控件测试结果确定模型更新数据并对界面测试模型进行更新,实现了界面测试模型在应用过程中的自学习更新,能够进一步提高用户界面测试的针对性,从而提高界面测试效率。

在一个实施例中,如图4所示,提供了一种用户界面测试方法,包括:

步骤s401:获取待测试用户界面;

步骤s402:接收界面测试命令,并根据界面测试命令得到测试控件表;

步骤s403:按照测试控件表,确定待测试用户界面中的待测试控件。

待测试用户界面为需要进行测试的用户界面,获得待测试用户界面后,接收界面测试命令,界面测试命令由测试人员通过终端102发送,到界面测试命令后,根据该界面测试命令得到测试控件表,测试控件表记录有待测试用户界面中需要进行测试的待测试控件。

步骤s404:获取待测试控件对应的控件结构数据,控件结构数据包括控件树数据;

步骤s405:查询预设的界面测试模型;

步骤s406:根据控件树数据得到模型输入向量;

步骤s407:将模型输入向量输入界面测试模型中,得到界面测试策略,界面测试策略包括待测试控件对应的控件测试顺序以及测试操作行为表。

得到控件结构数据后,将其输入预设的,基于各种应用程序在开发过程中,对各ui测试时的历史界面测试数据训练得到的界面测试模型中,得到界面测试策略。其中,界面测试模型基于各种应用程序在开发过程中,对各ui测试时的历史界面测试数据训练得到。

步骤s408:根据界面测试策略中包括的测试操作行为表,确定待测试控件对应的测试操作动作;

步骤s409:按照界面测试策略中包括的控件测试顺序,依次根据测试操作动作对待测试控件进行测试,得到控件测试结果;

步骤s410:根据控件测试结果得到界面测试结果。

得到界面测试模型输出的界面测试策略后,按照该界面测试策略对待测试控件进行测试,得到界面测试结果。本实施例中,界面测试策略包括待测试控件对应的控件测试顺序以及测试操作行为表。其中,控件测试顺序为待测试用户界面中各待测试控件的测试先后顺序,测试操作行为表为测试时触发各待测试控件执行相应指令的测试操作行为集合,测试操作行为表中各测试操作行为可以按照一定次序排列,在测试时按照该次序通过对应的测试操作行为进行测试。相比于传统的进行简单随机地点击和滑动的用户界面测试方式,本实施例通过预设的界面测试模型对待测试用户界面进行分析,得到对应的界面测试策略,按照该界面测试策略确定的控件测试顺序以及测试操作行为表对待测试用户界面中的各控件进行测试,提高了对各控件测试顺序和测试动作的针对性,提高了用户界面的测试效率。

应该理解的是,虽然2-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图5所示,提供了一种用户界面测试装置,包括:测试控件确定模块501、控件结构获取模块503、测试模型处理模块505和界面测试处理模块507,其中:

测试控件确定模块501,用于获取待测试用户界面,并确定待测试用户界面中的待测试控件;

控件结构获取模块503,用于获取待测试控件对应的控件结构数据;

测试模型处理模块505,用于将控件结构数据输入预设的界面测试模型中,得到界面测试策略;其中,界面测试策略用于描述待测试控件对应的测试方案;

界面测试处理模块507,用于按照界面测试策略,对待测试控件进行测试,得到界面测试结果。

在一个实施例中,测试控件确定模块501包括测试命令接收单元和测试控件确定单元,其中:测试命令接收单元,用于接收界面测试命令,并根据界面测试命令得到测试控件表;测试控件确定单元,用于按照测试控件表,确定待测试用户界面中的待测试控件。

在一个实施例中,控件结构数据包括控件树数据;测试模型处理模块505包括模型查询单元、输入向量确定单元和测试模型处理单元,其中:模型查询单元,用于查询预设的界面测试模型;输入向量确定单元,用于根据控件树数据得到模型输入向量;测试模型处理单元,用于将模型输入向量输入界面测试模型中,得到界面测试策略。

在一个实施例中,还包括历史数据获取模块、训练数据获取模块和模型训练模块,其中:历史数据获取模块,用于获取历史界面测试数据,并从历史界面测试数据中提取历史控件结构数据和历史测试操作数据;训练数据获取模块,用于根据历史控件结构数据和历史测试操作数据得到模型训练数据;模型训练模块,用于训练模型训练数据,得到界面测试模型。

在一个实施例中,训练数据获取模块包括控件树提取单元、测试策略数据单元和训练数据获取单元,其中:控件树提取单元,用于从历史控件结构数据中提取历史测试界面的历史控件树数据;测试策略数据单元,用于根据历史测试操作数据,确定历史测试界面中各历史测试控件的历史测试顺序及历史操作行为数据;训练数据获取单元,用于将历史控件树数据、历史测试顺序和历史操作行为数据进行组合,得到模型训练数据。

在一个实施例中,界面测试策略包括待测试控件对应的控件测试顺序以及测试操作行为表;界面测试处理模块507包括操作动作确定单元、控件测试单元和测试结果获取单元,其中:操作动作确定单元,用于根据测试操作行为表,确定待测试控件对应的测试操作动作;控件测试单元,用于按照控件测试顺序,依次根据测试操作动作对待测试控件进行测试,得到控件测试结果;测试结果获取单元,用于根据控件测试结果得到界面测试结果。

在一个实施例中,还包括触发动作确定模块、操作表更新模块和模型更新模块,其中:触发动作确定模块,用于当控件测试结果为测试通过时,确定触发待测试控件的触发操作动作;操作表更新模块,用于当触发操作动作不处于测试操作行为表的首位时,对测试操作行为表进行更新,得到操作行为更新表;模型更新模块,用于根据控件结构数据、控件测试顺序和操作行为更新表得到模型更新数据,并根据模型更新数据对界面测试模型进行更新。

关于用户界面测试装置的具体限定可以参见上文中对于用户界面测试方法的限定,在此不再赘述。上述用户界面测试装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种用户界面测试方法。

本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现以下步骤:

获取待测试用户界面,并确定待测试用户界面中的待测试控件;

获取待测试控件对应的控件结构数据;

将控件结构数据输入预设的界面测试模型中,得到界面测试策略;其中,界面测试策略用于描述待测试控件对应的测试方案;

按照界面测试策略,对待测试控件进行测试,得到界面测试结果。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:接收界面测试命令,并根据界面测试命令得到测试控件表;按照测试控件表,确定待测试用户界面中的待测试控件。

在一个实施例中,控件结构数据包括控件树数据;处理器执行计算机程序时还实现以下步骤:查询预设的界面测试模型;根据控件树数据得到模型输入向量;将模型输入向量输入界面测试模型中,得到界面测试策略。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取历史界面测试数据,并从历史界面测试数据中提取历史控件结构数据和历史测试操作数据;根据历史控件结构数据和历史测试操作数据得到模型训练数据;训练模型训练数据,得到界面测试模型。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:从历史控件结构数据中提取历史测试界面的历史控件树数据;根据历史测试操作数据,确定历史测试界面中各历史测试控件的历史测试顺序及历史操作行为数据;将历史控件树数据、历史测试顺序和历史操作行为数据进行组合,得到模型训练数据。

在一个实施例中,界面测试策略包括待测试控件对应的控件测试顺序以及测试操作行为表;处理器执行计算机程序时还实现以下步骤:根据测试操作行为表,确定待测试控件对应的测试操作动作;按照控件测试顺序,依次根据测试操作动作对待测试控件进行测试,得到控件测试结果;根据控件测试结果得到界面测试结果。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:当控件测试结果为测试通过时,确定触发待测试控件的触发操作动作;当触发操作动作不处于测试操作行为表的首位时,对测试操作行为表进行更新,得到操作行为更新表;根据控件结构数据、控件测试顺序和操作行为更新表得到模型更新数据,并根据模型更新数据对界面测试模型进行更新。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

获取待测试用户界面,并确定待测试用户界面中的待测试控件;

获取待测试控件对应的控件结构数据;

将控件结构数据输入预设的界面测试模型中,得到界面测试策略;其中,界面测试策略用于描述待测试控件对应的测试方案;

按照界面测试策略,对待测试控件进行测试,得到界面测试结果。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:接收界面测试命令,并根据界面测试命令得到测试控件表;按照测试控件表,确定待测试用户界面中的待测试控件。

在一个实施例中,控件结构数据包括控件树数据;计算机程序被处理器执行时还实现以下步骤:查询预设的界面测试模型;根据控件树数据得到模型输入向量;将模型输入向量输入界面测试模型中,得到界面测试策略。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取历史界面测试数据,并从历史界面测试数据中提取历史控件结构数据和历史测试操作数据;根据历史控件结构数据和历史测试操作数据得到模型训练数据;训练模型训练数据,得到界面测试模型。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:从历史控件结构数据中提取历史测试界面的历史控件树数据;根据历史测试操作数据,确定历史测试界面中各历史测试控件的历史测试顺序及历史操作行为数据;将历史控件树数据、历史测试顺序和历史操作行为数据进行组合,得到模型训练数据。

在一个实施例中,界面测试策略包括待测试控件对应的控件测试顺序以及测试操作行为表;计算机程序被处理器执行时还实现以下步骤:根据测试操作行为表,确定待测试控件对应的测试操作动作;按照控件测试顺序,依次根据测试操作动作对待测试控件进行测试,得到控件测试结果;根据控件测试结果得到界面测试结果。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当控件测试结果为测试通过时,确定触发待测试控件的触发操作动作;当触发操作动作不处于测试操作行为表的首位时,对测试操作行为表进行更新,得到操作行为更新表;根据控件结构数据、控件测试顺序和操作行为更新表得到模型更新数据,并根据模型更新数据对界面测试模型进行更新。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

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