Fundamentals of Testing (Theory)

Paper Code: 
24DBCA501A
Credits: 
03
Periods/week: 
03
Max. Marks: 
100.00
Objective: 

The course will enable the students to

  1. Learn the concepts and methods required for effective and efficient Software Testing.
  2. Develop a broad understanding of testing processes from planning until execution.

 

 

Course Outcomes: 

Course

Learning Outcome

(at course level)

Learning and teaching strategies

Assessment Strategies

Course

 Code

Course

Title

24DBCA

501A

 

Fundamentals of Testing

(Theory)

 

CO289. Assess the software testing principles, life cycles and methodologies.

CO290. Compare the different testing techniques.

CO291. Identify various software testing issues and apply solutions at different levels of testing.

CO292. Apply software testing knowledge and engineering methods to different business problems.

CO293. Plan test project, design test cases and data, conduct testing operations, manage software problems and defects, generate a testing report.  CO294.Contribute effectively in course-  specific interaction.

Approach in teaching: Interactive Lectures, Discussion, Reading assignments, Demonstration.

 

Learning activities for the students: Self learning assignments, Effective questions, Seminar presentation.

Class test, Semester end examinations, Quiz, Assignments, Presentation.

 

 

9.00
Unit I: 

Fundamentals of testing:

Introduction, need for testing, testing as an integral part of software engineering, software engineering processes and testing. Fundamental Principles of Testing, psychology of testing.

Software Testing Life Cycle, SDLC Vs STLC. Software Testing Methodology. Verification & Validation.

 

9.00
Unit II: 

Software development models:

Test Levels, Test Types: Manual Testing, Automation Testing, Unit Testing, Integration Testing, System Testing, Smoke and Sanity Testing, Regression Testing, Alpha Testing, Beta Testing, User Acceptance Testing, Non - Functional Testing.

 

9.00
Unit III: 

Static Testing Techniques:

Static techniques and the test process, Review process, Static analysis by tools.

Test design techniques: test development process, Categories of test design technique, Specification-based or black-box techniques, Structure-based or white-box techniques, Experience-based techniques, Choosing test techniques.

 

9.00
Unit IV: 

Test Basis:

Test Scenario, Test Case Specifications, Test Case Preparation, Functional Test Case Preparation, GUI Test Case Preparation, Test Data Preparation, Test case Review, Test case Execution, Traceability Matrix.

Test management:   Test organization, Test planning and estimation, Test progress monitoring and control, Configuration management, Risk and testing, Incident management.

 

9.00
Unit V: 

Types of Test tool:

Bug Life Cycle, Effective use of tools: Benefits and Risks, Introducing a tool into organization, Tool support for testing.

 

ESSENTIAL READINGS: 
  1. Black Rex, E. V. Veenendaal and D. Graham, “Foundations of Software Testing ISTQB Certification”, Third Ed., Cengage Learning, 2012.
  2. Srinivasan Desikan and Gopalaswamy Ramesh, “Software Testing – Principles and Practices”, Pearson education, 2006.

 

REFERENCES: 

SUGGESTED READINGS:

  1. Naresh Chauhan, “Software Testing – Principles and Practices”, Oxford Higher Education, 2010.
  2. Aditya P.Mathur, “Foundations of Software Testing”, Pearson Education,2008.
  3. Elfriede Dustin, “Effective Software Testing”, First Edition, Pearson Education, 2003.
  4. RenuRajani, Pradeep Oak, “Software Testing – Effective Methods, Tools and Techniques”, Tata McGraw Hill,2004.

e -RESOURCES:

  1. https://testproject.io/
  2. http://nptel.ac.in/courses/106101061/18
  3. http://nptel.ac.in/courses/106101061/19

JOURNALS:

  1. Software Impacts, https://www.journals.elsevier.com/software-impacts Software Testing Verification and Reliability, https://onlinelibrary.wiley.com/journal/10991689       

 

Academic Year: