SOFTWARE TESTING
Course code PEC-CSE-413G
Category Professional Elective Course
Course title Software Testing
L T P Credits
Scheme and Credits Semester 7
3 0 3
Class work 25 Marks
Exam 75 Marks
Total 100 Marks
Duration of Exam 03 Hours
Course Objectives:
1. To study fundamental concepts of software testing including software testing objectives,
process, criteria, strategies, and methods.
2. To learn how to plan a test project, design test cases and data, conduct testing
operations, manage software problems and defects, generate a testing report.
3. To gain an insight into techniques and skills on how to use modern software testing tools
to support software testing projects.
Note: Examiner will set nine questions in total. Question one will be compulsory. Question
one will have 6 parts of 2.5 marks each from all units and remaining eight questions of 15
marks each to be set by taking two questions from each unit. The students have to attempt
five questions in total, first being compulsory and selecting one from each unit.
Unit 1
Introduction: Overview of Software Development Life Cycle (SDLC), Significance of Software
Testing in SDLC, Objectives and Limitations of software testing. Difference between an Error,
Fault and Failure (Software Bug), Software Testing Life Cycle (STLC) and Seven Principles of
Software Testing, Role of Software Testing in Software Quality
Unit 2
Test Case Design: Test Cases and Test Suite, Test Case Planning and Designing,
Characteristics of Good Test Case Design, Format of test case.
Testing Activities: Levels of Testing- Unit, Integration Testing and System Testing. V Model
for Software Testing.
Unit 3
Types of Software Testing: Black box testing, White Box and Gray Box Testing.
Reporting and Analyzing bugs: Problem reports, Content and Characteristics of Problem
Report, analysis and Tactics for analyzing a reproducible bug. Making a bug reproducible,
Problem/Bug Reporting tools
Unit 4
Test Case Selection: Need of Regression Testing, Non-feasibility of Exhaustive Testing,
Selection, Minimization and Prioritization of test cases in regression testing.
Testing Tools: Manual vs Automated Testing, Types of Testing Tools, Automated Test Case
Generation
Course Outcomes:
1. Understand software testing and quality as a fundamental component of
software development life cycle
2. Understand and design the test cases for a given problem
3. Understand the process of Reporting of software failures(bugs) using tools like
Bugzilla
4. Develop the knowledge of selection of appropriate test cases for execution
during regression testing
Suggested books:
1. “Software Testing: Principles and Practices”, by Naresh Chauhan. Oxford
University Press
Suggested reference books
1. “William Perry, Effective Methods for Software Testing , John Wiley & Sons,
New York, 1995.
2. Boris Beizer, Software Testing Techniques , Second Volume, Second Edition,
Van Nostrand Reinhold, New York, 1990.
3. Louise Tamres, Software Testing , Pearson Education Asia, 2002
4. Roger S. Pressman, Software Engineering – A Practitioner’s Approach , Fifth
Edition, McGraw-Hill International Edition, New Delhi, 2001.
5. Boris Beizer, Black-Box Testing – Techniques for Functional Testing of
Software and Systems , John Wiley & Sons Inc., New York, 1995.
6. K.K. Aggarwal & Yogesh Singh, Software Engineering , New Age International
Publishers, New Delhi, 2003.