OBJECTIVES: To learn the criteria for test cases. To learn the design of test cases. To understand test management and test automation techniques To apply test metrics and measurements.
UNIT I INTRODUCTION 9
Testing as an Engineering Activity – Testing as a Process – Testing Maturity Model- Testing axioms – Basic definitions – Software Testing Principles – The Tester‘s Role in a Software Development Organization – Origins of Defects – Cost of defects – Defect Classes – The Defect Repository and Test Design –Defect Examples- Developer/Tester Support of Developing a Defect Repository.
UNIT II TEST CASE DESIGN STRATEGIES 9
Test case Design Strategies – Using Black Box Approach to Test Case Design – Boundary Value Analysis – Equivalence Class Partitioning – State based testing – Cause-effect graphing – Compatibility testing – user documentation testing – domain testing – Random Testing – Requirements based testing – Using White Box Approach to Test design – Test Adequacy Criteria – static testing vs. structural testing – code functional testing – Coverage and Control Flow Graphs – Covering Code Logic – Paths – code complexity testing – Additional White box testing approaches- Evaluating Test Adequacy Criteria.
UNIT III LEVELS OF TESTING 9
The need for Levels of Testing – Unit Test – Unit Test Planning – Designing the Unit Tests – The Test Harness – Running the Unit tests and Recording results – Integration tests – Designing Integration Tests – Integration Test Planning – Scenario testing – Defect bash elimination System Testing – Acceptance testing – Performance testing – Regression Testing – Internationalization testing – Ad-hoc testing – Alpha, Beta Tests – Testing OO systems – Usability and Accessibility testing – Configuration testing –Compatibility testing – Testing the documentation – Website testing.
UNIT IV TEST MANAGEMENT 9
People and organizational issues in testing – Organization structures for testing teams – testing services – Test Planning – Test Plan Components – Test Plan Attachments – Locating Test Items – test management – test process – Reporting Test Results – Introducing the test specialist – Skills needed by a test specialist – Building a Testing Group- The Structure of Testing Group- .The Technical Training Program.
UNIT V TEST AUTOMATION 9
Software test automation – skills needed for automation – scope of automation – design and architecture for automation – requirements for a test tool – challenges in automation – Test metrics and measurements – project, progress and productivity metrics.
TOTAL: 45 PERIODS
OUTCOMES: At the end of the course the students will be able to: Design test cases suitable for a software development for different domains. Identify suitable tests to be carried out. Prepare test planning based on the document. Document test plans and test cases designed. Use automatic testing tools. Develop and validate a test plan.
1. Srinivasan Desikan and Gopalaswamy Ramesh, ―Software Testing – Principles and Practices‖, Pearson Education, 2006.
2. Ron Patton, ―Software Testing‖, Second Edition, Sams Publishing, Pearson Education, 2007.
1. Ilene Burnstein, ―Practical Software Testing‖, Springer International Edition, 2003.
2. Edward Kit,‖ Software Testing in the Real World – Improving the Process‖, Pearson Education, 1995.
3. Boris Beizer,‖ Software Testing Techniques‖ – 2nd Edition, Van Nostrand Reinhold, New York, 1990.
4. Aditya P. Mathur, ―Foundations of Software Testing _ Fundamental Algorithms and Techniques‖, Dorling Kindersley (India) Pvt. Ltd., Pearson Education, 2008.