[发明专利]基于反馈的SMT求解器性能测试用例约简方法在审
申请号: | 202110767566.7 | 申请日: | 2021-07-07 |
公开(公告)号: | CN113377675A | 公开(公告)日: | 2021-09-10 |
发明(设计)人: | 任志磊;王笑爽;范晓飞;周奕;江贺 | 申请(专利权)人: | 大连理工大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 大连理工大学专利中心 21200 | 代理人: | 温福雪 |
地址: | 116024 辽*** | 国省代码: | 辽宁;21 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 反馈 smt 求解 性能 测试 用例约简 方法 | ||
本发明属于软件测试领域,涉及一种用于约简触发SMT求解器性能故障的测试用例的技术,具体为一种基于反馈的SMT求解器性能测试用例约简方法。首先验证输入的测试用例是否可以触发SMT求解器性能故障,然后使用二分搜索法通过比较代码覆盖率相似度对触发SMT求解器性能缺陷的测试用例断言数目进行约简,最后通过顺序替换断言中节点的方法简化测试用例中每一个断言的公式嵌套深度,从而生成最小化的测试用例。本发明能够对触发SMT求解器性能故障的测试用例进行有效约简,使用尽可能简单的测试用例充分满足给定的测试目标,从而提高测试效率、降低测试成本,可以帮助开发者更好地找到SMT求解器相关的性能故障,提高求解器的质量。
技术领域
本发明属于软件测试领域,涉及一种用于约简触发SMT求解器性能故障的测试用例的技术,具体为一种基于反馈的SMT求解器性能测试用例约简方法。
背景技术
SMT(The Satisfiability Modulo Theories)求解器是一个验证一阶逻辑公式是否可以被满足的工具,它在形式化方法、程序语言、软件工程以及计算机安全等领域得到了广泛应用。然而,SMT求解器作为一种软件,不可避免地会存在性能故障,如求解超时,这使得其他依赖SMT求解器的工具难以输出可靠的结果。因此,对于触发SMT求解器性能故障的测试用例,必须开发有效的约简方法,以帮助开发者更好地分析并定位SMT求解器相关的性能故障,提高SMT求解器的性能。
虽然现有的一些论文和发明专利可被用于测试用例的约简,但在约简SMT求解器性能测试用例方面仍存在很多不足。例如,一种基于错误检测能力的测试用例集约简方法(专利申请号:CN202010146247.X),此专利首先构建原始用例集与对应的测试需求集的关系矩阵;然后根据每个测试用例子集元素的错误检测能力构建矩阵并计算测试用例子集的错误检测能力;最后使用必不可少策略和错误检测能力的贪心策略对测试用例进行约简。但是此方法并未针对SMT测试用例。2020Mansur等人提出了STORM工具,该工具通过拆解、组合的方法生成SMT求解器测试用例并对触发bug的测试用例进行了约简,但STORM并不能很好地约简性能故障测试用例。
由于触发SMT超时问题可能需要很长时间,使用现有的方法对触发性能故障的测试用例进行约简耗费时间很长。因此,提出在短时间内对触发SMT求解器性能故障的测试用例进行约简的方法是十分必要的。
发明内容
为解决上述问题,本发明提供了一种基于反馈的SMT求解器性能测试用例约简方法,可以在较短时间内对触发SMT求解器性能故障的测试用例进行约简,帮助开发者更快地找到SMT求解器的性能故障,提高SMT求解器的质量。本发明方法首先验证输入的测试用例是否可以触发SMT求解器性能故障,然后使用二分搜索法通过比较代码覆盖率相似度对触发SMT求解器性能缺陷的测试用例断言数目进行约简,最后通过顺序替换断言中节点的方法简化测试用例中每一个断言的公式嵌套深度,从而生成最小化的测试用例。代码覆盖是软件测试中的一种度量,描述程序中源代码被测试的比例和程度,所得比例称为代码覆盖率。
本发明可用于SMT求解器,如Z3,CVC4等;亦可根据特定求解器的特性,对本发明的相关步骤进行适配,从而约简该求解器的测试用例。
本发明的技术方案:
一种基于反馈的SMT求解器性能测试用例约简方法,具体步骤如下:
步骤1:验证输入的测试用例是否可以触发性能故障。
对于待约简的测试用例,首先对测试用例进行手动验证;将测试用例输入到SMT求解器,检测其是否可以触发性能故障;如果该测试用例可以触发性能缺陷,对该测试用例进行约简;否则输出该测试用例不符合约简条件的信息。
步骤2:将测试用例解析为Instance类实例。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大连理工大学,未经大连理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110767566.7/2.html,转载请声明来源钻瓜专利网。