Eiffel: the language
PIE: A Dynamic Failure-Based Technique
IEEE Transactions on Software Engineering
On the Use of Testability Measures for Dependability Assessment
IEEE Transactions on Software Engineering
The Effect of Imperfect Error Detection on Reliability Assessment via Life Testing
IEEE Transactions on Software Engineering
Improving Software Testability with Assertion Insertion
Proceedings of the IEEE International Test Conference on TEST: The Next 25 Years
Hi-index | 0.00 |
Voas defines software testability as the degree to which software reveals faults during testing. This software characteristic is important when determining how to best apply verification techniques and build quality assurance plans. When testability is low, testers often want advice on how to increase it. In this paper, we describe the use of testability measures (using VoasÕs definition) for intelligent assertion placement. Software assertions are one relatively simple trick for improving testability. VoasÕs perspective on what software testability is has been implemented via three algorithms that together comprise a technique termed Ôsensitivity analysisÕ. Sensitivity analysis analyses how likely a test scheme is to (1) propagate data state errors to the output space, (2) cause internal states to become corrupted when faults are exercised, and (3) exercise the code. By knowing where faults appear likely to hide from a particular test scheme, we have insight into where internal tests (assertions) are particularly beneficial. This paper explores using the one sensitivity analysis algorithm that measures propagation as a heuristic for where and how to inject software assertions.