当前位置: X-MOL 学术arXiv.cs.SE › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Boundary Value Exploration for Software Analysis
arXiv - CS - Software Engineering Pub Date : 2020-01-18 , DOI: arxiv-2001.06652
Felix Dobslaw and Francisco Gomes de Oliveira Neto and Robert Feldt

For software to be reliable and resilient, it is widely accepted that tests must be created and maintained alongside the software itself. One safeguard from vulnerabilities and failures in code is to ensure correct behavior on the boundaries between the input space sub-domains. So-called boundary value analysis (BVA) and boundary value testing (BVT) techniques aim to exercise those boundaries and increase test effectiveness. However, the concepts of BVA and BVT themselves are not generally well defined, and it is not clear how to identify relevant sub-domains, and thus the boundaries delineating them, given a specification. This has limited adoption and hindered automation. We clarify BVA and BVT and introduce Boundary Value Exploration (BVE) to describe techniques that support them by helping to detect and identify boundary inputs. Additionally, we propose two concrete BVE techniques based on information-theoretic distance functions: (i) an algorithm for boundary detection and (ii) the usage of software visualization to explore the behavior of the software under test and identify its boundary behavior. As an initial evaluation, we apply these techniques on a much used and well-tested date handling library. Our results reveal questionable behavior at boundaries highlighted by our techniques. In conclusion, we argue that the boundary value exploration that our techniques enable is a step towards automated boundary value analysis and testing, fostering their wider use and improving test effectiveness and efficiency.

中文翻译:

软件分析的边界值探索

为了使软件可靠且具有弹性,人们普遍认为必须与软件本身一起创建和维护测试。防止代码中的漏洞和故障的一种保护措施是确保输入空间子域之间的边界上的正确行为。所谓的边界值分析 (BVA) 和边界值测试 (BVT) 技术旨在锻炼这些边界并提高测试有效性。但是,BVA 和 BVT 本身的概念通常没有明确定义,并且在给定规范的情况下,不清楚如何识别相关子域,从而界定它们的边界。这限制了采用并阻碍了自动化。我们澄清了 BVA 和 BVT,并引入了边界值探索 (BVE) 来描述通过帮助检测和识别边界输入来支持它们的技术。此外,我们提出了两种基于信息论距离函数的具体 BVE 技术:(i)边界检测算法和(ii)使用软件可视化来探索被测软件的行为并识别其边界行为。作为初步评估,我们将这些技术应用于一个经常使用且经过良好测试的日期处理库。我们的结果揭示了我们的技术突出显示的边界处的可疑行为。总之,我们认为我们的技术实现的边界值探索是朝着自动化边界值分析和测试迈出的一步,促进了它们的更广泛使用并提高了测试有效性和效率。(i) 边界检测算法和 (ii) 使用软件可视化来探索被测软件的行为并识别其边界行为。作为初步评估,我们将这些技术应用于一个经常使用且经过良好测试的日期处理库。我们的结果揭示了我们的技术突出显示的边界处的可疑行为。总之,我们认为我们的技术实现的边界值探索是朝着自动化边界值分析和测试迈出的一步,促进了它们的更广泛使用并提高了测试有效性和效率。(i) 边界检测算法和 (ii) 使用软件可视化来探索被测软件的行为并识别其边界行为。作为初步评估,我们将这些技术应用于一个经常使用且经过充分测试的日期处理库。我们的结果揭示了我们的技术突出显示的边界处的可疑行为。总之,我们认为我们的技术实现的边界值探索是朝着自动化边界值分析和测试迈出的一步,促进了它们的更广泛使用并提高了测试有效性和效率。我们的结果揭示了我们的技术突出显示的边界处的可疑行为。总之,我们认为我们的技术实现的边界值探索是朝着自动化边界值分析和测试迈出的一步,促进了它们的更广泛使用并提高了测试有效性和效率。我们的结果揭示了我们的技术突出显示的边界处的可疑行为。总之,我们认为我们的技术实现的边界值探索是朝着自动化边界值分析和测试迈出的一步,促进了它们的更广泛使用并提高了测试有效性和效率。
更新日期:2020-10-13
down
wechat
bug