for Agile2017
Attending this event?
View analytic
Thursday, August 10 • 10:45am - 12:00pm
Unit Test Abstraction: Crafting Sustainable Tests (Jeff Langr)

Sign up or log in to save this to your schedule and see who's attending!

Don't end up twirling down the bad-test death spiral! Coding unit tests is an investment, and if you're not careful, it will all be for naught: Many teams quickly built a significant number of unit tests, only to find out that the low quality of the tests pushes them into disuse, then to disrepair/dysfunction, and ultimately to discarded.
Part of sustaining TDD or "test-after development" (TAD) unit testing is recognizing that the tests must play a role as documentation on the behaviors of the system under test. In this hands-on workshop, we'll focus on applying the notion of abstraction--amplifying essential elements and suppressing irrelevant details--to unit tests. You'll learn to sniff out a couple handfuls of test smells that relate to poor test abstraction. You'll work on eliminating these smells to create tests that are literary and immediately obvious. (And you'll hear a bit about why this pays off.)
You'll find codebases for this workshop in Java and C#. Download now from GitHub and get ready to clean up! And don't forget to bring a laptop to the session. Well, it might be ok to forget your laptop, as long as you're ok with pairing with someone else.

Learning Outcomes:
  • the value of emphasizing abstraction in tests
  • how to recognize smells in tests
  • how to eliminate smells from tests
  • how to use tests as entry points for understanding system behaviors
  • how to improve test readability through pairing

avatar for Jeff Langr

Jeff Langr

Owner, Langr Software Solutions, Inc.
Jeff Langr has been professionally building software for over a third century. He is a contributor to Clean Code and the author of 5 books on software development: Pragmatic Unit Testing in Java 8 with JUnit, Modern C++ Programming with Test-Driven Development, Agile in a Flash, Agile Java, and Essential Java Style. Jeff provides consulting and training services through his company, Langr Software Solutions, Inc. He lives in Colorado Springs.

Thursday August 10, 2017 10:45am - 12:00pm
Feedback form isn't open yet.