自动生成用例脚本的方法和装置的制作方法

文档序号:6429734阅读:303来源:国知局
专利名称:自动生成用例脚本的方法和装置的制作方法
技术领域
本发明涉及终端测试领域,尤其涉及一种自动生成用例脚本的方法和装置。
背景技术
随着终端功能不断增强,定制版本增多,终端上的软件测试变得更加复杂,对终端测试的效率要求也更高了。较高级的终端软件测试用例数量繁多,规模庞大,所以通过测试用例脚本,实现终端软件测试的自动化已经成为亟需解决的问题。目前采用较多的生成用例的方法为手工编写用例,即开发人员根据手工测试用例,编写出对应的测试用例脚本,以便通过这些测试用例脚本进行自动化测试。然而,对照手工测试用例逐一编写测试用例脚本的方法,不仅效率低下,生成用例脚本的灵活性也受到限制,不能适应终端设备种类的增多和生产规模的扩大。为了提高生成用例脚本的效率,现有技术中提出一种自动生成用例脚本的方法, 该方法为根据用户界面(User Interface, UI)对终端进行建模,也就是通过建模语言对按键、菜单等进行描述,再根据模型自动生成用例脚本。对于不同的终端,只需要移植UI模型便可以根据UI模型自动生成用例脚本,不需要大量的人员和精力来进行人工编写用例脚本,提高了生成用例脚本的效率。但是,目前终端的用户界面会随着后台数据的变化而变化,例如,在邮箱应用中,当没有填写邮箱账号时选择“写邮件”,则会显示是否需要创建邮箱账号的用户界面;当已经填写账号时选择“写邮件”,则会进入邮件编辑的用户界面。在实现上述自动生成用例脚本的过程中,发明人发现现有技术中至少存在如下问题由于终端的UI操作会随着后台数据的变化而变化,仅仅通过描述UI菜单和按键得到的固定模型,不能随着后台数据的不同而动态生成对应的用例脚本,导致自动生成用例脚本的技术不能广泛适用。

