Course Code: BIT502 | Course Title: Software Testing (4 Credits) |
Course Contents
Unit 1: Introduction to Software Testing
Definition of Software Testing, Need for software Testing, various approaches to Software Testing, defect distribution, Software Testing Fundamentals. General characteristics of testing, seven principles of testing.
Unit 2: Software testing strategies Testing strategies in software testing, basic concept of verification and validation, criteria for completion of testing and debugging process.
Unit 3: Software development life cycle and testing
Water fall model, V-model, Spiral model, agile model, Life cycle testing concepts, testing methods, testing levels.
Unit 4: Static Testing and dynamic testing
Static Testing, static analysis tools, dynamic testing, White box testing, block box testing, Regression testing, dynamic testing tools.
Unit 5: Functional testing
Functional testing concepts, Equivalence class partitioning, Boundary value analysis, Decision tables, Random testing, Error guessing.
Unit 6: Test management
Test planning, cost-benefit analysis of testing, Test organization, Test strategies, Test progress monitoring and control- test reporting, test control, Specialized testing.
Unit 7: Testing tools
Test automation approach, Testing frame work, types of testing tools
Unit 8: Object-Oriented testing
Object-Oriented testing challenges, Unit testing for Object-Oriented programming, Integration testing (top-down, bottom-up), cluster testing.
Unit 9: Software quality and software quality assurance Introduction to software quality and software quality assurance, basic principles about the software quality and software quality assurance. Planning for SQA, Composition of SQA plan and organizational initiatives required for a SQA.
Unit10: Product quality and Process quality “Product quality” and “process quality”, various models for software product quality and process quality.
Unit 11: Software Configuration Management Software configuration management activities like software configuration identification, software configuration control, software configuration auditing.
Unit 12: Software Testing Report
Access Project Management Development Estimate and status, Requirement Phase Testing, Design Phase Testing program Phase Testing, Execute Test and record results, Acceptance Test Report Test results, Testing Software Installation, Test Software Change, Evaluate Test Effectiveness. Testing calculating model(TCM)
Unit 13: Testing Specialized Systems and Application
Client/Server Systems, RAD, System Documentation, Web based systems, Off-the self software, Multi platform environment, Security, Data Warehouse.
Unit 14: Selecting and Installing Software Testing tools
Testing tools-hammers of testing, Selecting and using the test tools, appointing managers for testing tools