Skip to content

User Stories: Customers

CUS09

Priority: High

Narrative

As a Customer I want to Search the site so that I can see what boats are available, prices and available dates.

Acceptance Criteria

Scenario 1: Customer successfully searched for a boat

Given the Customer is not registered or logged in, and the Customer is on the site Homepage.
When in "Search for Boat", the Customer types in "Cruiser".
Then a message is shown "Boat Found", and the Customer can view the boats of the type "cruiser".

Scenario 2: Customer successfully searched for a boat that doesn’t exist

Given the Customer is not registered or logged in, and the Customer is on the site Homepage.
When on "Search for Boat", the Customer types in "anyboat".
Then the Customer receives an error message "Boat Not Found".


CUS10

Priority: High

Narrative

As a Customer I want to Register on the site so that I can make bookings and return to the system where my details are saved.

Acceptance Criteria

Scenario 1: User successfully registered

Given the Customer is not registered and the Customer is on the Homepage.
When the Customer selects the "Register" tab, enters all their relevant details, and selects "Add User".
Then the Customer is registered on the site, and a message indicates the user has been successfully registered.

Scenario 2: User not successfully registered

Given the Customer is not registered and the Customer is on the Homepage.
When the Customer selects the "Register" tab, does not enter all their relevant details, and selects "Add User".
Then the Customer is shown an error message "(Field is required)", and the Customer is not successfully registered.

Scenario 3: User already registered

Given the Customer username is already registered.
When the Customer selects the "Register" tab, enters a pre-existing username along with all other details, and selects "Add User".
Then the Customer is not successfully registered.

Scenario 4: Confirm Password does not match

Given the Customer is not registered and the Customer is on the Homepage.
When the Customer selects the "Register" tab, enters all relevant details with a new password, enters a wrong password into the "Confirm Password" field, and selects "Add User".
Then the Customer receives an error message "Password 1 should match with Password 2", and the Customer is not registered.

Scenario 5: Password is less than 4 characters

Given the Customer is not registered and the Customer is on the Homepage.
When the Customer selects the "Register" tab, enters all relevant details with a new password that is less than 4 characters, and selects "Add User".
Then the Customer receives an error message "Password must be 4 or more characters", and the Customer is not registered.


CUS11

Priority: High

Narrative

As a Customer I want to Login to the site so that I can book a boat.

Acceptance Criteria

Scenario 1: Customer successfully logged in

Given the Customer is registered and on the Homepage.
When the Customer selects the "Login" tab, enters a valid username and password, and selects "Login".
Then the Customer is taken to the customer landing page and is successfully logged in.

Scenario 2: Customer username invalid

Given the Customer is registered and on the Homepage.
When the Customer selects the "Login" tab, enters an invalid username and a valid password, and selects "Login".
Then the page refreshes to prompt the User to try again, and the user is not successfully logged in.

Scenario 3: Password is incorrect

Given the Customer is registered and on the Homepage.
When the Customer selects the "Login" tab, enters a valid username and an invalid password, and selects "Login".
Then the page refreshes to prompt the User to try again, and the user is not successfully logged in.


CUS01

Priority: High

Narrative

As a Customer I want to select a boat so that I can book a boat for any number of days.

Acceptance Criteria

Scenario 1: One Boat type successfully selected

Given the Customer is logged in.
When the Customer selects "Book Online", chooses the "Cruiser" button, enters 1 in "Quantity Required", enters 1 in "Number of Days", and clicks "Select Boat".
Then the Customer successfully adds 1 Cruiser to their cart for 1 day, and one boat type is successfully selected.

Scenario 2: User selects multiples of one boat type successfully

Given the Customer is logged in.
When the Customer selects "Book Online", chooses the "Cruiser" button, enters 1 in "Quantity Required", enters 3 in "Number of Days", and clicks "Select Boat".
Then the Customer successfully adds 3 Cruisers to their cart for 1 day, and the boat types are successfully selected.

Scenario 3: User selects a boat type but no quantity

Given the Customer is logged in.
When the user selects "Book a Boat", chooses "Yacht", sets a quantity of 0, and clicks "Add to cart".
Then the user is shown the message "please select a quantity", and the boat is not successfully selected.


CUS07

Priority: High

Narrative

As a Customer I want to Pay a deposit so that I can confirm my booking.

Acceptance Criteria

Scenario 1: Deposit successfully paid

Given the user is logged in as a customer and the user has selected a boat, quantity, and number of days via "Book on line".
When the user selects "Select Boat" and enters correct payment information on the shopping cart landing page displaying the total and deposit amount due.
Then the deposit is successfully paid.

Scenario 2: Deposit not successfully paid

Given the user is logged in as a customer and the user has selected a boat, quantity, and number of days via "Book on line".
When the user selects "Select Boat", clicks "Confirm my booking", and enters incorrect payment information on the shopping cart landing page showing the total and deposit amount due.
Then the deposit is not successfully paid.


CUS12

Priority: High

Narrative

As a Customer I want to Log out of the system so that no one can access my details.

Acceptance Criteria

Scenario 1: Log out successful

Given the user is logged in as a customer.
When the user selects log out.
Then the user is taken to the homepage, the user is successfully logged out, and the username is no longer displayed.