Font Size: a A A

Research Of Test Generation Based On UML Statecharts

Posted on:2010-07-19Degree:MasterType:Thesis
Country:ChinaCandidate:C YuanFull Text:PDF
GTID:2178360275479336Subject:Computer software and theory
Abstract/Summary:PDF Full Text Request
With the rapid development of computer Technology, software complexity increases and draws an increasing attention to the issue of software quality. Software testing is the key technology to guarantee software quality. The study shows that the tests usually take 50% of the total cost in software development, so effective software testing are of great significance for both quality and cost. Unified Modeling Language (Unified Modeling Language, UML) is widely used in the whole process of object-oriented software development. UML is a powerful visualization language.The study of UML-based testing has become the research hotspot in recent years. In this paper, test generation based on UML statecharts is made an in-depth study and discussion.As the UML statecharts modeled for software usually have structures with concurrency and hierarchy, and the mature study of test generation is mainly based on concurrent finite state machines (FSM) or flow diagrams which are without hierarchy and concurrency. So the theory of this paper is that we first flatten the hierarchical statecharts, this can eliminate the hierarchical and concurrent structure, and then we use the traditional method for test generation.In this study, semantics of hierarchical statecharts have been studied. As a result of the semantics given by the UML standard document are semi-formal semantics, this paper presents the formal semantics and the flattening formal semantics of the hierarchical statecharts. Formal semantics are more precise, and semantic research is the basis of flattening statecharts. Flattening conformed to the statecharts semantics can be equivalent with the original statecharts.This paper proposes a test generation algorithm of hierarchical statecharts, we propose using a SCC tree (State Configuration Constructing Tree) to describe hierarchical, compositional and concurrent structure of the statecharts, and we proposed an algorithm to generate state configuration from this SCC tree. In addition, after converting the state nodes of hierarchical statecharts to state configurations, the paper presents a generation algorithm of the transition between configurations, that is, the transition of the original hierarchical statecharts need to be divided and the calculated, this is an effective method to avoid conflict between transitions and to make a clear transition relationship between configurations.Test adequacy criteria has an important significance of software testing. Software testing can not be exhaustive, less but the most effective test data is selected to make the testing as complete as possible. Therefore this paper presents some test coverage criteria corresponding to the flattened statecharts: configuration coverage criteria, configuration transition coverage criteria, guard predicate coverage criteria and configuration transition pair coverage criteria. For different testing purposes we choose different test coverage criteria.After flattening the statecharts, we studied the test generation methods, mainly based on the data flow and FSM test generation methods.At Last we use an example of TrustLimitation to make a clear description of UML statecharts based on the whole process of the test generation.
Keywords/Search Tags:UML statecharts, formal semantics, flatten, test generation, test criteria
PDF Full Text Request
Related items