Foundation of Software Testing is a course that teaches the concepts necessary for students to progress from an informal, chaotic approach to a systematic and repeatable testing practice. It teaches students the basics of test planning, test design, test development, and test execution/validation utilizing the Test Maturity Model. Some of the methods illustrated will focus on effective test planning, test case design and review, understanding the manual test techniques, defect management, etc.
Course Outcome
After completing Foundation of Software Testing, students will be equipped with a basic understanding of the following:
- Testing Maturity Model Levels
- Fundamental activities associated with test planning, execution, and analysis
- Basic skills to identify components of a testable requirements
- Design and implementation of effective defect identification and resolution techniques
- Familiarization with templates required to support an end to end software testing initiative
Skills Learned
- Understanding of where testing fits within the development life cycle
- Understanding of the core components of the Testing Maturity Model
- Concepts of a systematic, repeatable approach to testing
- Basic understanding of test planning, test design, test preparation, and test execution/validation
- Understanding of the purpose of the various levels of testing: unit, integration, system, and user acceptance
Audience
Any Information Technology personnel and members of the business community involved in the system software testing process. This can include IT developers/designers, IT software testers, Quality Assurance personnel, and IT business team leaders or managers. IT managers and team leaders would also find this course beneficial in order to gain a better understanding about the effectiveness of implementing a software testing program.
Recommended Prerequisites
No previous testing experience or exposure to software testing is required. A general knowledge of software development processes as well as a familiarity with business and Information Technology is helpful but not essential.
Students will be assigned 5 homework assignments, and a final project for each course.
-
What is software testing
-
Inherent challenges with testing
-
Systematic problems with testing
-
-
Module 1: Test Planning 101
-
Over of test scheduling
-
Understand software release objectives
-
Risk Management 101
-
Common test measurements
-
What is a test strategy
-
Sample outline for a test plan
-
-
What you will learn at the end of this lesson:
-
Understand the components of test planning
-
Importance of test scheduling
-
Risk Management 101
-
Building Block for a Master Test Plan
-
-
Supplemental Reading an excerpt from: ” Mythical Man Month: Essays of Software Engineering”
-
Module 2: Test Analysis 101
-
Golden Rules for requirements based testing
-
Qualitative measurements for requirements
-
Financial impacts of inadequate requirements
-
-
What you will learn at the end of this lesson
-
How to qualitatively evaluate requirements
-
3 ” Golden Rules” for requirement based testing
-
Understand the cost associated with requirement based defects
-
Provide examples of a well defined requirement
-
Familiar with the contents of requirements checklist
-
-
Supplemental Tools: Sample Requirement Review Checklist
-
Module 3: Test Case Design 101
-
Differences between and test scenario, test case and test procedure
-
Common test case design techniques
-
Positive versus negative testing
-
Guidelines for test procedures
-
-
What you will learn at the end of this lesson
-
Differentiate between a test case and scenario
-
Differentiate between positive and negative testing
-
Guidelines for building a test procedure
-
-
Supplemental Tools: Test Case Review Checklist
-
Mini Module 4 on Test Data
-
Sources for obtaining test data
-
Data Source Characteristics
-
-
What you will learn at the end of this lesson
-
Understanding different techniques for procuring test data and corresponding source characteristics
-
-
Module 5: Test Execution 101
-
Test Execution Process Flow
-
Characteristics of automation test tools
-
Common types of testing
-
Characteristics of a test execution log
-
-
What you will learn at the end of this lesson
-
Process flow for a test execution process
-
Common testing types
-
What a test execution log should contain
-
How to write a test cases with corresponding results
-
-
Module 6: Test Maturity Model
-
What is TMM stand for
-
5 Levels of TMM
-
Objectives for using TMM
-
-
What you will learn at the end of this lesson
-
Understand the 5 maturity levels of TMM
-
Understand the initial approach to sponsoring a TMM campaign
-
Understand the correlation between TMM and CMM
-
This course is Instructor-led and delivered through our award-winning online Learning Management System