一种控件验证方法及软件自动测试方法与流程

文档序号:15685953发布日期:2018-10-16 21:03阅读:144来源:国知局

本发明涉及软件自动测试技术领域,尤其涉及一种控件验证方法及软件自动测试方法。



背景技术:

随着计算机技术的发展,越来越多的应用软件被开发出来并被应用于社会的各个领域中。每个应用软件在完成开发并投入市场之前都需要对其进行测试,以判断是否存在程序瑕疵(bug),以及设定的各应用功能是否能够成功实现等,软件测试是软件开发中的重要一环。

现有技术中,通常采用自动测试技术对应用软件进行测试,例如采用设定的脚本模拟使用者使用该应用软件中各应用功能的过程来对软件进行反复测试,以测试该应用软件的各应用功能是否能够如期实现,以及测试该应用软件反复运行的抗压能力等。具体地,现有技术中的软件自动测试技术通常基于应用软件的各个控件,以模拟使用者点击控件的方式对整个应用软件进行使用流程的模拟,从而实现软件自动测试的目的。然而,现有技术中并没有在测试之前对控件进行自动验证的过程,即在导入控件的正确性得不到保证的情况下就开始对应用软件进行测试,从而会影响到最终测试结果的正确性,因此降低测试效率,提升了人工确认的成本。



技术实现要素:

根据现有技术中存在的上述问题,现提供一种控件验证方法及软件自动测试方法的技术方案,旨在保证软件自动测试过程中控件设置的准确性,降低人工确认的成本,提升测试效率。

一种控件验证方法,适用于软件的自动测试过程中;其中,包括:

步骤s1,获取一包括多个控件定位信息的控件信息列表,每个所述控件定位信息用于在软件的所述当前测试界面中查找并标识对应的控件;

步骤s2,于所述控件信息列表中获取一个所述控件定位信息;

步骤s3,根据被获取的所述控件定位信息于进行自动测试的所述软件中查找所述控件并形成一目标控件列表;

步骤s4,判断所述目标控件列表中包括的所述控件是否仅为一个:

若是,则确认所述控件通过验证,随后转向步骤s5;

若否,则确认所述控件未通过验证,随后转向步骤s5;

步骤s5,判断所述控件信息列表中是否存在尚未被获取的所述控件定位信息;

若存在,则返回所述步骤s2;

若不存在,则执行后续的自动测试步骤。

优选的,该控件验证方法,其中,所述步骤s4中:

若所述目标控件列表中包括的所述控件仅为一个,则于所述控件被设置在所述软件的当前测试界面上的位置执行一第一标记操作,以表示所述控件通过验证;

若所述目标控件列表中包括的所述控件多于一个,则于所有所述控件被设置在所述软件的当前测试界面上的位置均进行一第二标记操作,以表示所述控件未通过验证。

优选的,该控件验证方法,其中,所述步骤s4中,所述第一标记操作为以一具有第一颜色的框包围所述控件,以及所述第二标记操作为以一具有第二颜色的框包围所述控件。

优选的,该控件验证方法,其中,所述步骤s4中:

若所述目标控件列表中包括的所述控件仅为一个,则在所述目标控件列表中对所述控件执行一第三标记操作,以表示所述控件通过验证;

若所述目标控件列表中包括的所述控件多于一个,则在所述目标控件列表中对所有所述控件均执行一第四标记操作,以表示所述控件未通过验证。

优选的,该控件验证方法,其中,所述步骤s4中,在确认所述控件通过验证后,刷新所述当前测试界面,并重新判断所述目标控件列表中包括的所述控件是否仅为一个:

若是,则确认所述控件通过验证,随后转向步骤s5;

若否,则确认所述控件未通过验证,随后转向步骤s5。

优选的,该控件验证方法,其中,所述步骤s4中,在确认所述控件未通过验证后,首先执行下述步骤:

步骤s41,获取未通过验证的一个所述控件;

步骤s42,判断所述控件信息列表中是否保存有对应所述控件的所述控件定位信息:

若是,则在所述当前测试界面上显示所述控件定位信息,以供使用者进行修改并根据经过修改的所述控件定位信息更新所述控件信息列表,随后转向所述步骤s5;

若否,则在所述软件的当前测试界面上显示一输入框,以供使用者输入所述控件的所述控件定位信息,并将输入的所述控件定位信息保存在所述控件信息列表中,随后转向所述步骤s5。

优选的,该控件验证方法,其中,所述步骤s5中,所述后续的自动测试步骤为采用所述控件信息列表中的所述控件定位信息在所述软件中定位并获取对应的所述控件,从而对所述软件进行自动测试。

优选的,该控件验证方法,其中,所述控件定位信息包括:

所述控件的编号;

所述控件的名称;以及

所述控件之间的节点关系信息。

一种软件自动测试方法,其中,采用上述的控件验证方法。

上述技术方案的有益效果是:提供一种控件验证方法,能够保证软件自动测试过程中控件设置的准确性,降低人工确认的成本,提升测试效率。

附图说明

图1是本发明的较佳的实施例中,一种控件验证方法的总体流程示意图;

