[发明专利]一种基于转换测试的结构化模糊测试方法有效
申请号: | 202110371590.9 | 申请日: | 2021-04-07 |
公开(公告)号: | CN112905493B | 公开(公告)日: | 2023-07-18 |
发明(设计)人: | 庞成宾;茅兵 | 申请(专利权)人: | 南京大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 重庆市诺兴专利代理事务所(普通合伙) 50239 | 代理人: | 刘兴顺 |
地址: | 210023 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 转换 测试 结构 模糊 方法 | ||
1.一种基于转换测试的结构化模糊测试方法,其特征在于:包括如下步骤:
S1、对于需要测试的程序进行获取,将其输入测试系统内;
S2、根据BGP-4协议构建协议测试状态机,并附加一份协议文档说明,BGP-4协议具有六种状态;
S3、生成引导序列与特征序列;
S4、选择状态序列;
S5、利用模糊器生成测试用例,模糊器类型可分为本地模糊器与远程模糊器两种;
S6、启动需要测试程序,输入测试用例命令,进行模糊测试;
S7、生成测试用例执行路径,观察程序运行过程中,是否出现出错的情况;
S8、若出现程序错误,则对于测试用例进行记录,若并未出现错误,则继续执行该测试用例;
S9、当测试用例执行完毕,进行自动检查;
S10、当自动检查完毕后,若程序正常运行,并未出现错误,则说明程序通过测试,反之则并未通过测试;
S11、对于上述过程中,输入的测试用例进行保存导入数据库内,进行定量分析,其中数据库有三个表,分别为代码表、用例执行信息表与异常表,代码表主要用来存储程序的源代码;用例执行信息表主要用来存储用例执行的各种信息,包括测试用例、执行路径、执行结果;异常表主要存储导致程序出现异常时CUP各寄存器以及堆栈中的信息;
S12、对于出现的错误位置进行分析。
2.根据权利要求1所述的一种基于转换测试的结构化模糊测试方法,其特征在于,所述S3中,利用测试状态机生成引导序列与特征序列。
3.根据权利要求1所述的一种基于转换测试的结构化模糊测试方法,其特征在于,所述S6中,启动需要测试程序,输入测试用例命令,进行模糊测试,模糊测试分为基于变异的模糊测试和基于生成的模糊测试两类。
4.根据权利要求1所述的一种基于转换测试的结构化模糊测试方法,其特征在于,所述S7中,执行路径的创建方法为在程序的源代码中进行插桩,根据程序的执行结果来得到一个测试用例的执行路径,许多语句块只要语句块的第一条指令被执行,其后面的所有语句都会被执行,观察程序运行过程中,是否出现出错的情况。
5.根据权利要求1所述的一种基于转换测试的结构化模糊测试方法,其特征在于,所述S8中,若出现程序错误,则对于测试用例进行记录,同时对于程序出错位置进行记录,若并未出现错误,则继续执行该测试用例。
6.根据权利要求1所述的一种基于转换测试的结构化模糊测试方法,其特征在于,所述S9中,当测试用例执行完毕,进行自动检查,检查是否还具有其他的测试用例并未执行,若有则重新输入S6中,进行执行。
7.根据权利要求1所述的一种基于转换测试的结构化模糊测试方法,其特征在于,所述S12中,对于出现的错误位置进行分析,利用数据库强大的数据处理能力,分析错路径中每条语句的可疑度。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110371590.9/1.html,转载请声明来源钻瓜专利网。