Developer’s Guide to Test-Driven Development and Approval Testing

Track: Practices and other tech
Abstract
In this session you’ll learn about Test-Driven Development (TDD), Approval Testing, and how using them can help you deliver better code in less time.

TDD is a great way to ensure your code meets the business requirements and is easy for other developers to understand and modify. Writing automated tests before you write the associated production code, and refactoring both the test and production code once the test passes, is a key part of TDD. So if you’re working on a project that is in production (or has lots of production code) but no automated tests, TDD can’t help much — but that’s where Approval Testing shines.

Approval Testing compares the current behavior of existing code with it’s previously approved of behavior, and lets you know what (if anything) has changed. Instead of asserting that a number, or a simple string were returned, an approval test might compare a complex object with it’s approved version and let you know when things change.
Burk Hufnagel
Burk is a long-time programmer and software architect, with experience in multiple languages including JavaScript and Java. He’s presented at multiple conferences including ConnectTech, DevNexus, JavaOne, and Oracle Code One, and contributed to three of the “97 Things” books published by O’Reilly. Burk works as a Solution Architect for Daugherty Business Solutions where he's focused on finding ways to deliver better code in less time, and teaching others how to do the same.