Book contents
- Frontmatter
- Contents
- List of figures
- List of Tables
- Preface
- Acknowledgements
- 1 Introduction
- 2 Functional Testing
- 3 Essentials of Graph Theory
- 4 Structural Testing
- 5 Software Verification
- 6 Creating Test Cases from Requirements and Use Cases
- 7 Selection, Minimization and Prioritization of Test Cases for Regression Testing
- 8 Software Testing Activities
- 9 Object Oriented Testing
- 10 Metrics and Models in Software Testing
- 11 Testing Web Applications
- 12 Automated Test Data Generation
- Appendix I
- Appendix II
- Appendix III
- References
- Answers to Multiple Choice Questions
- Index
7 - Selection, Minimization and Prioritization of Test Cases for Regression Testing
Published online by Cambridge University Press: 05 November 2012
- Frontmatter
- Contents
- List of figures
- List of Tables
- Preface
- Acknowledgements
- 1 Introduction
- 2 Functional Testing
- 3 Essentials of Graph Theory
- 4 Structural Testing
- 5 Software Verification
- 6 Creating Test Cases from Requirements and Use Cases
- 7 Selection, Minimization and Prioritization of Test Cases for Regression Testing
- 8 Software Testing Activities
- 9 Object Oriented Testing
- 10 Metrics and Models in Software Testing
- 11 Testing Web Applications
- 12 Automated Test Data Generation
- Appendix I
- Appendix II
- Appendix III
- References
- Answers to Multiple Choice Questions
- Index
Summary
Software maintenance is becoming important and expensive day by day. Development of software may take a few years (2 to 4 years), but the same may have to be maintained for several years (10 to 15 years). Software maintenance accounts for as much as two-thirds of the cost of software production [BEIZ90].
Software inevitably changes, whatever well-written and designed initially it may be. There are many reasons for such changes:
(i) Some errors may have been discovered during the actual use of the software.
(ii) The user may have requested for additional functionality.
(iii) Software may have to be modified due to change in some external policies and principles. When European countries had decided to go for a single European currency, this change affected all banking system software.
(iv) Some restructuring work may have to be done to improve the efficiency and performance of the software.
(v) Software may have to be modified due to change in existing technologies.
(vi) Some obsolete capabilities may have to be deleted.
This list is endless but the message is loud and clear i.e. ‘change is inevitable’. Hence, software always changes in order to address the above mentioned issues. This changed software is required to be re-tested in order to ensure that changes work correctly and these changes have not adversely affected other parts of the software. This is necessary because small changes in one part of the software program may have subtle undesired effects in other seemingly unrelated parts of the software.
- Type
- Chapter
- Information
- Software Testing , pp. 335 - 367Publisher: Cambridge University PressPrint publication year: 2011