The verification and validation of software through dynamic testing is an area of software engineering where progress towards automation has been slow. In particular the automatic design and generation of test data remains, by and large, a manual activity. This is despite the high promises that the symbolic execution technique engendered when it was first proposed as a method for automatic test data generation. This paper presents an automatic test data generator based on constraint logic programming and symbolic execution. After reviewing the symbolic execution technique, approaches for the resolution of the technical difficulties that have so far prevented symbolic execution from reaching its full potential in the area of automatic test data generation are presented. ATGen, an automatic test data generator, based on symbolic execution and that uses constraint logic programming, is then discussed. Copyright © 2001 John Wiley & Sons, Ltd.
Software testing consumes a large percentage of total software development costs. Yet, it is still usually performed manually in a non rigorous fashion. In this work we suggest how state of the art practices in the area of testing can be applied to the systematic generation of tests from model-based formal specifications. Tests Derivation from Model Based Formal Specifications However we should always keep in mind the shortcomings of defect testing as highlighted in [15]: primarily it may not always be the most straightforward method for increasing the reliability of the software under test. The testing activity is increasingly being automated. However, the crucial area of tests generation is still largely performed manually and, according to Ould [26], is the most important aspect of software testing requiring automation. Because manual testing demands fastidiousness, and hence is often performed non-rigorously, the need for automated tests generating tools in the software engineering community is strong. But automatic test generation is still in its infancy: few automatic tests generators have actually been implemented and far less, if any, are in use everyday [19]. Most automatic test generators use white box techniques to derive the tests [10]. White box techniques use the source code as their basis for tests derivation. Black box techniques, where some sort of program specification is used for the derivation process, have not received the same amount of consideration. This is certainly due to the absence of intuitive methods for the derivation of tests from specifications. The main exception to this remark are test selection methods based on deterministic Finite State Machines where many useful theoretical results exists [9, 27, 16]. Without extensions however, FSMs have a limited modelling ability: only the control aspect of systems can be specified. Some formal notations that extend somewhat the usefulness of FSMs as a general specification technique are: LOTOS [5], Estelle [8] and SDL [3]. However those notations are not as expressive as model-based formal specification languages such as Z and VDM-SL. These preliminary considerations form the rationale to our undertaking of trying to systematically generate tests from VDM-SL specifications. Previous work in this area include the commendable work of J. Dick and A. Faivre [12] for their implementation of an automatic test generator prototype from a subset of VDM-SL. Although the VDM-SL subset used is very limited (e.g. no quantified expressions) their work forms much of the basis for other work in this area. In particular [21] reapplies their work, without extending it, to Z. Stocks and Carrington [28] present a formal framework for tests derivation from Z specifications where, unfortunately, automation is not addressed.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
hi@scite.ai
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.