Cucumber features are what Gojko Adzic calls living documentation. That term neatly sums up the two main benefits of using Cucumber:
Living: It tests the system automatically so you can work on it safely.
Documentation: It facilitates good communication about the current or planned behavior of the system.
When your team is struggling with Cucumber, the problems you’re having will hit you in one of these two places. Either they’ll result in Cucumber scenarios that provide poor feedback for the developers or they’ll mean Cucumber fails to help your team communicate. We’ll start by looking at what might be holding you back from making the features work as a communication tool.
Consider the following ...