arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 2008.00421cs.LOcs.PLcs.SE
收藏

CLP中的Concolic测试

Concolic Testing in CLP

Fred Mesnard, Etienne Payet, German Vidal

摘要:

Concolic测试是一种基于具体执行和符号执行相结合的流行软件验证技术。它的主要重点是发现bug和生成测试用例,目的是最大限度地提高代码覆盖率。以前的逻辑编程中的concolic测试方法是不健全的,因为它只处理正约束(通过替换),但不能表示负约束。在本文中,我们提出了一个新的框架concolic测试的CLP程序,概括了以前的技术。在CLP设置中,可以以自然的方式表示正约束和负约束,从而产生一种合理且(潜在地)更有效的技术。定义验证和测试技术CLP程序越来越相关,因为这个框架正在成为流行的中间表示,以分析在其他编程范式编写的程序。

英文摘要:

Concolic testing is a popular software verification technique based on a combination of concrete and symbolic execution. Its main focus is finding bugs and generating test cases with the aim of maximizing code coverage. A previous approach to concolic testing in logic programming was not sound because it only dealt with positive constraints (by means of substitutions) but could not represent negative constraints. In this paper, we present a novel framework for concolic testing of CLP programs that generalizes the previous technique. In the CLP setting, one can represent both positive and negative constraints in a natural way, thus giving rise to a sound and (potentially) more efficient technique. Defining verification and testing techniques for CLP programs is increasingly relevant since this framework is becoming popular as an intermediate representation to analyze programs written in other programming paradigms.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