Your code is a testament to your skills as a developer. No matter what language you use, your code should be clean, elegant, and uncluttered? With test-driven development (TDD), you'll write better code--code that's easy to understand, retains its elegance, and works for years to come.
This indispensable guide will show you how TDD works in three different languages: Go, JavaScript, and Python. With Learning Test-Driven Development at your side, you'll be able to:
Tame domain complexity using a divide-and-conquer approach Understand how TDD works across languages, testing frameworks, and domain concepts See how TDD enables continuous integration and continuous delivery Support refactoring and redesign with TDD Set up a continuous integration environment with the unit tests produced during TDD Write clean, uncluttered code using TDD in Go, JavaScript, and Python
It could have been THE book for a TDD introduction, but unfortunately the author had the stupid idea of covering 3 languages at once. Not only do they change in the order with each chapter (one it is JavaScript, Go, Python, then it is Python, Go, JavaScript) but you also need to read all 3 languages to not miss anything important. However, even with chapters dedicated to only one language, the author misses the chance to explain the programming-language specific tooling that could help you with TDD.
Unless you try to learn Go, JavaScript, and Python at the same time you try to learn TDD, this book will be no use to you.
This book offers a good introduction into test-driven development.. for a beginner. For an advanced or expert programmer the book reads like it has the same example for three languages just to fill up enough space to be considered a book. TDD is very simple as it only has three steps. You have to get into the habit of using it daily for it to stick, and this book offers a good intro to it, but cannot enforce it. Only you can do that. Maybe the greatest thing I could get out of it myself is how much I need to work to re-educate myself so I will start writing tests before I write code.
The author argues that JavaScript test frameworks are too different and uses the node assert library instead. He then spends far too much time implementing a test harness when Jest would have done the job. Showing multiple languages, while a noble idea, just pads out the page length.
The example when its given actual airtime, is pretty good, but I’d have liked to see a lot more on that than writing a test framework in JavaScript.
A good tutorial introduction to the process of TDD. It uses Go, JavaScript, and Python side-by-side and so is widely applicable to many new programmers. I liked the discussions during the “refactor” stages about what to change and why; they felt very thorough and well-reasoned.
Decent as a tutorial for beginners, but would have appreciated more depth. The polyglot approach feels gimmicky and repetitive, since you are just writing the same program in Go, JavaScript and Python.