29、Buben与KLUZZER:软件测试与验证的利器

Buben与KLUZZER:软件测试与验证的利器

在软件开发过程中,软件测试与验证是确保软件质量和安全性的重要环节。本文将介绍两种工具——Buben和KLUZZER,它们分别在库抽象和白盒模糊测试方面有着独特的优势。

Buben:自动化库抽象工具

在一些程序(如batik、lusearch和jspider)中,异常是由于应用代码中缺少对空引用的检查导致的,而pmd报告的未捕获文件未找到异常则与软件包中实际存在的文件有关。通过对源代码的手动检查,发现这些在抽象中检测到的特定错误也存在于原始程序中。

实验评估结果表明,Buben是非常有用的。它可以生成实际大型程序的抽象,这些抽象适合使用JPF等工具进行验证和漏洞搜索。通过在用户配置中将更多的类和方法标记为库,可以进一步提高验证的可扩展性。

Buben的使用步骤

以jspider程序为例,使用Buben的步骤如下:
1. 定义配置 :用户需要定义Buben的配置,指定程序的主类(入口点)、命令行参数、代表库的Java包以及包含操作外部实体(文件、网络)方法的Java包。
2. 生成抽象 :执行Buben以生成调用图中每个库方法的抽象。例如,图5展示了 org.apache.log4j.Category 类中 warn 方法的原始代码和转换后的代码。原始代码中第5行 forcedLog 调用中嵌套的对 LogRecord.seqCount 字段的同步访问,在抽象版本中被包含在一个原

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值