https://medium.com/async-software/what-are-the-challenges-when-starting-to-implement-tests-f0844ca62815