z-logo
Premium
Boundary values and automated component testing
Author(s) -
Hoffman Daniel,
Strooper Paul,
White Lee
Publication year - 1999
Publication title -
software testing, verification and reliability
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.216
H-Index - 49
eISSN - 1099-1689
pISSN - 0960-0833
DOI - 10.1002/(sici)1099-1689(199903)9:1<3::aid-stvr169>3.0.co;2-z
Subject(s) - code coverage , heuristics , computer science , compiler , statement (logic) , automation , boundary (topology) , data mining , software , instrumentation (computer programming) , variable (mathematics) , algorithm , programming language , software engineering , mathematics , engineering , operating system , mechanical engineering , mathematical analysis , political science , law
Structural coverage approaches to software testing are mature, having been thoroughly studied for decades. Significant tool support, in the form of instrumentation for statement or branch coverage, is available in commercial compilers. While structural coverage is sensitive to which code structures are covered, it is insensitive to the values of the variables when those structures are executed. Data coverage approaches, e.g. boundary value coverage, are far less mature. They are known to practitioners mostly as a few useful heuristics with very little support for automation. Because of its sensitivity to variable values, data coverage has significant potential, especially when used in combination with structural coverage. This paper generalizes the traditional notion of boundary coverage, and formalizes it with two new data coverage measures. These measures are used to generate test cases automatically and from these, sophisticated test suites for functions from the C++ Standard Template Library. Finally, the test suites are evaluated with respect to both structural coverage and discovery of seeded faults. Copyright © 1999 John Wiley & Sons, Ltd.

This content is not available in your region!

Continue researching here.

Having issues? You can contact us here