Software Testing

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