Testing the code is a fundamental part while developing an application, it ensures maintainability, usability and scalability. There are several test tools and frameworks for every ecosystem and programming language that makes the stage of deploying easier.
The method of “test && commit || revert” described by Kent Beck, called my attention, because it enforces the developer to write good tests because if a tests fails it returns the code to the last green commit (all passing tests), that’s why it has to check the code meticulously to ensure it won’t fail and also to save the last state of the code where it worked perfectly. Basically the command runs the nexts operations.
git commit -ma "Test worked" // if passed
git reset --hard // if not
In the experience I had testing my applications it always has been present the part that I do the commit, and then the tests fails in an specific case, so I go back and fix it, and then commit again but because of that fix another part crashed, and so on and so on, so definitely I will try this technique for making me more productive.
An area that is very important for me in the team is the DevOps, it’s impressive how you can speed the development and deployment of a project when you have a well structured CI/CD. I have a little experience in the DevOps area, setting up the CI/CD scripts and the pipelines for the VCS. It is very delightful seeing the tests passing in a deployment process, making newest versions of the application more maintainable and ready-to-deploy. DevOps is an area that every software company has to have.