Your code is a testament to your skills as a developer. No matter what language you use, code should be clean, elegant, and uncluttered. By using test-driven development (TDD), you'll write code that's easy to understand, retains its elegance, and works for months, even years, to come. With this indispensable guide, you'll learn how to use TDD with three different languages: Go, JavaScript, and Python. Author Saleem Siddiqui shows you how to tackle domain complexity using a unit test-driven approach. TDD partitions requirements into small, implementable features, enabling you to solve problems irrespective of the languages and frameworks you use. With Learning Test-Driven Development at your side, you'll learn how to incorporate TDD into your regular coding practice. This book helps you:
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.