[发明专利]测试用例生成方法和测试用例生成装置有效
申请号: | 201710347575.4 | 申请日: | 2017-05-17 |
公开(公告)号: | CN108959056B | 公开(公告)日: | 2021-11-16 |
发明(设计)人: | 钟朝亮;张沈斌;皮冰锋;孙俊 | 申请(专利权)人: | 富士通株式会社 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 陈炜;康建峰 |
地址: | 日本神*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 测试 生成 方法 装置 | ||
本发明公开了一种测试用例生成方法和测试用例生成装置。根据本发明的一个具体实例的测试用例生成方法包括:针对用不同编程语言编写的源代码,分别构建相应源代码中的函数之间的关系图;检测所述用不同编程语言编写的源代码之间的连接信息;根据所述连接信息将所述关系图连接以生成连接图;遍历所述连接图以生成组合路径约束表达式;符号执行所述源代码中的每一个函数,以根据所述组合路径约束表达式生成具体组合路径约束;以及对具体组合路径约束进行求解,以生成测试用例。
技术领域
本发明涉及一种测试用例生成方法和测试用例生成装置。具体地,涉及一种通过构建组合路径约束来生成测试用例的方法和装置。
背景技术
符号执行是一种能够通过分析源代码来生成测试用例的方法,它通常用于单元测试以及生成单元测试用例。
然而,随着软件开发技术的进步,传统的面向单元测试的符号执行不再适用。这是因为越来越多的软件中包含了多个组件,并且这些组件可以用不同的编程语言来实现,例如Java和JavaScript被同时用于开发Cordova Android的不同组件。
另外,不同于传统软件,在这些软件的源代码中的单个函数(function)或方法(method)中并不包含太多的逻辑。相反,这些逻辑遍布于各个源文件的各个函数之中。因此,传统的测试用例生成方法不能很好地满足需要。
发明内容
在下文中给出了关于本发明的简要概述,以便提供关于本发明的某些方面的基本理解。应当理解,该概述并不是关于本发明的穷举性概述,它并非意图确定本发明的关键或重要部分,也不是意图限定本发明的范围。其目的仅仅是以简化的形式给出某些概念,以此作为后文的具体实施方式部分的铺垫。
鉴于以上提出的问题,本发明提出了一种新的生成集成测试用例的方法和装置。根据本发明的测试用例生成方法及其测试用例生成装置,相较于传统的单元测试用例,能够确保集成测试用例的正确性更为容易。
根据本发明的一个方面,提供了一种测试用例生成方法,包括:针对用不同编程语言编写的源代码,分别构建相应源代码中的函数之间的关系图;检测所述用不同编程语言编写的源代码之间的连接信息;根据所述连接信息将所述关系图连接以生成连接图;遍历所述连接图以生成组合路径约束表达式;符号执行所述源代码中的每一个函数,以根据所述组合路径约束表达式生成具体组合路径约束;以及对具体组合路径约束进行求解,以生成测试用例。
根据本发明的另一个方面,提供了一种测试用例生成装置,包括:关系图构建单元,被配置为针对用不同编程语言编写的源代码,分别构建相应源代码中的函数之间的关系图;连接信息检测单元,被配置为检测所述用不同编程语言编写的源代码之间的连接信息;连接单元,被配置为根据所述连接信息将所述关系图连接以生成连接图;遍历单元,被配置为遍历所述连接图以生成组合路径约束表达式;符号执行单元,被配置为符号执行所述源代码中的每一个函数,以根据所述组合路径约束表达式生成具体组合路径约束;以及求解单元,被配置为对具体组合路径约束进行求解,以生成测试用例。
根据本发明的再一方面,还提供了一种存储介质。所述存储介质包括机器可读的程序代码,当在信息处理系统上执行所述程序代码时,所述程序代码使得所述信息处理系统执行根据本发明的上述方法。
根据本发明的再一方面,还提供了一种程序。所述程序包括机器可执行的指令,当在信息处理系统上执行所述指令时,所述指令使得所述信息处理系统执行根据本发明的上述方法。
通过以下结合附图对本发明的最佳实施例的详细说明,本发明的这些以及其他优点将更加明显。
附图说明
参照附图来阅读本发明的各实施方式,将更容易理解本发明的其它特征和优点,在此描述的附图只是为了对本发明的实施方式进行示意性说明的目的,而非全部可能的实施,并且不旨在限制本发明的范围。在附图中:
图1示出根据本发明的一个具体实例的测试用例生成方法的流程图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于富士通株式会社,未经富士通株式会社许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710347575.4/2.html,转载请声明来源钻瓜专利网。