Uber Cab Booking
In this post, I am going to write the test cases for Uber cab search functionality. Uber app is a mobile app that connects the driver-partner and the riders for a trip, which can be interstate or intrastate.
Before writing the test scenarios for any application, a Quality analyst’s main job is to understand how the application works and frame a sketch of the application for analysis in their mind. So let’s explore a little bit of uber app functionality here.
We can consider that we have two actors involved in the Uber app: the driver-partner and the rider. I am going to write the user stories keeping in mind the actor: rider.
- The rider has to download the Uber app from the App Store/Playstore.
- The rider has to create an account using the Mobile number or using a social account like Facebook or Google.
- The rider has to provide some personal details like name, phone number, email, password.
- The rider has to give details of the payment methods also like credit card details etc.(in some places, the cash option is also available)
- Now the rider is all set to book a trip using Uber.
This is a basic high-level user flow of the application. In reality, the application is much more complex in terms of workflow, but here we are taking a simplified approach to write our user cases.
In this post, I will write the test cases for the functionality” Book a ride” using the Uber app.
So how can a rider book a trip? The rider has to open the app and request a ride by searching and entering the destination address. A near-by driver-partner will accept the request for the trip. The app provides information about your driver-partner, like name, vehicle type, and license number. So it makes it easy for the rider to connect with the driver-partner. Once the rider completes the trip, the payment will be made based on the rider’s payment method selected before the start of the trip.
FUNCTIONAL TEST CASES:
Sl.No | Test Cases |
1 | Verify if the location is enabled on the mobile/tab, the pickup location should be automatically filled in. |
2 | Verify if the location is disabled on the mobile/tab, the app should ask to enter the pickup location. |
3 | Verify by default the booking time is taken as the current time. |
4 | Verify there is an option available to choose/schedule a ride for a later time. |
5 | Verify the user should not be able to choose a ride time later than 1 month. |
6 | Verify the app shows the suggestion of your previously visited or saved location for choosing the destination. |
7 | Verify the selection of destination works fine. |
8 | Verify that on selecting a destination, the map gets zoom out and shows the destination. |
9 | Verify that there is an option to search location. |
10 | Verify the selection of all the available types of vehicle class. |
11 | Verify the prices of the vehicle are displayed correctly. |
12 | Book a ride selecting pickup, destination, time, and vehicle class. The app should start looking for a cab and should show the estimated time to find a cab. |
13 | On a confirmed booking, the app should show the cab and driver details. |
14 | Verify the map shows the driver’s location and estimated time to arrive. |
15 | Verify the map gets updated with the location of the driver. |
16 | Verify there is an option to call/message the driver. |
17 | Verify the cancellation option is available once the booking is confirmed. |
18 | Verify on cancellation the current booking is aborted and cancellation charge is deducted if applicable. |
19 | Book a ride for a later time and verify at that time a cab is booked and prior to booking user gets the notification. |
EDGE TEST CASES:
Sl.No | Test Cases |
1 | Verify at one time only one booking is allowed |
2 | Verify multiple bookings can be scheduled for different times. |
3 | Verify the behavior of network interruption while booking a cab. |
4 | Verify the driver canceling the booking. |
5 | Verify the behavior when a search of a cab is in progress and a phone comes in. |