Specification-based Testing of Reactive Software: Tools and Experiments

View/ Open
Date
1998-10-15Author
Jangadeesan, Lalita Jategaonkar
Porter, Adam A.
Puchol, Carlos
Ramming, J. Christopher
Votta, Lawrence G.
Metadata
Show full item recordAbstract
Testing commercial software is expensive and time consuming. Automated
testing methods promise to save a great deal of time and money throughout
the software industry. One approach that is well-suited for the reactive
systems found in telephone switching systems is specification-based
testing.
We have built a set of tools to automatically test software applications
for biolations of safety properties expressed in temporal logic. out
testing system automatically constructs finite state machine oracles
corresponding to safety properties, builds test harnesses, and integrates
them with the application. The test harness hen generates inputs
automatically to test the application.
We describe a study examining the feasibility of this approach for testing
industrial applications. To conduct this study we formally modeled an
Automatic Protection Switching system (APS), which is an application
common
to many telephony systems. We then asked a number of computer science
graduate students to develop several versions of the APS and use our tools
to test them. We found that the tools are very effective, save
significant amounts of human effort (at the expense of machine resources),
and are easy to use. We also discuss improvements that are needed before
we can use the tools with professional developer building commercial
products.
(Also cross-referenced as UMIACS-TR-97-18)