I discovered testing and TDD when I was in university. I was trying to find something that could improve my programming skills overall and not just my skills in a specific language or stack.
To cut a long story short, I had excellent results as my grades greatly improved across all programming subjects. It wasn't only due to TDD, but it played an important role.
Because of how well things went during university, I naturally used it and still use it in my professional life as a Front-end developer. And given that I'm able to keep my developer experience pretty stress free code-wise, I'd say that things have been going pretty well.
If I had to say why I find testing and testing as used in TDD so amazing is because of 2 things:
- It forces me to think before and while I write code. This makes me find holes in the requirements and opportunities to improve the code's design.
- _It gives me a development process that lets me stay focused on my task at hand, which makes me more productive and less stressed.
Although it can be frustrating at the beginning, my opinion on testing and TDD is pretty good, and I recommend people try it out.
What's your opinion on testing and TDD?