Abstract:Test data generation is one of the most technically challenging steps of testing software, but most commercial systems currently incorporate very little automation for this step. This paper presents results from a project that is trying to find ways to incorporate test data generation into practical test processes. The results include a new procedure for automatically generating test data that incorporates ideas from symbolic evaluation, constraint-based testing, and dynamic test data generation. It takes an i… Show more
“…A number of automatic test data generation methods have been proposed. Korel [9] classified these methods into three types: random [5,18], pathwise [9,12], and data specification [5,17]. Random testing and data specification are not appropriate for a program with dynamic structure type since the search space is large.…”
Section: Software Testingmentioning
confidence: 99%
“…Pointer variables range from simple structure (single storage) to recursively defined structure (many discrete storage that form shapes such as linked list, tree, heap, etc.). For simple pointer structure such as 'int *a', generating test data can exploit the algorithms of prior work [6,12]. However, some relevant features such as alias and pointer arithmetic must be considered as well.…”
Section: Test Data Generationmentioning
confidence: 99%
“…If any constraint cannot be satisfied during statement evaluation, the algorithm will report an infeasible path. The second step focuses on data generation which rests primarily on existing data generation methods such as [10,12].…”
Section: Test Data Generationmentioning
confidence: 99%
“…In this paper, the dynamic domain reduction approach is selected due to its scalability and practical use. Details of the algorithm can be obtained from [12]. In this example, the algorithm will generate numerical data for variables v, p/key, and x/key, assuming that the initial domain for each variable lies between K10 and 10.…”
Section: Overviewmentioning
confidence: 99%
“…These include program (function), input variable of a function, basic block, predicate, constraint, path, flow graph, control path, feasible path, and infeasible path. Details of these terms are given in [3,12].…”
Section: Fundamentals Of Dynamic Linked Structuresmentioning
“…A number of automatic test data generation methods have been proposed. Korel [9] classified these methods into three types: random [5,18], pathwise [9,12], and data specification [5,17]. Random testing and data specification are not appropriate for a program with dynamic structure type since the search space is large.…”
Section: Software Testingmentioning
confidence: 99%
“…Pointer variables range from simple structure (single storage) to recursively defined structure (many discrete storage that form shapes such as linked list, tree, heap, etc.). For simple pointer structure such as 'int *a', generating test data can exploit the algorithms of prior work [6,12]. However, some relevant features such as alias and pointer arithmetic must be considered as well.…”
Section: Test Data Generationmentioning
confidence: 99%
“…If any constraint cannot be satisfied during statement evaluation, the algorithm will report an infeasible path. The second step focuses on data generation which rests primarily on existing data generation methods such as [10,12].…”
Section: Test Data Generationmentioning
confidence: 99%
“…In this paper, the dynamic domain reduction approach is selected due to its scalability and practical use. Details of the algorithm can be obtained from [12]. In this example, the algorithm will generate numerical data for variables v, p/key, and x/key, assuming that the initial domain for each variable lies between K10 and 10.…”
Section: Overviewmentioning
confidence: 99%
“…These include program (function), input variable of a function, basic block, predicate, constraint, path, flow graph, control path, feasible path, and infeasible path. Details of these terms are given in [3,12].…”
Section: Fundamentals Of Dynamic Linked Structuresmentioning
This article describes a model-based testing approach that combines automated test-case and test-driver generation from Statecharts specifications. It focuses on how the test engineer can control the test generation process, and how he/she specify the relationship between model variables and the interfaces of the system under test. The Test-driver mappings make it possible to support complete model-based test automation: from requirement elicitation with Statecharts to test execution and verdict assignment using specific test execution environment. This approach has been used in the context of automotive embedded software validation. Three tools are used to completely support this model-based test process: the I-Logix Statecharts STATEMATE modeler, the LEIRIOS Test Generator and the National Instruments test execution environment TestStand. In this article, we illustrate this automated test process on a small car cruise control example.
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.