Multiple technologies, changing requirements, challenging reality ... The number of factors, that affect the performance of software teams, is constantly growing.
Moreover, there are so many different roles in a project (Developers, Testers, Leaders, Managers, Product Owners) and reaching a clear communication between them is even more difficult.
Behavior-Driven Development (BDD) is an answer to all those challenges.
Belatrix experts Luis Raed, Sr. Developer at Belatrix Software, and Mauricio Besse, Project Leader at Belatrix Software analyzed the BDD approach, its practical application and benefits for software development and QA teams.
You can watch the recording here: https://www.youtube.com/watch?v=NldOrd_4N08&feature=youtu.be
7. LANGUAGE EXAMPLE
User Story:
As a registered user, I want to login in order
to access to Home page. If the username or
password are invalid, I will stay in login page
and the system will show an error message.
Task:
Validate username and password. If they
are valid, redirect the user to Home page,
otherwise stay in the page and show an
error message.
8. Scenario: Valid login
Given The user is in Login page
And the user enters a valid username
And the user enters a valid password
When the user logs in
Then the user is redirected to Home page
GHERKIN
9. OTHER SCENARIOS
Scenario: Enter an invalid password
Given The user is in Login page
And the user enters a valid username
And the user enters an invalid password
When the user logs in
Then the user is redirected to the Login page
And the system shows the following message: "Invalid Username or Password. Please, check the values and try
again".
Scenario: Enter an invalid username
Given The user is in Login page
And the user enters an invalid username
And the user enters a valid password
When the user logs in
Then the user is redirected to the Login page
And the system shows the following message: "Invalid Username or Password. Please, check the values and try
again".
Scenario: Enter an invalid username and an invalid password
Given The user is in Login page
And the user enters an invalid username
And the user enters an invalid password
When the user logs in
Then the user is redirected to the Login page
And the system shows the following message: "Invalid Username or Password. Please, check the values and try
again".
19. BENEFITS
• Live documentation
• Better product understanding
• Reduction of communication barriers
• Improvement of quality software
• Stakeholder’s expectations achieved
20. LIVE DOCUMENTATION
Scenario: Enter an invalid password
Given The user is in Login page
And the user enter a valid username
And the user enter an invalid password
When the user logs in
Then the user is redirected to the Login page
And the system shows the following message: "Invalid
Username or Password. Please, check the values and try
again".
Scenario: Enter an invalid username
Given The user is in Login page
And the user enter an invalid username
And the user enter a valid password
When the user logs in
Then the user is redirected to the Login page
And the system shows the following message: "Invalid
Username or Password. Please, check the values and try
again".
27. CONCLUSION
1. Increasing the chances of success of the project.
2. Improving communication, collaboration and software quality.
3. Concentrating on key features for stakeholders.
4. Using a common and effective language.