When I was starting my programming journey I didn’t care about tests. I had no time for this, I didn’t understand why I should do this. When someone said that I should spend the same amount of time on writing classes and tests, my mind blows. I launched my first startup without tests - yes it was a maintenance nightmare.

Reasons for doing code tests

A few months later I started to learn how to write tests. Now, after many years, I don’t understand how code without tests can even exist. If you need a clue why you should write tests then check reasons presented below.

1. It’s easy to refactor code, modify and add new code

It’s the most obvious reason. Instead of clicking on the whole app or praying that you didn’t break anything with your changes you can simply run tests. Of course, the fact that you have tests does not mean that they are good enough to catch errors. So care about unit tests at least, create acceptance tests if you have time and hands to work on it. However, having full, well written, tests suite reduces the possibility of errors on both backend and frontend side.

Want to receive useful tips, information about new Ruby gems and articles on a daily basis? Make sure you follow me and say hello!

2. Tests are kind of documentation

If you ever run rspec with --documentation flag then you probably know about it. There is always not enough time to write documentation but with well-written tests and proper wording, you can automatically create documentation while creating tests.

3. Others can understand

New team members or junior developers would appreciate this. You can have comments on your code but proper tests are the best explanation for your classes and modules.

4. Verify if application meets client and users expectations

In a perfect world client writes testing scenarios but in a real world, you have to do this by yourself. The easiest way is to implement three steps cycle: red, green and refactor. First set expectations and then take care of writing code that would handle them.

I hope now you have fewer doubts about writing tests after reading my reasons for doing code tests. Let me know about other reasons if I missed any.

Want to become a better Rails developer?
Download for free the Introduction Rails patterns book and dive into the world of refactoring and easy-testable Ruby code today.
Join over 1,000 developers already subscribed to my newsletter and download the book. You can unsubscribe anytime:

Subscribe and get the book!