TDD vs. Velocity: Testing for start-ups and other organizations with fast innovation cycles

By Markus Tacker

Elevator Pitch

These days, when every new project is a start-up, we need to run software that is both robust (because there are customers already using it) and open for change (because we are constantly adding new features). This provides a challenge for applying TDD.

Description

In this talk I’d like to show how I found a good compromise that enables my tests to be relatively stable, while my software can fundamentally change.

By using BDD testing on the API level, we enable the implementation to change, but because a public API stays stable (because it is used by agents outside of our realm) this is a good place to test; and it covers a lot of code real-estate.

In this talk I’ll show the tools I use to test my Node.js applications. Everything I show and use is open-source software, so the attendees can start working with this method right after the talk.

Notes

I consider myself to be a Software Craftsman, and having tests in my software stack is fundamentally important to me. I develop test-driven for over 15 years. I’d love to share my findings, because I have the feeling that TDD is not getting enough attention, especially in the JavaScript world.