当前位置: X-MOL 学术J. Log. Algebr. Methods Program. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Introducing complexity to formal testing
Journal of Logical and Algebraic Methods in Programming ( IF 0.7 ) Pub Date : 2019-10-31 , DOI: 10.1016/j.jlamp.2019.100502
Ismael Rodríguez , Fernando Rosa-Velardo , Fernando Rubio

A general theory introducing asymptotic complexity to testing is presented. Our goal is measuring how fast the effort of testing must increase to reach higher levels of partial certainty on the correctness of the implementation under test (IUT). By recent works it is known that, for many practical testing scenarios, any partial level of correctness certainty less than 1 (where 1 means full certainty) can be reached by some finite test suite. In this paper we address the problem of finding out how fast must these test suites grow as long as the target level gets closer to 1. More precisely, we want to study how test suites grow with α, where α is the inverse of the distance to 1 (e.g., if α=4 then our target level is 0.75=114). A general theory to measure this testing complexity is developed. We use this theory to analyze the testing complexity of some general testing problems, as well as the complexity of some specific testing strategies for these problems, and discover that they are within e.g., O(logα), O(log2α), O(α), O(αlogα), or O(α). Similarly as the computational complexity theory conceptually distinguishes between the complexity of problems and algorithms, tightly identifying the complexity of a testing problem will require reasoning about any testing strategy for the problem. The capability to identify testing complexities will provide testers with a measure of the productivity of testing, that is, a measure of the utility of applying the (n+1)-th planned test case (after having passed the n previous ones) in terms of how closer would that additional test case get us to the (ideal) complete certainty on the IUT (in-)correctness.



中文翻译:

将复杂性引入正式测试

提出了将渐近复杂度引入测试的一般理论。我们的目标是测量必须付出多快的努力才能达到对被测实现(IUT)的正确性更高的部分确定性水平。通过最近的工作,众所周知,对于许多实际的测试方案,某些有限的测试套件可以达到小于1(其中1表示完全确定性)的任何部分正确性确定性。在本文中,我们解决了一个问题,即发现只要目标水平接近1,这些测试套件就必须增长多快。更准确地说,我们想研究随着α增长的测试套件如何增长,其中α是距离的倒数。到1(例如,如果α=4 那么我们的目标水平是 0.75=1个-1个4)。建立了衡量这种测试复杂性的一般理论。我们使用这一理论来分析一些常规测试问题的测试复杂性,以及针对这些问题的某些特定测试策略的复杂性,并发现它们位于例如ØØGαØØG2αØαØαØGα, 要么 Øα。类似地,正如计算复杂性理论在概念上区分问题算法的复杂性一样,紧密地确定测试问题的复杂性将需要对问题的任何测试策略进行推理。识别测试复杂性的能力将为测试人员提供衡量测试生产率的方法,即衡量应用测试工具的效用的方法。ñ+1个计划的第一个测试用例(在通过了前n个测试用例之后),该附加测试用例使我们更接近IUT(内部)正确性的(理想)完全确定性。

更新日期:2019-10-31
down
wechat
bug