Font Size: a A A

Research On UML Activity Diagram-based Software Automatic Regression Test Case Generation

Posted on:2013-02-23Degree:MasterType:Thesis
Country:ChinaCandidate:N YeFull Text:PDF
GTID:2248330371487902Subject:Computer software and theory
Abstract/Summary:PDF Full Text Request
The ever-growing scale and complexity of software systems brings new challenge for software quality assurance techniques. The evolution based software development pro-cess is widely employed to control the complexity of software systems which divides the development of complex software systems to a series of iterations. In each iter-ation, the software system is modified and improved according to the feedback from users as well as new requirements. Regression testing is the most important means of assuring their quality.Compared with common testing, regression testing needs to ensure that modifi-cations made to software do not introduce negative impacts to existing functions and behavior while new functions are implemented correctly. As a result, in general it is generally more complex and requires more test resources. How to improve the effi-ciency and save the costs while keep the quality unaffected in regression testing has always been one of the main problems studied.To address the issue, based on regression test cases selection techniques, the paper studies the technology for automatically generating test cases for regression testing. It introduces the UML activity diagrams to model the behaviors of software under test. By comparing two different versions of activity diagrams, modifications made to software can be identified. Then useful test cases can be selected for use and test cases corresponding to modifications can be generated. Further, the paper proposes an approach that can automatically revise out-of-date activity diagrams by analyzing current execution traces and generate up-to-date activity diagrams. By combining the above two approaches, the regression test cases can be generated automatically. The main contributions include: (1) Propose an approach on regression test cases generation by comparing activ-ity diagrams. Activity diagrams are used to describe software internal behavior. By comparing different versions of activity diagrams, the modifications and their related affected paths are identified. The traceability between concrete test cases and paths in the activity diagrams are built automatically by employing the techniques of program instrument and activity diagram path coverage analysis. According to the traceability, regression test cases which cover the affected paths can be generated automatically.(2) Propose an further approach on regression test cases generation based on au-tomatic activity diagrams revision that can get rid of the dependence on manual model updating. With only the original out-of-date activity diagram provided, the approach can revise the original activity diagram according to execution traces in current pro-gram automatically. The final revised activity diagram is adapted to fit the behavior in current software under test. The test cases generation can be completed on the base of revised activity diagram. By automatic model revision, manual model updating can be eliminated, and the efficiency of regression testing can be improved dramatically.(3) Applying to the above two techniques, we develop two prototype tools and carry out a case study. The experiments indicate that the approach on regression test cases generation by comparing activity diagrams can find the affected paths accurately while activity diagrams are modified and then generate regression test cases based on this to automate the process of the regression test cases generation. And the approach on regression test cases generation based on automatic activity diagrams revision can revise the original activity diagram precisely and automatically according to the current behavior in software. The revised diagram is used to drive the following regression test cases generation. The case study results demonstrate the practicality and availability of the approaches.
Keywords/Search Tags:regression testing, model-based testing, test cases generation, automatictesting, model updating
PDF Full Text Request
Related items