一种人工智能的自动化软件测试系统及方法[发明专利]

(19)中华人民共和国国家知识产权局
(12)发明专利申请
(10)申请公布号 (43)申请公布日 (21)申请号 201910627860.0
(22)申请日 2019.07.12
(71)申请人 北京精密机电控制设备研究所
地址 100076 北京市丰台区南大红门路1号
申请人 中国运载火箭技术研究院
(72)发明人 黄葵 刘海山 丁怀龙 樊茜 
焦震 杨帆 张震 栾婷 张成浩 
(51)Int.Cl.
G06F  11/36(2006.01)
(54)发明名称一种人工智能的自动化软件测试系统及方法(57)摘要本发明公开了一种基于人工智能算法构建的自动化软件测试系统与方法,该系统可自主学习测试规范要求和往期的测试数据与结果,总结提炼测试规范要求模型;该系统可自主学习编程语言设计内容,生成编程语言模型;该系统可结合不同的软件平台、硬件平台,对编程语言模型进行自适应,生成目标系统模型,用以指导在不同的软硬件平台开展自动化软件测试。采用本发明的测试系统,可以提供一种自主学习测试要求和编程规范、自主适应不同软硬件平台自动化生成测试用例、自动化开展软件测试、自动化提供
软件测试报告的系统及方法。权利要求书4页  说明书15页  附图4页CN 110347603 A 2019.10.18
C N  110347603
A
1.一种人工智能的自动化软件测试系统,其特征在于,包括基于人工智能算法构建的测试要求规范模型、编程语言模型、目标系统模型、测试用例自动生成模型;软件自动测试与分析过程模型;
所述测试要求规范模型的构建步骤如下:
(1-1)收集往期的测试数据;
(1-2)获取测试要求规范说明书;
(1-3)基于测试数据构建人工智能数据分析模型;
(1-4)基于测试要求规范说明书构建人工智能数据分析模型;
(1-5)语义模型融合;
(1-6)模型优化适配;
(1-7)模型自更新;
所述编程语言模型的构建步骤如下:
(2-1)确定需要建模的编程语言范围;
(2-2)收集每种编程语言的编程规范和相关的编程实例;
(2-3)按照编程规范的条目进行逐条解析,获得编程规范的语义集;
(2-4)语义集的完善与清洗;
(2-5)编程语义扩展;
(2-6)语义集关联代码语义句模型表征;
(2-7)语义集关联代码语义句模型表征更新与完善;
(2-8)语义集的自学习完善;
所述目标系统模型的构建步骤如下:
(3-1)基于目标系统使用说明书构建语义模型;
(3-2)匹配编程语言模型;
所述测试用例自动生成模型的构建步骤如下:
(4-1)测试需求解析;
(4-2)测试代码输入清洗与归类;
(4-3)编程语言模型指导测试代码提炼获得待测试语义集和代码段;
(4-4)目标系统模型通过事先学习所得,该模型可知道软件测试用例自动化生成模型按照特定软件和硬件平台的要求生产符合要求的测试用例;
(4-5)测试用例自动生成;
所述软件自动测试与分析过程模型如下:
(5-1)对每一个测试用例的测试结果反馈进行记录,对于不通过的测试用例进行分析;
(5-2)分析的结果结合编程语言模型中的关键词记录出问题的原因,同时根据关键词对应的表征意义给出不通过的原因说明,给出风险说明和报告;
(5-3)基于编程语言模型,可对风险代码段给出相似代码测试通过的风险消除解决方案;
(5-4)对于通过的测试用例可以进一步结合编程语言模型分析编程规范是否达标,给出编程规范分析报告。
2.根据权利要求1所述的软件测试系统,其特征在于,所述步骤(1-1)中的测试数据包
括但不限于测试代码、测试命令、测试说明、测试脚本、测试用例。
3.根据权利要求2所述的软件测试系统,其特征在于,所述步骤(1-3)中分析模型过程包括数据清洗、数据归类、构建语义集、数据语义关联,最后输出基于测试数据分析所得的测试要求规范语义分析模型,具体如下:
a)数据清洗:对获得的往期测试数据进行清洗,去除无效数据;
b)数据归类:对输入的测试数据进行语言划分,对文本、字符表达式、字符代码、数字表达式进行归类划分,分别构建知识数据库;
c)根据规格构建语义集:对文本的知识数据库构建文本词义语义集;对字符表达式构建字符表达式语义集;对字符代码构建代码语义集;对数字表达式构建数字表达式语义集;
d)清洗语义集:对划分的语义集进行清洗,去除重复和无意义的语义;同时对语义进行组合,去除组合语义中的重复组合语义、无意义的组合语义;
e)语义断句构建:对语义集中的各个语义进行断句构建,对获得重复断句进行归类处理,对无意义的语句进行清除处理,对剩下有效的断句构建形成语义断句数据库;
f)语义集:获得的测试目的的语义断句作为第一语义集存入数据库;获得的测试要求的语义断句作为第二语义集存入数据库;获得的测试原理的语义断句作为第三语义集存入数据库;获得的待测试代码的语义断句作为第四语义集存入数据库;获得的测试用例的语义断句作为第五语义集存入数据库;其他更多的测试条目的语义断句可以进行扩展存入后续语义集;
g)语义关联链:将测试目的、测试要求、测试原理、待测试代码、测试用例的语义集数据库进行关联,
获得基于往期测试数据形成的从测试目的、测试要求、测试原理、待测试代码、测试用例形成的测试系统关联语义链库。
4.根据权利要求3所述的软件测试系统,其特征在于,所述无效数据包括空文件、未测试数据、无意义字符数据文件。
5.根据权利要求2所述的软件测试系统,其特征在于,所述步骤(1-4)中分析模型过程包括但不限于自然语言处理、数据清洗、语义生成等过程,最后输出基于测试要求规范说明书分析所得的测试要求规范语义分析模型,具体如下:
a)通过人工智能的自然语言处理算法进行解析与整理测试要求规范说明书,以位于第一级的测试规范要求关键字进行切分形成第一语义集;
b)以位于第二级的测试规范要求关键字进行切分形成第二语义集,第二语义集属于在第一语义集基础上进行更深入的语义划分;
c)基于第二语义集对测试要求规范进一步梳理形成三级关键词,对每一个第二语义集的都往下一级检测关键词,以位于第三级的每个关键词都作为一个语义,形成第三级语义集;
d)逐级往下梳理,展开每一个语义集迭代往下搜索,直至测试要求规范结束或者正文内容为止。
6.根据权利要求1所述的软件测试系统,其特征在于,所述步骤(2-1)中编程语言可以是C、C++、python、R、汇编、VHDL。
7.根据权利要求6所述的软件测试系统,其特征在于,所述步骤(2-3)中获得编程规范的语义集的过程具体如下:
a)以位于第一级的编程规范要求关键字进行切分形成第一语义集;
b)以位于第二级的编程规范要求关键字进行切分形成第二语义集,第二语义集属于在第一语义集基础上进行更深入的语义划分;
c)基于第二语义集对编程规范进一步梳理形成三级关键词,对每一个第二语义集的都往下一级检测关键词,以位于第三级的每个关键词都作为一个语义,形成第三级语义集;
d)逐级往下梳理,展开每一个语义集迭代往下搜索,直至编程规范结束或者正文内容为止。
8.根据权利要求6所述的软件测试系统,其特征在于,所述步骤(2-6)包括步骤如下:
a)获得关键词和表征意义;
b)语义句构建。
9.根据权利要求1所述的软件测试系统,其特征在于,所述步骤(3-1)的具体过程如下:
a)解析与整理目标系统使用说明书,以位于第一级的使用关键字进行切分形成第一语义集;
b)以位于第二级的使用说明关键字进行切分形成第二语义集,第二语义集属于在第一语义集基础上进行更深入的语义划分;
c)基于第二语义集对使用说明要求规范进一步梳理形成三级关键词,对每一个第二语义集的都往下一级检测关键词,以位于第三级的每个关键词都作为一个语义,形成第三级语义集;
d)逐级往下梳理,展开每一个语义集迭代往下搜索,直至说明书要求规范结束或者正文内容为止,从而获得使用说明书的语义集;
e)语义模型精炼。
10.根据权利要求9所述的软件测试系统,其特征在于,所述步骤(3-2)的具体过程如下:
a)解析目标平台语义集A和编程语言模型B,对各级语义词进行正向/逆向最大匹配,获得匹配的语义对;
b)根据目标平台语义集A(i)中对编程规范的反馈,对匹配上的编程语言模型词条B(j)的编程规范内容先进行二次验证;
c)遍历所有的匹配语义对,对所有匹配上的编程语言模型的词条对进行更新。
11.根据权利要求1所述的软件测试系统,其特征在于,所述步骤(4-5)具体过程如下:
a)测试用例自动生成模块根据测试需求的解析获得的结果制定测试步骤;
b)对于每个测试步骤需要测试的内容,通过对编程语言模型指导的测试代码语义化分析结果进行检索,索引到待测试代码段;
c)根据上一步获得的待测试代码的每个关键词,通过目标系统模型来获取每个关键词的编程规范,然后结合特定软件和硬件平台的测试用例要求对各条编程规范细则生成具体的测试用例。
12.根据权利要求1所述的软件测试系统,其特征在于,所述软件自动测试与分析过程模型中每一个测试用例可以并行执行。
13.采用权利要求1所述的软件测试系统进行自动化软件测试的方法,其特征在于,所述步骤如下:
(1)输入测试要求;
(2)测试要求语义提取与分析;
(3)输入待测试软件代码;
(4)软件代码清洗与归类;
(5)软件代码语义提取与分析;
(6)自动生成测试用例;
(7)自动软件测试,生成测试结果;
(8)软件测试人员复验测试报告;
(9)程序开发人员根据测试报告进行修改完善软件代码;
(10)反馈修正软件测试系统模型。

本文发布于:2024-09-21 04:20:33,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/405098.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:语义   测试   模型   要求   规范   进行   系统   构建
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议