I need JS Savvy tech reviewers for the 3rd edition of the book. Apply here, get a free book with your name mentioned in it if your feedback is awesome.
Dear Diary. It has been six years since the last edition of Art of Unit Testing. Many things have changed since then, and many have interestingly remained the same.
( I haven’t decided if they should be in plain JS or in Typescript yet. Would love to know what you think in the comments or on twitter.)
So, I need good people to keep me sane as I transform this book into a JS centric one. People to read each chapter and let me know if things don’t make sense, or of my examples suck, or if there are better ways to achieve the same result.
Would you like to be a tech reviewer for this new book?
You’ll get a free copy of the book and a mention inside the book with your name. Also we’ll become great friends and BBQ together every Saturday (If you’re in the tel aviv area).
Nothing is written yet. I should have a chapter or two ready in the next month or two. Maybe earlier. I plan to release each chapter separately to the tech reviewers (typos and all) and get some technical feedback on the code samples and ideas. If that sounds like something you might be interested in geeking out on - it’d be a win-win.
Here is the current plan for the revised Table of Contents
TOC (many things will change..)
What's new in the 3rd edition
Part 1 - Getting Started
The Basics of Unit Testing
(new) What's in a function?
Noticeable State Change
Calling a Third Party
(new) Entry Points & Exit Points
Units & Unit Of Work
Properties of a Good Unit Test
A first Unit Test
Part 2 - Core Techniques
Using Stubs to Break Dependencies
(new) Faking Callbacks
Interaction Testing using Manual Spies, Mocks
Isolation (Mocking) Frameworks
Digging Deeper into Isolation Frameworks
Part 3 - The Test Code
Test Hierarchies & Organization
The Pillars of Good Unit Tests
(new) Multiple naming conventions
(new) Three important pieces of information in a name
Part 4 - Design & Process
(new) Unit Tests and a Pipeline Driven Culture
(new) Playing well with others
Other types of Tests
Using Test Recipes to Prevent Duplication
(new) Lies, Damned Lies, and Unit Testing Metrics
Integrating Unit Testing into the organization
Working with Legacy Code
(new) Refactoring DOs and DONTs
(changed) Design & Testability
Appendix - JS Testing Tools & Frameworks