One of the major obstacles in getting to the delivery date ready, is the time you waste when automatic tests start to fail. You usually can’t predict when it will happen, and how long would it take for your team to fix it. This makes it hard to estimate how much time you need in order to complete developing a certain feature.
Much more frustrating is the exhausting process a developer needs to go through in order to fix something which used to work just several days ago. If you have no clue of the latest changes which caused your unit test to fail, you would normally start a debug session in order to find the problem. Some developers might check the source control system and review the latest changes, trying to guess the latest change set that caused the failure, then run the unit test with and without the change, in order to conclude whether it is the one to blame. In both cases, the developer usually spends several hours until finding the source of the problem.
Developers that suffer from the problem mentioned above may be interested in the following Unit Testing Tool which helps developers to overcome unit test failures, and thus save valuable development time.
WiseTester helps .NET teams to overcome unit test failures by providing IDE-Based Unit Test Analysis and Source Control Based Unit Test Analysis. When a certain unit test fails, either on the developer’s machine or on the build server, WiseTester can find the exact code changes that caused the failure, saving the time of debugging the code in order to find the problem.
The ideology of the WiseTester is that when a developer gets a notification that one of his unit tests failed, the notification should come together with the exact code changes which caused the failure, before he even starts any debugging.
The IDE-Based Unit Test Analysis is based on information collected from the Visual Studio during the development sessions, and can point the problematic code changes which caused a certain failure up to the code line resolution. In the following screenshot we can see a problematic code change which caused a certain unit test to fail, and was detected by the WiseTester among all the other code changes made in the same development session.
The Source Control Based Unit Test Analysis is based on information coming from the Source Control system, and can point the change set which caused a certain failure, even if it had been committed by another team member. The following screenshot displays a Unit Test Analysis result which found the developer responsible for breaking the unit test.
Developers usually think about whether the added value of a certain solution is worth the time needed to integrate this solution into the development environment. WiseTester takes that into account, providing a quick setup and a one step integration. No code changes nor migrations are required in order to integrate the solution.
Thanks go to Lior Peleg for writing this article for the TheLudditeDeveloper blog.