[发明专利]一种基于NLP的系统测试用例自动生成方法有效
申请号: | 201711256576.4 | 申请日: | 2017-12-03 |
公开(公告)号: | CN107832229B | 公开(公告)日: | 2021-06-11 |
发明(设计)人: | 孟浩 | 申请(专利权)人: | 中国直升机设计研究所 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F40/30;G06F40/289 |
代理公司: | 北京航信高科知识产权代理事务所(普通合伙) 11526 | 代理人: | 高原 |
地址: | 333001 *** | 国省代码: | 江西;36 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 nlp 系统 测试 自动 生成 方法 | ||
本发明涉及软件测试领域,特别涉及一种基于NLP的系统测试用例自动生成方法,包括如下步骤:对软件需求文档进行预处理;利用NLP技术对进行预处理后的信息进行分词与语义分析;构建包含特定关键词的测试用例模板,对上述分析结果进行关键词模板匹配;根据匹配得到的关键字逻辑序列和测试用例模板,通过关键词替换,自动生成系统测试用例。本发明的基于NLP的系统测试用例自动生成方法,能够自动处理软件需求文档并得到具有语义逻辑的软件需求,技术门槛较低;能够根据软件项目知识积累,自动生成特定模板的系统测试用例,提高了测试用例设计的规范性;能够根据软件需求文档,自动生成系统测试用例,提高了软件测试效率,降低了测试人员工作强度。
技术领域
本发明涉及软件测试领域,特别涉及一种基于NLP的系统测试用例自动生成方法。
背景技术
软件测试是软件开发周期中不可或缺的环节,通常需要占用软件开发过程中一半以上的时间成本和费用成本。根据传统的软件开发V模型,软件测试活动可以分为单元测试、集成测试、系统测试和验收测试等,每个测试活动都需要完成大量的测试用例设计和编写工作。实现测试用例自动生成能够有效提高测试工作效率。
常见的测试用例自动生成技术有符号执行,基于模型生成,基于形式化方法等。符号执行是一种程序分析方法,主要用于单元测试用例自动生成。符号执行通过分析程序源代码得到特定代码域的输入域和相应路径约束,通过某种搜索算法得到满足相应覆盖率要求的测试路径,即单元测试用例。基于模型生成的方法,适用于使用UML等方法进行建模的软件的测试,通过使用图搜索方法并定义相应的测试覆盖准则,对模型进行抽象和遍历,提取满足覆盖率要求的测试用例。基于形式化方法的用例自动生成技术,是利用形式化语言对系统行为进行精确描述从而得到软件系统规格说明,对析取范式形式表示的线性谓词进行变换,并利用相关域测试策略自动生成测试用例。
系统测试用例自动生成,主要采用基于模型和基于形式化方法,但都要求对软件需求进行精确建模或形式化描述,所需的技术门槛较高,在一般的软件开发中应用成本较高。目前仍存在大量的软件开发活动是基于文档形式进行的,软件需求仍以非结构化的文本信息为主,没有实现精确的模型或形式化描述。对于这一类软件的测试活动,仍以手动设计和编写测试用例为主,测试人员工作量较大且效率较低。
发明内容
本发明的目的是提供了一种基于NLP的系统测试用例自动生成方法,以解决现有测试用例生成方法存在的至少一个问题。
本发明的技术方案是:
一种基于NLP的系统测试用例自动生成方法,包括如下步骤:
步骤一、对软件需求文档进行预处理;
步骤二、利用NLP技术对步骤一中进行预处理后的信息进行分词与语义分析;
步骤三、构建包含特定关键词的测试用例模板,对步骤二中得到的分析结果进行关键词模板匹配;
步骤四、根据匹配得到的关键字逻辑序列和测试用例模板,通过关键词替换,自动生成系统测试用例。
可选的,在所述步骤一中,预处理包括将文档转换为纯文本,保留章节标题和段落信息,并提取特定章节。
可选的,在所述步骤二中,进行分词与语义分析包括:
步骤2.1、对经过预处理后的文本,以段落为基本模块提取文字序列;
步骤2.2、对单句话进行分词,得到词组序列;
步骤2.3、对词组序列进行浅层语义分析,标注语义角色,得到关键词逻辑序列。
可选的,在所述步骤三中,进行关键词模板匹配包括:
步骤3.1、提取词组逻辑序列中的主语词组;
步骤3.2、在项目测试用例模板库中进行主语关键词匹配;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国直升机设计研究所,未经中国直升机设计研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711256576.4/2.html,转载请声明来源钻瓜专利网。