发明内容
本发明的实施例提供一种自动生成用例脚本的方法和装置,能够根据不同的后台数据生成与后台数据对应的用例脚本,适应了动态变化的UI操作,提高了自动生成用例脚本的技术的适用性。为达到上述目的,本发明的实施例采用如下技术方案一种自动生成用例脚本的方法,包括根据终端的图形用户界面和所述终端的后台数据对所述终端进行建模,得到与所述后台数据对应的动态模型;根据所述动态模型生成用例脚本。一种自动生成用例脚本的装置,包括建模单元,用于根据终端的图形用户界面和所述终端的后台数据对所述终端进行建模,得到与所述后台数据对应的动态模型;用例生成单元,用于根据所述动态模型生成用例脚本。
本发明实施例提供的自动生成用例脚本的方法和装置,在根据UI建模的同时,还根据后台数据对UI模型进一步调整,得到随着后台数据的变化而变化的动态模型,再根据动态模型生成用例脚本,与现有技术中仅仅通过UI建模得到的固定模型,并根据固定模型生成用例脚本的方法相比,能够根据不同的后台数据生成与后台数据对应的用例脚本,适应了动态变化的UI操作,提高了自动生成用例脚本的技术的适用性。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例1中的方法流程图;图2为本发明实施例2中的方法流程图;图3为本发明实施例3中的一种装置组成示意图;图4为本发明实施例3中的另一种装置组成示意图;图5为本发明实施例3中的另一种装置组成示意图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。实施例1本发明实施例提供一种自动生成用例脚本的方法,如图1所示,该方法包括101、根据终端的图形用户界面和所述终端的后台数据对所述终端进行建模,得到与所述后台数据对应的动态模型。其中,根据终端的图形用户界面和所述终端的后台数据对所述终端进行建模,包括分别对终端的UI和后台数据进行建模,即用建模语言描述终端UI包含的菜单和/或按键,并用建模语言描述终端的后台数据。所述后台数据是指对终端UI有影响的终端上的存储数据,在描述后台数据时,可以包含后台数据的类、对象以及对象属性等。所述建模语言可以是可扩展标记语言(extensible Markup Language,XML)或者统一建模语言(Unified Modeling Language, UML)。其中,建立所述动态模型的方法可以为用建模语言描述终端的图形用户界面所包含的菜单和/或按键,得到第一模型;对所述第一模型进行抽象,得到所述图像用户界面所包含的菜单和/或按键对应的控件;用建模语言描述所述后台数据,抽象所述后台数据对所述控件的影响,得到所述后台数据的分析规则;根据所述第一模型、所述后台数据以及所述后台数据的分析规则生成与所述后台数据对应的动态模型。需要说明的是,所述终端可以为任何具备UI显示的装置,例如手机、刷卡机、操控台、计算机等等。
102、根据所述动态模型生成用例脚本。其中,在建立动态模型的步骤101中,可以在对所述第一模型进行抽象,得到所述图像用户界面所包含的菜单和/或按键对应的控件时,得到所述控件对应的用例生成规则。生成用例脚本的方法为根据所述用例生成规则和所述动态模型生成用例脚本。本发明实施例提供的自动生成用例脚本的方法,在根据UI建模的同时,还根据后台数据对UI模型进一步调整,得到随着后台数据的变化而变化的动态模型,再根据动态模型生成用例脚本,与现有技术中仅仅通过UI建模得到的固定模型,并根据固定模型生成用例脚本的方法相比,能够根据不同的后台数据生成与后台数据对应的用例脚本,适应了动态变化的UI操作,提高了自动生成用例脚本的技术的适用性。实施例2本发明实施例提供一种自动生成用例脚本的方法,如图2所示,该方法包括201、用建模语言描述终端的图形用户界面所包含的菜单和/或按键,得到第一模型。其中,建模语言可以是可扩展标记语言(extensible Markup Language,XML)或者统一建模语言(Unified Modeling Language, UML) 0在根据UI建模,得到第一模型时,采用建模语言节点描述,形成菜单数,并且为每个菜单定义激活需要的按键,以便在生成的用例脚本通过模拟按键操作实现对终端的测试,所以菜单及按键描述是建模的核心。其中,所述终端可以任何具备UI显示的设备,例如手机、刷卡机、操控台、计算机寸寸。202、对所述第一模型进行抽象,得到所述图像用户界面所包含的菜单和/或按键对应的控件,同时得到所述控件对应的用例生成规则。其中,将第一模型中的菜单和/或按键抽象为不同种类的控件或应用,便可以将对终端系统和软件的测试转换成对各个控件或应用的测试。在完成控件的抽象后,可以获取各个控件对应的用例生成规则,根据不同控件生成对应的模拟UI操作。例如,可以将邮箱UI中的“收音机”抽象为一个控件,该控件的用例生成规则为选择每一个子项并进行设置,并检查是否成功。203、用建模语言描述所述后台数据,抽象所述后台数据对所述控件的影响,得到所述后台数据的分析规则。其中,由于各个控件的UI并不是一成不变的,而是会根据后台数据的变化而变化的,所以需要根据后台数据对控件的影响,进一步调整控件的UI模型,以便在准确的UI 模型上生成用例脚本。其中,在XML文件中包含对后台数据的描述,这些描述中包含数据的类、对象以及对象的属性等,而后台数据的分析规则则包含了根据对象的属性、对象的数量或者对象所属的类,对控件UI进行调整。例如,邮箱账户对应的控件中的后台数据 "mailboxOO. isDefalt :yeS”表示“邮箱00是默认邮箱”,此时数据的分析规则为选择该账户对应的UI模型包含“编辑”和“删除”两个子选项。而后台数据“mailboX189. isDefalt no”对应的子选项中则还包含“设为默认邮箱”的子选项。204、根据所述第一模型、所述后台数据以及所述后台数据的分析规则生成与所述后台数据对应的动态模型。其中,根据后台数据以及后台数据的分析规则,对第一模型中的各个控件进行重新建模,得到随着后台数据的变化而变化的动态模型。205、根据所述用例生成规则和所述动态模型生成用例脚本。其中,根据步骤202中得到的各个控件用例生成规则,以及步骤204中得到的动态模型,生成对应的用例脚本。由各个控件的动态UI模型以及控件对应的用例生成规则,生成各个控件对应的测试用例,进而得到整个终端系统和软件的测试用例。本发明实施例提供的自动生成用例脚本的方法,在根据UI建模的同时,还根据后台数据对UI模型进一步调整,得到随着后台数据的变化而变化的动态模型,再根据动态模型生成用例脚本,与现有技术中仅仅通过UI建模得到的固定模型,并根据固定模型生成用例脚本的方法相比,能够根据不同的后台数据生成与后台数据对应的用例脚本,适应了动态变化的UI操作,提高了自动生成用例脚本的技术的适用性。实施例3本发明实施例提供一种自动生成用例脚本的装置,如图3所示,包括建模单元 31、用例生成单元32。建模单元31,用于根据终端的图形用户界面和所述终端的后台数据对所述终端进行建模,得到与所述后台数据对应的动态模型。用例生成单元32,用于根据所述动态模型生成用例脚本。进一步的,如图4所示,所述建模单元31包括第一建模模块311、控件抽象模块 312、数据抽象模块313、动态建模模块314。第一建模模块311,用于用建模语言描述终端的图形用户界面所包含的菜单和/ 或按键,得到第一模型。控件抽象模块312,用于对所述第一模型进行抽象,得到所述图像用户界面所包含的菜单和/或按键对应的控件。数据抽象模块313,用于用建模语言描述所述后台数据,抽象所述后台数据对所述控件的影响,得到所述后台数据的分析规则。动态建模模块314,用于根据所述第一模型、所述后台数据以及所述后台数据的分析规则生成与所述后台数据对应的动态模型。进一步的,如图5所示,该自动生成用例脚本的装置,还包括规则获取模块33。规则获取单元33,用于在对所述第一模型进行抽象,得到所述图像用户界面所包含的菜单和/或按键对应的控件时,得到所述控件对应的用例生成规则。所述用例生成单元32还用于根据所述用例生成规则和所述动态模型生成用例脚本。本发明实施例提供的自动生成用例脚本的装置,在根据UI建模的同时,还根据后台数据对UI模型进一步调整,得到随着后台数据的变化而变化的动态模型,再根据动态模型生成用例脚本,与现有技术中仅仅通过UI建模得到的固定模型,并根据固定模型生成用例脚本的方法相比,能够根据不同的后台数据生成与后台数据对应的用例脚本,适应了动态变化的UI操作,提高了自动生成用例脚本的技术的适用性。通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机, 服务器,或者网络设备等)执行本发明各个实施例所述的方法。 以上所述,仅为本发明的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
权利要求
1.一种自动生成用例脚本的方法,其特征在于,包括根据终端的图形用户界面和所述终端的后台数据对所述终端进行建模,得到与所述后台数据对应的动态模型;根据所述动态模型生成用例脚本。
2.根据权利要求1所述的自动生成用例脚本的方法,其特征在于,所述根据终端的图形用户界面和所述终端的后台数据对所述终端进行建模,得到与所述后台数据对应的动态模型包括用建模语言描述终端的图形用户界面所包含的菜单和/或按键,得到第一模型; 对所述第一模型进行抽象,得到所述图像用户界面所包含的菜单和/或按键对应的控件;用建模语言描述所述后台数据,抽象所述后台数据对所述控件的影响,得到所述后台数据的分析规则;根据所述第一模型、所述后台数据以及所述后台数据的分析规则生成与所述后台数据对应的动态模型。
3.根据权利要求2所述的自动生成用例脚本的方法,其特征在于,还包括在对所述第一模型进行抽象,得到所述图像用户界面所包含的菜单和/或按键对应的控件时,得到所述控件对应的用例生成规则;所述根据所述动态模型生成用例脚本为根据所述用例生成规则和所述动态模型生成用例脚本。
4.根据权利要求1-3任一项所述的自动生成用例脚本的方法,其特征在于,所述建模语言包括可扩展标记语言和统一建模语言。
5.根据权利要求2所述的自动生成用例脚本的方法,其特征在于,根据所述第一模型、 所述后台数据以及所述后台数据的分析规则生成与所述后台数据对应的动态模型具体为 根据所述后台数据以及所述后台数据的分析规则,对所述第一模型中的各个控件进行重新建模,得到随着后台数据的变化而变化的动态模型。
6.一种自动生成用例脚本的装置,其特征在于,包括建模单元,用于根据终端的图形用户界面和所述终端的后台数据对所述终端进行建模,得到与所述后台数据对应的动态模型;用例生成单元,用于根据所述动态模型生成用例脚本。
7.根据权利要求6所述的自动生成用例脚本的装置,其特征在于,所述建模单元包括 第一建模模块,用于用建模语言描述终端的图形用户界面所包含的菜单和/或按键,得到第一模型;控件抽象模块,用于对所述第一模型进行抽象,得到所述图像用户界面所包含的菜单和/或按键对应的控件;数据抽象模块,用于用建模语言描述所述后台数据,抽象所述后台数据对所述控件的影响,得到所述后台数据的分析规则;动态建模模块,用于根据所述第一模型、所述后台数据以及所述后台数据的分析规则生成与所述后台数据对应的动态模型。
8.根据权利要求7所述的自动生成用例脚本的装置,其特征在于,还包括规则获取单元,用于在对所述第一模型进行抽象,得到所述图像用户界面所包含的菜单和/或按键对应的控件时,得到所述控件对应的用例生成规则;所述用例生成单元还用于根据所述用例生成规则和所述动态模型生成用例脚本。
9.根据权利要求6-8任一项所述的自动生成用例脚本的装置,其特征在于,所述建模语言包括可扩展标记语言和统一建模语言。
全文摘要
本发明实施例公开了一种自动生成用例脚本的方法和装置,涉及终端测试领域,能够根据不同的后台数据生成与后台数据对应的用例脚本,适应了动态变化的UI操作,提高了自动生成用例脚本的技术的适用性。本发明的方法包括根据终端的图形用户界面和终端的后台数据对终端进行建模,得到与后台数据对应的动态模型;根据动态模型生成用例脚本。本发明实施例主要用于自动生成终端测试用例的过程中。
文档编号G06F11/36GK102253888SQ20111021660
公开日2011年11月23日 申请日期2011年7月29日 优先权日2011年7月29日
发明者郑章基 申请人:华为终端有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1