
After we eliminate duplication, we are allowed to start refactoring in the classical meaning of this word.
Benefits of using TDD cycle
The first advantage of using this technique by the software developer is courage in interaction with code (understood as changes inside the code or refactor it).
can treat the test as documentation of In russian virtual mobile number teraction between features and their expected behavior.
Another benefit is active support for reaching the project’s goal by defining rigid procedures in each development step. This approach guarantees that a created code will implement functionality defined by tests. It’s crucial from a Product Owner’s perspective.

Despite the rigid process this technique is very flexible inside step: It doesn’t define the granularity of test or moment when we should finish refactor – this is decision is made by the developer based on his knowledge of the business domain, language, etc.
Even Kent Beck in his book a few times broke consciously breaks the rules to give to understand readers that TDD cycle should support the developer in his work not impose rigid rules of behavior in each step.
More details about the benefits of using TDD cycle, you can in Test-Driven Development By Example by Kent Beck.
It’s easy to start