摘要
本发明提供一种基于程序分析的JAVA模糊测试方法,包括:获取被测程序的二进制文件包;对所述二进制文件包进行AST解析;解析所述二进制文件包的语法树的各层节点,获得所有类、所有方法下的所有条件分支;通过所述各层节点调用的反向推导,解析所述二进制文件包各分支判断参数的调用链路关系;判断所述调用链路关系是单接口调用或跨接口调用。本发明提供的基于程序分析的JAVA模糊测试方法,通过程序分析可以获得的接口参数以及接口调用顺序的测试用例数据,可以大幅增加模糊测试较难探索到的业务逻辑,从而增加被测对象的覆盖率,基于覆盖率的提升,模糊测试探索到的路径增多,又可以促使更多的未逾期缺陷被发现。
技术关键词
模糊测试方法
接口测试数据
文件包
关系
程序
字段
测试用例数据
覆盖率
链路
消息
分支
节点
变量
参数
算法
动态
逻辑
对象
资源