There are many phases when learning about a tool. I start by trying to understand its purpose, the intent behind its design and what distinguishes from other similar tools. Then I move on to learn about its syntax and constructs, so I can start using the tool. As I get more proficient with a tool, I start asking myself other questions like "what is the right way to do things?", "which are the anti patterns?", "what works and what does not work?". Throughout all these stages I consume a lot of content over a long period of time: talks, books, blogposts, etc. From all the consumed content there are usually a couple of things that have had the biggest impact on our understanding of a certain tool. Sometimes I feel like I could make it easier for others to find this content.
I’m planning to refactor all the tests in one of my side projects. Therefore, I took the opportunity to re-read some of my favourite resources on the topic and compile a list of guidelines I want my project to follow. Additionally, I’ve organized the links to all the resources that I find to be really good on the topic of testing.
I thought that could be useful to others so I’ve published it to GitHub.