一种生成测试用例脚本的方法和装置与流程

文档序号:14911028发布日期:2018-07-10 23:25阅读:326来源:国知局

本发明涉及通信和计算机领域,特别涉及一种生成测试用例脚本的方法和装置。



背景技术:

自动化测试因为提高了测试效率已经发展为越来越重要的测试手段。但是对测试人员要求一定的代码开发能力,泛化能力较差,测试用例发送变化后需要重新开发,为了减轻代码开发的负担,需要一种代码自动生成的方法和系统。现有技术通过制定用例编写规范,包括关键字定义、模板定义来达到上诉目的,但同时也要求测试人员需要严格按照设计规范来编写测试用例,通过输入一定格式的测试用例来生成测试脚本。例如,通过让测试用例的操作命令以关键字与代码映射表中关键字命名,用例需要按照关键字来设计编写。或者,用户要按照一定格式输入测试用例文件,例如,测试用例文件中至少包含模板ID、消息码。现有技术对用例设计和描述有严格的要求,需要掌握用例设计规范,对测试人员提出了新的要求,同时因为用例设计要求的限制,使用不够灵活,不符合人类自然语言的特性,还因为应用场景比较简单,无法应用于复杂多变的领域,特别是有较复杂的逻辑业务和场景,需要不同的输入参数,灵活性要求更高。

因此,针对现有技术不符合测试人员自然语言习惯、开发自动化测试用例过程中查库的接口多,自动化测试开发效率低下,易用性差的技术问题目前没有解决方案。



技术实现要素:

本发明提供一种生成测试用例脚本的方法和装置以至少因此,针对现有技术不符合测试人员自然语言习惯、开发自动化测试用例过程中查库的接口多,自动化测试开发效率低下,易用性差的技术问题。

本发明一方面提供了一种生成测试用例脚本的方法,包括:获取用于调用单元功能脚本的调用信息,其中,该单元功能脚本包括用于执行单元功能测试的脚本代码以及脚本注释;根据该调用信息对应的概率最大的脚本注释选取单元功能脚本,将选取的该单元功能脚本拼装成测试用例脚本;采用该测试用例脚本对待测应用程序进行测试。

进一步地,获取用于调用单元功能脚本的调用信息包括:获取自然语言的文本串,对该文本串进行分词处理得到多个分词。

进一步地,该脚本注释为多个分词,其中该分词与该执行单元功能测试的脚本代码的单元功能相对应。

进一步地,根据该调用信息对应的概率最大的脚本注释选取单元功能脚本包括:获取一个单元功能脚本的脚本注释,将该调用信息中的多个分词与该脚本注释的多个分词组成分词集合;按照该调用信息的各个分词在该分词集合中出现的频率将该调用信息映射为调用词频向量,按照该脚本注释的各个分词在该分词集合中出现的频率将该脚本注释映射为注释词频向量;根据该调用词频向量和该注释词频向量计算该单元功能脚本的该调用词频向量与该注释词频向量之间的相似度值,根据计算出的该相似度值选取单元功能脚本。

进一步地,根据该调用词频向量和该注释词频向量计算该单元功能脚本的该调用词频向量与该注释词频向量之间的相似度值包括:根据余弦定理计算该调用词频向量和该注释词频向量的余弦值,并根据该余弦值生成该相似度值。

进一步地,根据计算出的该相似度值选取单元功能脚本包括:选取最大相似度值对应的单元功能脚本,其中,该最大相似度值大于预先设定的阈值。

本发明另一方面还提供了一种生成测试用例脚本的装置,包括:获取模块,用于获取用于调用单元功能脚本的调用信息,其中,该单元功能脚本包括用于执行单元功能测试的脚本代码以及脚本注释;拼装模块,用于根据该调用信息对应的概率最大的脚本注释选取单元功能脚本,将选取的该单元功能脚本拼装成测试用例脚本;测试模块,用于采用该测试用例脚本对待测应用程序进行测试。

进一步地,该获取模块包括:接收单元,用于获取自然语言的文本串;分词单元,用于对该文本串进行分词处理得到多个分词。

进一步地,该拼装模块模块,包括:提取单元,用于获取一个单元功能脚本的脚本注释,将该调用信息中的多个分词与该脚本注释的多个分词组成分词集合;计算单元,用于按照该调用信息的各个分词在该分词集合中出现的频率将该调用信息映射为调用词频向量,按照该脚本注释的各个分词在该分词集合中出现的频率将该脚本注释映射为注释词频向量,根据该调用词频向量和该注释词频向量计算该单元功能脚本的该调用词频向量与该注释词频向量之间的相似度值,选择单元,根据计算出的该相似度值选取单元功能脚本。

本发明涉及一种生成测试用例脚本的方法,通过对测试人员输入文本串的分词处理后与单元功能脚本库中相对应单元功能脚本的匹配达到对测试人员输入的自然语言识别的目的,降低了测试人员编码能力的要求,解决了自动化测试领域现有技术中不符合测试人员自然语言习惯、对测试人员编程能力要求高的技术问题。

附图说明

图1是根据本发明实施例的一种生成测试用例脚本的方法的逻辑流程图;

图2是本发明实施例的根据该调用信息对应的概率最大的脚本注释选取单元功能脚本的逻辑流程图;

