top of page
hand-businesswoman-touching-hand-artificial-intelligence-meaning-technology-connection-go-

Behavior Driven Development (BDD) with Gherkin

What is gherkins?

It is Business Readable Domain Specific language that lets you describe software behavior.

If we write test cases in simple English language then Developer and Tester might think differently. So now all started writing in BDD format using Gherkin.


Keywords - Scenario,Feature,Feature file,Scenarios outline,Step Definition


Scenario

In Cucumber Test cases are represented as Scenario.

  • Important Terms used in Gherkin

Feature

Scenario

Given

When

Then

And

But


Image copied from Test Management.com


We will see Example:

Feature:- Patient management System


Scenario 1: Validation for User Name text box

Given : Login page for patient management system is opening

When : Enter invalid User name click login button

Then : Error message should display “Invalid User name” on login page


Scenario 2: Validation for Password text box

Given : Login page for patient management system is opening

When : Enter invalid Password click login button

Then : Error message should display “Invalid Password” on login page


Scenario 3: Login functionality of patient management System

Given : Login page for patient management system is opening

When : Enter valid User name

Then : Page should accepts User name


Scenario 4: Login functionality of patient management System

Given : Login page for patient management system is opening

When : Enter valid Password

Then : Page should accepts Password


Scenario 5: Login functionality of patient management System

Given : Login page for patient management system is opening

When : Click on Login Button

Then : Page should redirected to Home page of Patients management system

Scenario 6 : Entering patient details

Given: New patient page opening

When: Click on new patient button

Then: Form for new patient should open


Scenario 7 : Verifying validation for First name text box

Given: Opened page for new patients

When: Enter invalid names in First name text box

Then: Error message should display on top of new patient page


Scenario 8 : Verifying validation for Middle name text box

Given: Opened page for new patients

When: Enter invalid names in Middle name text box

Then: Error message should display on top of new patient page


Scenario 9 : Verifying validation for Last name text box

Given: Opened page for new patients

When: Enter invalid names in Last name text box

Then: Error message should display on top of new patient page


Scenario 10 : Verifying validation for Address text box

Given: Opened page for new patients

When: Enter invalid address in Address text box

Then: Error message should display on top of new patient page


Scenario 11 : Verifying validation for Phone Number text box

Given: Opened page for new patients

When: Enter invalid data in Phone Number text box

Then: Error message should display on top of new patient page


Scenario 12 : Verifying validation for Date of birth text box

Given: Opened page for new patients

When: Enter invalid date in Date of birth text box

Then: Error message should display on top of new patient page


Scenario 13 : Filling details for new patient

Given : Page for new patients clicking on New patient button

When : Enter valid data for First name

Then : First name should accept.

Scenario 14 : Filling details for new patient

Given : Page for new patients clicking on New patient button

When : Enter valid data for Last

Then : Last name should accept.


Scenario 15 : Filling details for new patient

Given : Page for new patients clicking on New patient button

When : Enter valid data for Middle Name

Then : Last name should accept.


Scenario 16 : Filling details for new patient

Given : Page for new patients clicking on New patient button

When : Enter valid data for Date of Birth

Then : Date of Birth should accept


Scenario 17 : Filling details for new patient

Given : Page for new patients clicking on New patient button

When : Enter valid data for Address

Then : Address should accept


Scenario 18 : Filling details for new patient

Given : Page for new patients clicking on New patient button

When : Enter valid data for Phone Number

Then : Phone Number should accept


Scenario 19 : Filling details for new patient

Given : Page for new patients clicking on New patient button

When : Click on Submit button

Then : Patients information should saved successfully and page redirected to Home page


Scenario 20 : Open payment information page

Given: Home page should display with payment tab

When : Click on Payment Tab

Then : Payment Information page should open


Scenario 21 : Verifying validation for Insurance Name text box

Given: Opened page for payment information

When: Enter invalid names in Insurance name text box

Then: Error message should display on top of Payment Information page


Scenario 22 : Verifying validation for Insurance Number text box

Given: Opened page for payment information

When: Enter invalid number in Insurance Number text box

Then: Error message should display on top of Payment Information page


Scenario 23 : Verifying validation for Provider Name text box

Given: Opened page for payment information

When: Enter invalid provider name in Provider Name text box

Then: Error message should display on top of Payment Information page


Scenario 24 : Filling information on payment page

Given: Payment information page displayed

When : Select patients name from drop down list

Then: patients details like first name and last name should display


Scenario 25: Filling information on payment page

Given: Payment information page displayed

When : Enter valid Insurance name

Then: Insurance name should accept


Scenario 26 : Filling information on payment page

Given: Payment information page displayed

When : Enter valid card Number

Then: Card Number should accept