图2是本发明的较佳的实施例中,于图1的基础上,在控件验证未通过时的处理流程示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。

下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。

基于现有技术中存在的上述问题,现提供一种控件验证方法,该方法适用于软件的自动测试过程中,具体地适用于执行软件的自动测试之前。上述控件验证方法具体如图1所示,包括:

步骤s1,获取一包括多个控件定位信息的控件信息列表,每个控件定位信息用于在软件的当前测试界面中查找并标识对应的控件;

步骤s2,于控件信息列表中获取一个控件定位信息;

步骤s3,根据被获取的控件定位信息于进行自动测试的软件中查找控件并形成一目标控件列表;

步骤s4,判断目标控件列表中包括的控件是否仅为一个:

若是,则确认控件通过验证,随后转向步骤s5;

若否,则确认控件未通过验证,随后转向步骤s5;

步骤s5,判断控件信息列表中是否存在尚未被获取的控件定位信息;

若存在,则返回步骤s2;

若不存在,则执行后续的自动测试步骤。

具体地,本实施例中,上述步骤s1中,首先获取一控件信息列表,该控件信息列表中包括于待测试的软件上的所有控件对应的控件定位信息。

所谓控件定位信息,是指用于在软件的当前测试界面中查找并标识对应的控件的定位信息。

例如,上述控件定位信息中还可以包括不同控件的上下位关系以及操作关联的关系,例如将控件之间的上级关系和同级关系以一树形结构表示,则每个控件定位信息中包括对应的控件在上述树形结构中的节点位置信息以及上下左右的节点关系信息,即可以通过该控件定位信息就能够在软件的当前测试界面上找到对应的控件所在的位置。

则本实施例中,首先根据各控件的树形结构中的节点设置获取各控件的控件定位信息并形成一控件信息列表,该控件信息列表就可以作为后续对控件进行验证的一个依据。

随后,本实施例中,获取上述控件信息列表中的一个控件定位信息,具体地,上述控件信息列表中的控件定位信息是以一定顺序排列的,例如可以以一定的遍历顺序对控件定位信息进行排列,则上述步骤s2中,依照上述控件定位信息在控件信息列表中的保存顺序,依次将其从控件信息列表中取出。

本实施例中,上述步骤s3中,获取到上述控件定位信息后,根据该控件定位信息在当前测试界面上查找对应的控件形成一目标控件列表,该目标控件列表中可以不包括任何控件,即该目标控件列表可以为空列表。对于实际情况下的当前测试界面来说,可能查找得到不止一个控件,其中可能有尚未被保存的控件,或者控件之间的节点关系存在问题,因此需要采用一目标控件列表将这些控件包括起来,以便进行后续的验证处理。

例如,上述控件信息列表中的控件定位信息为每个控件在软件的当前测试界面上的节点关系信息,则根据该节点关系信息可以在软件的当前测试界面上定位到控件,具体地通过在当前测试界面上遍历控件并找到与上述控件定位信息相匹配的控件随后送入目标控件列表中保存。

本实施例中,上述步骤s4中,在形成目标控件列表后,判断该目标控件列表中是否仅包括一个控件:

若上述目标控件列表中仅包括一个控件,则表示该控件的设置是正确的,因此可以认为该控件通过验证;

若上述目标控件列表为空或者包括不止一个控件,则表示这些控件的设置不正确,因此可以认为这些控件未通过验证。

本实施例中,由于是从控件信息列表中顺次获取控件定位信息并进行控件验证的,因此在对一个控件进行验证之后,返回到上述步骤s2中根据下一个控件定位信息对控件进行验证,直至该控件信息列表中没有未被验证过的控件定位信息为止,随后再开始后续的自动测试步骤。

本发明的较佳的实施例中,上述步骤s4中:

若目标控件列表中包括的控件仅为一个,则在当前测试界面上的该控件被设置的位置执行一第一标记操作,以表示控件通过验证;

若目标控件列表中包括的控件多于一个,则在当前测试界面上的包括在目标控件列表中的所有控件被设置的位置上均进行一第二标记操作,以表示控件未通过验证。

本实施例中,为了区分是否通过验证,需要对当前测试界面上的控件进行相应的标记。具体地,对通过验证的控件执行一第一标记操作,即在当前测试界面上对应于通过验证的控件的位置打上一第一标记;相应地,对未通过验证的控件执行一第二标记操作,即在当前测试界面上对应于未通过验证的控件的位置打上一第二标记。

本发明的较佳的实施例中,上述第一标记操作可以为以一具有第一颜色的框包围控件,上述第二标记操作可以为以一具有第二颜色的框包围控件。

本发明的一个较佳的实施例中,上述步骤s4中,若判断目标控件列表中的控件仅为一个时,则在该控件的位置标上一个红色方框,即上述第一颜色可以为红色。

若判断目标控件列表中的控件不止为一个时,则在该控件的位置标上一个黄色方框,即上述第二颜色可以为黄色。

因此,通过观察当前测试界面,使用者可以很方便地分辨验证通过/未通过的控件。

