If you are practicing unit testing, sooner or later you’ll run across testing async code. Writing such tests can be a challenge for the next reasons: False positives and negatives. Async code ends after the unit test does, causing misleading test results. Flakiness. Async code executes with different speed on different machines, bringing a subtle time dependency into a test suite. A common symptom