论文标题
自动化黑框边界值检测
Automated Black-Box Boundary Value Detection
论文作者
论文摘要
软件系统的输入域通常可以分为相似的子域。为了确保高质量,必须在这些子域之间的边界上测试软件至关重要。因此,边界价值分析和测试已成为长期以来软件测试人员工具箱的一部分,通常是对学生进行的。但是,尽管有许多争论的好处,但通常以抽象的术语描述给定规范或软件的边界价值分析,从而可以改变测试人员的应用方式。 在这里,我们提出了一种自动化的黑盒边界值检测方法,以支持系统边界值分析中的软件测试仪,并保持一致的结果。该方法建立在度量标准上以量化测试输入的界限:程序导数。通过将其与搜索算法耦合,我们发现并将成对的输入对作为良好的边界候选者,即输入近距离,但输出却很远。我们实施了我们的AutoBVA方法,并在示例程序的策划数据集上进行评估。我们的结果表明,即使使用简单而通用的程序衍生化变体,也可以在输入空间上进行广泛采样,也可以确定有趣的边界候选者。
The input domain of software systems can typically be divided into sub-domains for which the outputs are similar. To ensure high quality it is critical to test the software on the boundaries between these sub-domains. Consequently, boundary value analysis and testing has been part of the toolbox of software testers for long and is typically taught early to students. However, despite its many argued benefits, boundary value analysis for a given specification or piece of software is typically described in abstract terms which allow for variation in how testers apply it. Here we propose an automated, black-box boundary value detection method to support software testers in systematic boundary value analysis with consistent results. The method builds on a metric to quantify the level of boundariness of test inputs: the program derivative. By coupling it with search algorithms we find and rank pairs of inputs as good boundary candidates, i.e. inputs close together but with outputs far apart. We implement our AutoBVA approach and evaluate it on a curated dataset of example programs. Our results indicate that even with a simple and generic program derivative variant in combination with broad sampling over the input space, interesting boundary candidates can be identified.