Introduction to Unit Testing (.75 hr.)
What is Testing?
The Economics of Testing – The 1:10:100 Rule
When Should Testing be Performed?
Testing and Risk
Key Testing Concepts
Unit Testing Prerequisites and Terminology (.75 hr.)
Test Phases – Unit, Integration, System and User Acceptance Testing
Independent Testing
Developer Testing
What Unit Testing Should Cover
What Unit Testing Should Include
Unit Test Approach
Unit Test Techniques
Unit Testing Responsibilities
GUI Challenges and Considerations
Legacy Challenges and Considerations
Web Considerations and Challenges
Unit Testing Process (7 hrs. - Includes exercises at each step of the process)
Step 1 – Planning (1 hr.)
Functional tests
Structural tests
Step 2 – Define Tests (2 hrs.)
Boundary cases
Equivalence classes
Decision tables
Requirement-based cases
Error forcing
Structural test coverage measures – statement, branch, condition, multi-condition and path
Test scripts
Batch tests
Step 3 – Create and Maintain Test Data (1 hr.)
Step 4 – Execute Tests (1 hr.)
Drivers and stubs
Functional tests
Regression testing
Structural tests
Step 5 – Check Results (1 hr.)
Compare actual to expected results
Report defects
Step 6 – Evaluate Results (1 hr.)
Summarize
Evaluate
Recommend
Regression Testing (1.5 hrs.)
What is Regression Testing?
No Regression Testing: Hidden Defects
Regression Testing: No Hidden Defects
Regression Testing - The Process
Regression Testing - What’s Needed?
Regression Testing Issues
Regression Testing - How Much is Enough?
Tips for Performing Regression Testing
Test-Driven Development (1.5 hrs.)
What is Test Driven Development?
What are the Tenets of TDD?
TDD by Example
How Does TDD Differ From Traditional Unit Testing?
Benefits of TDD
Risks of TDD
What’s Needed to Perform TDD?
Resources
Unit Test Tools (1 hr.)
What is a Test Tool?
Automated Tools
Manual vs. Automated Testing
Categories of Test Tools
Bounds Checkers
Capture/Playback
Code Coverage
Tool Information Sources
Summary (.5 hr.)
Test Management Considerations
Maintenance Considerations
Test Measurement
Key Seminar Points
Resources
Checklists and Templates
Glossary
Bibliography
Helpful Web Sites
Deliverables
Course notebook with slides, worksheets, checklists, complete examples and supporting text
Basic information needed to plan and execute a unit test