本发明的其他实施例中,上述第一颜色和第二颜色还可以选用其他具有区分性的颜色,例如第一颜色为黑色,第二颜色为蓝色等,上述第一颜色和第二颜色的选用不影响本发明的保护范围。

本发明的较佳的实施例中,上述步骤s4中,上述第一标记操作可以为以一有颜色的方框包围上述控件,上述第二标记操作可以为不对控件做任何操作。即:若目标控件列表中的控件仅为一个时,采用有颜色的方框(例如红色方框)包围该控件,以标记该控件通过验证;若目标控件列表中的控件不止为一个时,不对这些控件做任何标记。

因此,通过观察当前测试界面,使用者可以通过分辨哪些是加方框标记的来判断哪些控件通过验证。

本发明的其他实施例中,还可以通过其他标记方式在当前测试界面上区分验证通过的控件以及验证未通过的控件。

本发明的较佳的实施例中,上述步骤s4中:

若目标控件列表中包括的控件仅为一个,则在目标控件列表中对控件执行一第三标记操作,以表示控件通过验证;

若目标控件列表中包括的控件多于一个,则在目标控件列表中对所有控件均执行一第四标记操作,以表示控件未通过验证。

本实施例中,对控件的标记操作并非在当前测试界面上做标记,而是在目标控件列表中做标记,以表示该控件是否通过验证。具体地,可以在目标控件列表中对通过验证的控件前做第三标记操作,以表示该控件通过验证(例如打上*标记或者其他标记),也可以对未通过验证的控件做第四标记操作,以表示该控件未通过验证(例如打上#标记或者其他标记)。本发明的其他实施例中,可以单独对通过验证的控件打上标记而对未通过验证的控件不做任何标记操作,或者单独对未通过验证的控件打上标记而对通过验证的控件不做任何标记操作,以区分控件是否通过验证。

本实施例中,在对目标控件列表中的控件进行标记操作的同时,也可以对控件信息列表中相应的控件定位信息进行标记操作。例如,对于一个控件定位信息,在当前测试界面中相应的定位位置找到多个控件,则表示该控件定位信息对应的控件在当前测试界面上未准确设置,则可以在控件信息列表中对该控件定位信息进行标记。

本发明的较佳的实施例中,上述步骤s4中,在确认控件通过验证后,刷新当前测试界面,并重新判断目标控件列表中包括的控件是否仅为一个:

若是,则确认控件通过验证,随后转向步骤s5;

若否,则确认控件未通过验证,随后转向步骤s5。

具体地,本实施例中,一些控件可能是一些具有动态id的控件,因此需要重新刷新画面已对该类型的控件进行重复判断:

若原本该控件被认为是通过验证并被标记(例如标上了红色方框),随后在刷新画面之后该控件上的标记消失了(例如红色方框消失了),或者该控件上的标记变成了未通过验证的标记(例如由红色方框变成了黄色方框),则表示该控件依然不能通过验证,此时对该控件打上用于表示未通过验证的标记。

本发明的较佳的实施例中,上述步骤s4中,在确认控件未通过验证后,首先执行如图2所示的下述步骤:

步骤s41,获取未通过验证的一个控件;

步骤s42,判断控件信息列表中是否保存有对应控件的控件定位信息:

若是,则在软件的当前测试界面上显示控件定位信息,以供使用者进行修改并根据经过修改的控件定位信息更新控件信息列表,随后转向步骤s5;

若否,则在软件的当前测试界面上显示一输入框,以供使用者输入控件的控件定位信息,并将输入的控件定位信息保存在控件信息列表中,随后转向步骤s5。

具体地,本实施例中,若一个控件被判断为未通过验证,则判断该控件的控件定位信息是否被保存在控件信息列表中,即该控件是否事先经过保存:

若该控件的控件定位信息被保存在控件信息列表中,则表示该控件事先经过保存,此时只需要在当前测试界面上显示该控件的控件定位信息,并提供给使用者对该控件的控件定位信息进行手动修改即可,随后根据修改的内容更新控件信息列表;

若该控件的控件定位信息未被保存在控件信息列表中,则表示该控件事先未经过保存,此时需要在当前测试界面上显示一输入框供使用者输入该控件的控件定位信息,以将该控件的信息保存到控件信息列表中。

本发明的较佳的实施例中,上述步骤s5中,后续的自动测试步骤为采用控件信息列表中的控件定位信息对软件的测试界面上的控件进行定位,从而对软件进行自动测试。上述自动测试步骤为现有的自动测试步骤,在此不再赘述。

本发明的较佳的实施例中,上述控件信息列表中的控件定位信息包括:

控件的编号;

控件的名称;以及

控件之间的节点关系信息。

具体地,本实施例中,如上文中所述,上述控件定位信息中包括控件之间的节点关系信息,同时还可以包括该控件的id和名称。

则在上文中,当未通过验证的控件未被保存时,通过输入框手动输入该控件的id和名称,以及设置该控件的节点关系信息,从而形成该控件的控件定位信息并保存在控件信息列表中。

本发明的较佳的实施例中,还提供一种软件自动测试方法,采用上文中所述的控件验证方法。

以上所述仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书及图示内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。

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