Scenario 27: Filling information on payment page

Given: Payment information page displayed

When : Enter valid provider name

Then: Provider Name should accept


Scenario 28 : Filling information on page

Given: Payment information page displayed

When: Click on Submit button

Then: Payment information should save successfully and page redirect to home page


Scenario 29: Opening medical history page

Given: Home page opened

When: Click on Medical History tab

Then: should redirect to medical history page


Scenario 30: Filling information on Medical History page

Given: Medical History page opened

When: Enter medical history if any

Then: Medical history should save to the specific patient


Scenario 31: Opening Immunization records page

Given: Home page opened

When :Click on Immunization tab

Then :All vaccinations given to that patients should displayed


Scenario 32 : Schedule appointments for new patients

Given: Home page opened

When : Click on Appointments tab

Then: Should redirect to the appointments page


Scenario 33 : Schedule appointment for new/old patient

Given : Appointment page opening

When: Check for availability

Then: All available dates should display


Scenario 34 : Schedule appointment for available dates

Given: Appointments page with available dates opening

When: Select available date as per patients requirement

Then : patient scheduled for selected date


Scenario 35: Schedule follow up appointment

Given: Appointments page with available date opening

When: Select available date as per doctors and patients requirement

Then: patients scheduled for follow up


Scenario 36: Cancelling appointment

Given :Appointment page opening

When: Select already scheduled appointment

Then : cancel or schedule new button should display


Scenario 37: Cancelling appointment

Given: Appointment page opening

When : Click on cancel button

Then: Appointment should cancel


Scenario 38 : Scheduling new for cancelled appointment

Given: Appointment page opening

When: Click on Schedule new button

Then: Available dates should open for scheduling new appointment


Scenario 39 : Check for billing information

Given : Home page opening

When : Click on Billing info tab

Then: Billing Information for specific patients should display


Scenario 40 : Check for bill paid or not

Given: Billing Information page opening for selected patients

When: Check for remaining balance is 0.

Then: Bill paid for selected patient


Now will see example using real time data.


23. Scenario: Detect Name

Given: Enter URl https://www.amazon.com/s?k=laptop&ref=nb_sb_noss

When: Click on 2020 Premium HP Stream 11 Laptop Computer 11.6" HD WLED Anti- Glare Intel Celeron Processor N4000 4GB RAM 32GB eMMC Office 365 Personal USB-C WiFi HDMI Win 10 + iCarp HDMI Cable

Then: Should display name 2020 Premium HP Stream 11 Laptop Computer 11.6" HD WLED Anti-Glare Intel Celeron Processor N4000 4GB RAM 32GB eMMC Office 365 Personal USB-C WiFi HDMI Win 10 + iCarp HDMI Cable


24. Scenario: Detect Price

Given : Enter URl https://www.amazon.com/s?k=laptop&ref=nb_sb_noss

When : Click on 2020 Premium HP Stream 11 Laptop Computer 11.6" HD WLED Anti- Glare Intel Celeron Processor N4000 4GB RAM 32GB eMMC Office 365 Personal USB-C WiFi HDMI Win 10 + iCarp HDMI Cable

Then: Should display price $349.00


25. Scenario: Detect Brand

Given : Enter URl https://www.amazon.com/s?k=laptop&ref=nb_sb_noss

When : Click on 2020 Premium HP Stream 11 Laptop Computer 11.6" HD WLED Anti- Glare Intel Celeron Processor N4000 4GB RAM 32GB eMMC Office 365 Personal USB-C WiFi HDMI Win 10 + iCarp HDMI Cable

Then: Should display price $349.00


26. Scenario: Detect Image

Given : Enter URl https://www.amazon.com/s?k=laptop&ref=nb_sb_noss

When : Click on 2020 Premium HP Stream 11 Laptop Computer 11.6" HD WLED Anti- Glare Intel Celeron Processor N4000 4GB RAM 32GB eMMC Office 365 Personal USB-C WiFi HDMI Win 10 + iCarp HDMI Cable

Then: Should display image of laptop


27. Scenario: Detect Operating system

Given : Enter URl https://www.amazon.com/s?k=laptop&ref=nb_sb_noss

When : Click on 2020 Premium HP Stream 11 Laptop Computer 11.6" HD WLED Anti- Glare Intel Celeron Processor N4000 4GB RAM 32GB eMMC Office 365 Personal USB-C WiFi HDMI Win 10 + iCarp HDMI Cable

Then: Should display operating system Windows 10


45 views0 comments

Recent Posts

See All

Beginner Friendly Java String Interview Questions

Hello Everyone! Welcome to the second section of the Java Strings blog. Here are some interesting coding questions that has been solved with different methods and approaches. “Better late than never!”

bottom of page