Art of Unit Testing, 3rd Edition, With Examples in JavaScript: Tech Reviewers Wanted
TLDR:
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.
The Rest
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’m writing to you today to let you know that I’ve set up with manning to release a 3rd Edition of Art of Unit Testing in the next year. There are quite a few changes to this edition, and the biggest one is that the examples will be in JavaScript. (It would seem the most useful to the most people and a lot of my work these days is centered around that and Java so I think it makes sense).
( 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).
Fill out this form and I’ll get back to ASAP.
Schedule:
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
Stack used
WebStorm
Git
Jest
Node
Typescript?
TOC (many things will change..)
Pre
What's new in the 3rd edition
JS
Part 1 - Getting Started
The Basics of Unit Testing
(new) What's in a function?
Return value
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
So, if you want to be a tech reviewer on the book: I’m looking for people with good Node.JS/Javascript experience that would be willing to challenge me on technical details and ideas. Go here and submit yourself. https://airtable.com/shrtohxHT8RSsfBLc