页面模型、用户界面自动化测试方法以及装置的制造方法_3

文档序号:9844028阅读:来源:国知局
行封装而形成的组件;利用树图组件可以实现树状图形的展示;通常情况下,树图组件不会被用于信息输入过程中,而是通常会被用于信息获取过程中;例如,从利用树图组件而呈现的树状图形的内容中获取相应的信息,以进行信息匹配判断等。树图组件并不会对树状图形的结构进行具体限制。
[0034]作为示例,页签组件主要是通过对多个基于HTML基本元素的页面元素进行封装而形成的组件;利用页签组件可以实现页签页面的展示。
[0035]作为示例,图表组件主要是通过对多个基于HTML基本元素的页面元素进行封装而形成的组件;利用图表组件可以实现柱状图、饼状图以及曲线图等图形的展示;通常情况下,图表组件不会被用于信息输入过程中,而是通常会被用于信息获取过程中;例如,从利用图表组件而呈现的图形的内容中获取相应的信息,以进行信息匹配判断等。图表组件并不会对图表图形的具体形状进行限制。
[0036]上述仅示意性的列出了几种组件,本实施例完全可以根据页面的具体情况来设置相应的组件,且组件的属性以及方法的具体设置内容通常可以根据利用组件所需要实现的功能来确定,本实施例不限制组件的属性以及方法所包含的具体内容。
[0037]本实施例中的第二集合通常是针对各页面中经常在一起使用的多个组件进行封装而形成的,第二集合的方法可以被页面模型的方法所调用。实质上,第二集合也是一种组件,而且相对于第一集合而言,第二集合是一种较为大型的组件;为便于与第一集合相区别,本实施例不会将第二集合也称为组件,而是将第二集合称为页面。页面模型可以由一个页面或者多个页面形成。
[0038]作为示例,第二集合的组成单位通常为组件;然而,本实施例的第二集合也可以是针对组件以及页面元素进行封装而形成的页面;即第二集合的组成单位可以为组件和页面元素,组件的方法和页面元素的方法均可以被第二集合所调用。
[0039]作为示例,封装于第二集合中的页面元素可以包括:至少一个基于HTML基本元素的页面元素和/或至少一个基于自定义元素基类的页面元素,具体而言,第二集合可以通过对一个或多个基于HTML基本元素的页面元素以及一个或多个组件进行封装而形成,第二集合也可以通过对一个或多个基于自定义元素基类的页面元素以及一个或多个组件进行封装而形成,第二集合还可以为通过对至少一个基于HTML基本元素的页面元素、至少一个基于自定义元素基类的页面元素以及至少一个组件进行封装而形成。
[0040]本实施例中的基于自定义元素基类的页面元素、各种组件以及页面等可以分门别类的存储于代码包中,以方便进行用户界面自动化测试。
[0041 ]实施例二、用户界面自动化测试方法。
[0042]图1为本实施例的用户界面自动化测试方法的流程图,图1所示的方法主要包括:步骤S100、步骤S110、步骤S120以及步骤130。本实施例中所记载的方法通常运行于智能电子设备中,优选的,本实施例中所记载的方法可以在台式计算机、笔记型计算机、平板电脑以及智能移动电话等用户设备中运行。下面对图1中的各步骤分别进行说明。
[0043 ] S100、确定被测试业务所对应的预定业务流程。
[0044]具体的,本实施例中的预定业务流程通常可以是针对某一具体业务功能的通用业务流程,如在被测试业务为第一网站中的火车票订票业务时,由于不同网站所提供的火车票订票业务的业务流程基本相同,因此,本实施例中的预定业务流程可以为能够适用于不同网络所提供的火车票订票业务的通用性的业务流程,即该预定业务流程可以适用于第一网站所提供的火车票订票业务,也可以适用于第二网站和第三网站所提供的火车票订票业务。
[0045]S110、确定该预定业务流程所涉及的各用户界面各自对应的页面模型。
[0046]具体的,本实施例中的页面模型为上述实施例一中所记载的页面模型。本实施例可以在没有预先设置该预定业务流程所涉及的各用户界面各自对应的页面模型的情况下,根据被测试业务来设置预定业务流程以及该预定业务流程所涉及的各用户界面各自对应的页面模型,并存储该预定业务流程所涉及的各用户界面各自对应的页面模型;本实施例也可以在预先设置有该预定业务流程所涉及的各用户界面各自对应的页面模型的情况下,根据存储的信息来确定该预定业务流程所涉及的各用户界面各自对应的页面模型。
[0047]S120、根据被测试业务所涉及的各用户界面使相应的页面模型分别实例化。
[0048]具体的,由于具有相同业务功能的不同业务的业务流程所涉及用户界面大体相同(如火车票订票业务所涉及的登录页面通常都会包括用户名输入框、密码输入框以及登录按钮等),其不同之处通常为按钮的设置位置不同、按钮上的文本不同、输入框的位置不同以及输入框对应的提示文本不同等,因此,本实施例通过根据被测试业务的各用户界面使相应的页面模型分别实例化,可以使被测试业务所涉及的各用户界面所特有的内容通过实例化充分体现出来,如在页面模板的实例化过程中,在根据一个具体的用户界面对页面模型进行初始化时,通过对页面模型中的相应属性进行赋值,使实例化后的页面模型成为该具体的用户界面。本实施例可以从预先设置的文档(如Java脚本文件)中获取相应的取值,以进行对属性的赋值操作。
[0049]S130、根据测试用例调用相应的实例化后的页面模型,被调用的实例化后的页面模型通过执行其各自的方法完成相应的页面功能,以实现用户界面自动化测试。
[0050]具体的,用户界面测试程序可以调用实例化后的页面模型的方法,实例化后的页面模型的方法被执行,以实现该页面模型的功能,如页面模型的方法在执行过程中,通过调用其所包含的各组件的方法或者各页面的方法使各组件或者页面来实现相应的功能,从而使页面模型实现相应的功能。
[0051 ]本实施例的用户界面测试方法的一个具体的例子:首先,由于本实施例中的被测试业务为机票订票业务(如携程网的机票订票业务),因此,先抽象出一套通用的机票订票的业务流程;然后,确定该业务流程所涉及到的所有用户界面,并针对所有用户界面确定出所需使用的页面、组件以及自定义元素基类,如果预先设置有所需使用的页面、组件以及自定义元素基类,则本次测试过程不需要设置页面、组件以及自定义元素基类,如果预先没有设置所需使用的页面、组件以及自定义元素基类,则可以在本次测试过程中设置相应的页面、组件以及自定义元素基类;之后,利用页面、组件以及自定义元素基类来为业务流程所涉及到的所有用户界面设置页面模型,当然,如果预先设置有相应的页面模型可以直接利用预先设置好的页面模型;之后,根据针对被测试业务(如携程网的机票订票业务)增加产品包(如携程包),以使新增的产品包继承针对通用的机票订票的业务流程所设置的各页面模型;然后,对新增加的产品包中的页面模型进行实例化,以针对携程网的机票订票业务所特有的内容进行定义,如定义携程网的机票订票业务的登录页面中的用户名输入框位置信息以及密码输入框位置信息等;之后,根据具体的测试需求(如测试用例所体现出的测试需求)使用相应的变量去调用相应的实例化后的页面模型,如向相应的实例化后的页面模型中输入出发地以及终点站等信息,从而最终可以实现用户界面自动化测试。
[0052]实施例三、用户界面自动化测试装置。
[0053]图2为本实施例的用户界面自动化测试装置的示意图,图2所示的装置主要包括:第一确定模块200、第二确定模块210、实例化模块220以及测试模块230。本实施例中所记载的装置通常可以被设置于智能电子设备中,优选的,该装置可以设置于台式计算机、笔记型计算机、平板电脑以及智能移动电话等用户设备中。下面对图2中的各模块分别进行说明。
[0054]第一确定模块200主要适于确定被测试业务所对应的预定业务流程。
[0055]具体的,第一确定模块200所确定出的预定业务流程通常可以
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1