Generation of Software Test Data from the Design Specification Using Heuristic Techniques. Exploring the UML State Machine Diagrams and GA Based Heuristic Techniques in the Automated Generation of Software Test Data and Test Code.
SupervisorDahal, Keshav P.
Hossain, M. Alamgir
MetadataView full catalogue record
KeywordsSoftware testingHeuristic techniquesSoftware test dataSoftware test codeAutomatic test data generationSoftware qualityGenetic algorithm (GA) approach
The University of Bradford theses are licenced under a Creative Commons Licence.
InstitutionUniversity of Bradford
DepartmentDepartment of Computing
Software testing is a tedious and very expensive undertaking. Automatic test data generation is, therefore, proposed in this research to help testers reduce their work as well as ascertain software quality. The concept of test driven development (TDD) has become increasingly popular during the past several years. According to TDD, test data should be prepared before the beginning of code implementation. Therefore, this research asserts that the test data should be generated from the software design documents which are normally created prior to software code implementation. Among such design documents, the UML state machine diagrams are selected as a platform for the proposed automated test data generation mechanism. Such diagrams are selected because they show behaviours of a single object in the system. The genetic algorithm (GA) based approach has been developed and applied in the process of searching for the right amount of quality test data. Finally, the generated test data have been used together with UML class diagrams for JUnit test code generation. The GA-based test data generation methods have been enhanced to take care of parallel path and loop problems of the UML state machines. In addition the proposed GA-based approach is also targeted to solve the diagrams with parameterised triggers. As a result, the proposed framework generates test data from the basic state machine diagram and the basic class diagram without any additional nonstandard information, while most other approaches require additional information or the generation of test data from other formal languages. The transition coverage values for the introduced approach here are also high; therefore, the generated test data can cover most of the behaviour of the system.
Showing items related by title, author, creator and subject.
Software test case generation from system models and specification. Use of the UML diagrams and High Level Petri Nets models for developing software test cases. The main part in the testing of the software is in the generation of test cases suitable for software system testing. The quality of the test cases plays a major role in reducing the time of software system testing and ...
Yang M, Min G, Yang W et al (2014) Software rejuvenation in cluster computing systems with dependency between nodes. Computing. 96(6): 503-526.Software rejuvenation is a preventive and proactive fault management technique that is particularly useful for counteracting the phenomenon of software aging, aimed at cleaning up the system internal state to prevent the ...
McIlhagga WH (2008) Serial correlations and 1/f power spectra in visual search reaction times. Journal of Vision. 8(9): 1-14.In a visual search experiment, the subject must find a target item hidden in a display of other items, and their performance is measured by their reaction time (RT). Here I look at how visual search reaction times are ...