Testing Syllabus
Week 1
Overview of Unit Testing and Test Driven Development
- What is Unit Testing?
- What is Test Driven Development?
- Quick Example TDD Session - The FizzBuzz Kata
Week 2
- Quiz: Unit Testing and Test Driven Development Quiz
Week 3
Review
Week 4
Setting Up Your Development Environment
- Python Virtual Environments
- Python_Virtual_Environments_Overview.pdf
- Setting up Pytest in PyCharm
- Setting up Pytest in Eclipse PyDev
Week 5
- Assignment 1: Setup your development environment and do the FizzBuzz Kata
Week 6
Review
Week 7
Pytest Overview
- Pytest intro
- Test Discovery
- XUnit Style Setup and Teardown
- Test Fixtures
- Assert Statements and Exceptions
- Assert_And_Exceptions_Presentation.pdf
- PyTest Command Line Arguments
Week 8
The Supermarket Checkout Kata
- Overview
- Setup and 1st Test Case
- Add Items, Add Item Prices, and Calculate Current Total
- Add Multiple Items and Calculate Total
- Add and Apply Discounts
- Throw Exception when Adding an Item with No Price
- Implement the Super Market Checkout Kata While Following Along with the Lecture
Week 9
Review
Week 10
Test Doubles
- Overview of Test Doubles, unitest.mock, and monkeypatch
- unittest.mock Example
Week 11
- Quiz 2: Test Doubles Quiz
- Add Exception for Not Reading the Line to the Checkout Kata on Your Own
Week 12
TDD Best Practices
Week 13
Review