Registry Synced

BSCS3002 - Software Testing

563 words
3 min read
FieldValue
Course CodeBSCS3002
LevelDegree Level Course
Credits4
TypeCore Option I
Pre-requisitesNone

πŸ“– Description

To prepare the students to understand the phases of testing based on requirements for a project, to apply the concepts taught in the course to formulate test requirements precisely, to design and execute test cases as a part of a standard software development IDE, and to apply specially designed test case design techniques for specific application domains.

πŸ—“οΈ Weekly Syllabus

WeekTopic
Week 1Software Testing: Motivation, Software Development Life Cycle, Terminologies and Processes, Software Test Automation: JUnit as an example
Week 2Basics of Graphs, Fundamental Graph Algorithms, Elementary Graph Algorithms, Structural Graph Coverage Criteria, Algorithms: Structural Graph Coverage
Week 3Graph Coverage Criteria: Applied to Test Code, Data Flow in Graphs,, Data Flow Testing Example, Unit Testing Based on Graphs: Summary
Week 4Software Design and Integration Testing, Design Integration Testing and Graph Coverage, Specification Testing and Graph Coverage, Graph Coverage and F
Week 5Logic: Basics needed for Software Testing, Coverage Criteria, Logic Coverage Criteria: Making clauses determine predicate, Applied to test code
Week 6Logic: Coverage Example, Coverage Specification, Coverage FSM, Coverage Summary, SMT - Solvers
Week 7Symbolic Testing, Concolic Execution, Example and Summary Symbolic Execution
Week 8Requirements, Functional Testing, ISP, ISP Example
Week 9Regular Expense CFGs, Mutation Testing, Mutation Operators Source Code, Mutation Testing Vs Other Criteria, Mutation Testing For Integration And Tools
Week 10Basic Object Oriented (OO) Integration Concepts, Mutation Operators OO Integration, Mutation Operators OO Integration, OO Faults, Coupling Criteria
Week 11Web Apps Intro, Client Side Testing, Server Side Testing
Week 12Regression Testing, Software Quality Metrics, Non Functional Testing, TDD,Course Summary

πŸ“š Books & Resources

Prescribed Books The following are the suggested books for the course:
        Paul Ammann and Jeff Offutt, Introduction to Software Testing, Cambridge University Press, 2008.
        
        Glenford J. Myers, The Art of Software Testing, Second edition, 2008.
        
        Paul C. Jorgensen, Software Testing: A Craftsman’s Approach, Fourth edition, CRC Press, 2014.
        
        Lisa Crispin and Janet Gregory, Agile Testing: A Practical Guide for
Testers and Agile Teams, Addison-Wesley, 2009.
        Appropriate research papers on testing techniques, information regarding testing tools, as applicable.

πŸ“ About the Instructors

Meenakshi D'Souza
Associate Professor,
Department of Computer Science and Engineering,
IIIT Bangalore
Meenakshi D'Souza is an Associate Professor at IIIT-Bangalore and has been with the institute for the past ten years. Prior to joining IIIT-Bangalore, Meenakshi worked for Honeywell Technology Solutions, Bangalore. Meenakshi is a council member of ACM India and an Associate Editor of Sadhana, a journal of Indian Academy of Sciences.
...
more
Her research interests are in the areas of software testing and formal verification of embedded software. Meenakshi teaches courses on Theory of Computation, Software Testing (in NPTEL too), Design and Analysis of Algorithms and Graph Theory. Meenakshi is also interested in gender diversity and accessibility in STEM and IT.
less
Visit website

Document Outline
Table of Contents
System Normal // Awaiting Context

Intelligence Hub

Navigate the knowledge graph to generate context. The Hub adapts dynamically to surface backlinks, related notes, and metadata insights.