图3是本发明实施例的一种生成测试用例脚本的装置;

具体实施方式

下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语″第一″、″第二″等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。

本发明实施例提供了一种生成测试用例脚本的方法,图1是根据本发明实施例的一种生成测试用例脚本的方法的逻辑流程图,如图1所示,本方法包括三个步骤,

S101获取用于调用单元功能脚本的调用信息,其中,该单元功能脚本包括用于执行单元功能测试的脚本代码以及脚本注释;

S102根据该调用信息对应的概率最大的脚本注释选取单元功能脚本,将选取的该单元功能脚本拼装成测试用例脚本;

S103采用该测试用例脚本对待测应用程序进行测试。

进一步地,获取用于调用单元功能脚本的调用信息包括:获取自然语言的文本串,对该文本串进行分词处理得到多个分词。

进一步地,该脚本注释为多个分词,其中该分词与该执行单元功能测试的脚本代码的单元功能相对应。

本发明将获取的测试人员输入的自然语言的文本串进行分词处理,得到测试人员输入的调用信息,然后利用该调用信息从数据库中搜索与调用信息对应的概率最大的脚本注释,利用脚本注释与单元功能脚本的一一对应关系提取单元功能脚本,将提取的一系列单元功能脚本拼装为测试用例脚本进行测试,本发明通过自然语言调用单元功能脚本,解决了现有技术中调用接口非自然语言的技术问题,测试人员不再需要具备相当的程序编辑能力就能根据测试对象的实际情况编写自动化测试用例,降低了自动化测试的使用门槛,提高了测试效率。

图2是本发明实施例的根据该调用信息对应的概率最大的脚本注释选取单元功能脚本的逻辑流程图,如图2所示,选取步骤包括3个步骤:

S201:获取一个单元功能脚本的脚本注释,将该调用信息中的多个分词与该脚本注释的多个分词组成分词集合;

S202:按照该调用信息的各个分词在该分词集合中出现的频率将该调用信息映射为调用词频向量,按照该脚本注释的各个分词在该分词集合中出现的频率将该脚本注释映射为注释词频向量;

S203:根据该调用词频向量和该注释词频向量计算该单元功能脚本的该调用词频向量与该注释词频向量之间的相似度值,根据计算出的该相似度值选取单元功能脚本。

本发明主要通过对调用词频向量和注释词频向量计算相识度值,通过相识度值的大小来选取对应的单元功能脚本。相识度值可以是根据余弦定理计算该调用词频向量和该注释词频向量的余弦值,也可以根据正弦定理计算的两者的正弦值得到,还可以通过计算正切值或者余切值得到。

图3是本发明实施例的一种生成测试用例脚本的装置,如图3该,包括获取模块32,用于获取用于调用单元功能脚本的调用信息,其中,该单元功能脚本包括用于执行单元功能测试的脚本代码以及脚本注释;拼装模块34,用于根据该调用信息对应的概率最大的脚本注释选取单元功能脚本,将选取的该单元功能脚本拼装成测试用例脚本;测试模块33,用于采用该测试用例脚本对待测应用程序进行测试。

进一步地,该获取模块包括:接收单元,用于获取自然语言的文本串;分词单元,用于对该文本串进行分词处理得到多个分词。

进一步地,该拼装模块包括:提取单元,用于获取一个单元功能脚本的脚本注释,将该调用信息中的多个分词与该脚本注释的多个分词组成分词集合;计算单元,用于按照该调用信息的各个分词在该分词集合中出现的频率将该调用信息映射为调用词频向量,按照该脚本注释的各个分词在该分词集合中出现的频率将该脚本注释映射为注释词频向量,根据该调用词频向量和该注释词频向量计算该单元功能脚本的该调用词频向量与该注释词频向量之间的相似度值,选择单元,根据计算出的该相似度值选取单元功能脚本。

作为本发明的优选实施例,以下对一种生成测试用例脚本的装置做进一步阐释。测试人员输入测试用例中的一条测试步骤:创建一条DHCP wan连接。

数据库中存放有单元功能脚本的脚本注释依次为:创建DS-Lite隧道;LAN1端口播放组播流;创建DHCP wan连接;创建PPPoE wan连接;

设定相似度阈值为:0.8

S401:根据分词词库将用户输入信息分词结果为:创建/一条/DHCP/Wan/连接;用X标示;

S402数据库中取出第一条单元功能脚本脚本注释:创建/DS-Lite/隧道,用Y表示;

S403:x和y的词汇组合结果为(以z表示):{创建/一条/DHCP/DS-Lite/Wan/ 连接/隧道};

S404:计算z中的词汇在x中出现的频率,如果没有出现以0表示,结果为:

创建:

将X映射为多维向量表示为(以α表示):

S405:计算z中的词汇在y中出现的频率,如果没有出现以0表示,结果为:一条=0;DHCP=0;Wan=0;连接=0;

将Y映射为多维向量表示为(以β表示):

S406:计算两个向量α、β的余弦值为(以γ表示):0.258,该数值就是相似度。

S407:按照上述方法遍历数据库中所有的条目,计算余弦值,结果分别为:0.258、 0、0.894、0.67。

S408:按照相似度结果返回相似度为0.894所对应的脚本代码,即为″创建DHCP wan连接″对应的脚本代码。

本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

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

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