Full Stack, Hands-on TDD
This workshop readies developers for success with Test-Driven Development. Together we’ll take small steps toward working a full, double loop TDD workflow. Over the course of two days attendees gain comfort with the TDD workflow, integrating it with other important practices such as pair programming, source control, emergent design, domain-driven design and lightweight modeling.
It’s two solid days of intense work — over 60% hands-on, iterative exercises. The rest of the time is a mix of fast, dense lightning talks, case study reviews, chalk-talks and facilitated group discussions.
- become competent-to-proficient with TDD.
- experience the “aha moment” of double loop TDD.
- know what the tools do and how to handle them.
- are aware of (and have moves to avoid) common pitfalls.
- feel confident test-driving new projects and features.
- envision the roadmap to mastery.
On the morning of day one, we level set on TDD, unit testing and design principles. During the afternoon we add test doubles (stubs, mocks, spies) to the mix. On day two we learn how to apply TDD in presentation and persistence layers, and finish with extensive practice in full stack, double loop TDD, working stories as vertical slices.
|The TDD Workflow – Red, Green, Refactor||Test Doubles: Stubs, Mocks & Spies|
|Testing: Value & Strategy||Lightweight Modeling & TDD|
|Refactoring & Code Smells||Boundaries & Leaky Abstractions|
|Testing the UI – Through & Under||Common Testing Edge Cases|
|Testing Anti-patterns||Integration & Testing|
|State vs. Interaction TDD||Double Loop & Outside-in TDD|
|Domain Driven Design with TDD||Testing Edge Cases (Promises, Exceptions, Async)|
|User Stories & Acceptance Tests||Tool Selection & Alternatives|
- Developers new to testing.
- Developers experienced testing on other platforms (e.g. Java, .NET, Ruby).
- Technical leads building a testing practice within their team.
- Testers with a technical background.
- Playing agile coaches looking to sharpen their skills.
- At least 2 years production development experience. We introduce concepts gradually but ramp up very quickly.
- A laptop capable of running Node.js 4.0+.
- A recent version of Git.
- A (free) GitHub account. We’ll make extensive use of pull requests and feature branches for group work.
Workshop Author & Leader
David is the author and leader of this workshop. He has over 10 years production experience with TDD as a player coach and builder of eXtreme Programming teams.
November 12-13, 2015 Join us for a public workshop hosted at Polygon Atlanta. Early bird pricing & group discounts are available!