The path
Testing
For me TDD is the foundation of everything else. Tests are not a step you do at the end: they drive the design and give you the safety net to change the code without fear. Here's the whole path, from the basic TDD cycle to test doubles, Outside-In and how to add tests to legacy code.
Topics
TDD Basics
TDD Cycle, Laws of TDD, Benefits of TDD, Fake It Till You Make It, Obvious Implementation, Triangulation, TODO List, ZOMBIES
TDD as if you meant it
ZOMBIES
Zero, One, Many, Boundary Behaviors, Interface Definition, Exercise Exceptional Behavior, Simple Scenarios, Simple Solutions
Test Structure
Arrange Act Assert, Given When Then
FIRST Principles
Parametrized Tests
Nested Tests
Transformation Priority Premise
Single Assert Rule
Test Data Builders
Object Mother
Test Fixtures
Test DSL
Test Doubles
Mocks, Spies, Stubs, Dummy, Fake Objects
Mockist TDD
Outside-In, ATDD, London vs Chicago
Classical Outside-In
Ian Cooper Style TDD
Integration Tests
End-to-End Tests
Cypress, Selenium
Humble Object
Presenters
Walking Skeleton
Test Pyramid
Types of Tests
Legacy Code
Approval Testing, Golden Master, Seams, Strangler
Performance & Load Testing
Resources
- Clean Coders Episode 6: TDD
Video · 2 h 12 min
- Test-Driven Development By Example
Book · Kent Beck, Addison-Wesley, 2002 · 232 pages
- TDD
Book · Jason Gorman, Codemanship, 2016 · Chapters: 1-22 · 222 pages
- Understanding the Four Rules of Simple Design
Book · Corey Haines, Leanpub, 2014 · Whole book · 88 pages
- Tests más legibles con AssertJ
Article · 6 pages
- Given When Then
Article · 1 pages
- Guide to Parametrized Tests in JUnit 5
Article · 14 pages
- TDD as if you meant it
Article · 2 pages
- Growing Object-Oriented Software, Guided by Tests
Book · Steve Freeman, Nat Pryce, Addison-Wesley, 2010 · Chapters: 1-8, 20-27 · 172 pages
- Humble Object
Article · 6 pages
- Model-View-Presenter: Android guidelines
Article · 10 pages
- The Practical Test Pyramid
Article · 36 pages
- Mocks Aren't Stubs
Article · 15 pages
- Integration Test
Article · 2 pages
- Unit Test
Article · 3 pages
Video · 1 h 4 min
Video · 58 min
Video · 32 min
Video · 36 min
Video · 25 min
- Test Contra-Variance
Article · 4 pages
- Programmer Test Principles
Article · 3 pages
- Naming Test Classes and Methods
Article · 2 pages
- Test Definitions
Article · 2 pages
- Test Desiderata
Article · 2 pages
- The Transformation Priority Premise
Article · 15 pages
- Clean Coders - Episode 19: Advanced TDD
Video · 1 h 56 min
- Clean Coders - Episode 20: Clean Tests
Video · 1 h 24 min
- Clean Coders - Episode 21: Test Design
Video · 57 min
- Clean Coders - Episode 22: Test Process
Video · 1 h 23 min
- Clean Coders - Episode 23: Mocking
Video · 1 h 47 min
- Clean Coders - Episode 24: Transformation Priority Premise
Video · 1 h 43 min
- Introducing BDD
Article · 5 pages
- Characterization Testing
Article · 2 pages
- TDD Guided by ZOMBIES
Article · 16 pages
- Mock Roles, not objects
Article · 11 pages
- Building Microservices - Designing fine-grained systems
Book · Sam Newman, O'Reilly, 2015 · Chapters: 7 · 24 pages
- Cypress Tutorial for Beginners: Getting started with End to End Testing
Article · 17 pages
- What is Selenium?
Article · 3 pages
- The Ultimate Guide to End to End Tests with Selenium and Docker
Article · 13 pages
- Test Automation in React Native using Appium
Article · 11 pages
- Artillery Load Testing Introduction: See How Your Code Scales
Article · 6 pages
- Artillery Core Concepts
Article · 3 pages
- Load Testing vs. Stress Testing
Article · 4 pages
- Working Effectively with Legacy Code
Book · Michael Feathers, Prentice Hall, 2005



