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.

  1. The rider has to download the Uber app from the App Store/Playstore.
  2. The rider has to create an account using the Mobile number or using a social account like Facebook or Google.
  3. The rider has to provide some personal details like name, phone number, email, password.
  4. 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)
  5. 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.NoTest Cases
1Verify if the location is enabled on the mobile/tab, the pickup location should be automatically filled in.
2Verify if the location is disabled on the mobile/tab, the app should ask to enter the pickup location.
3Verify by default the booking time is taken as the current time.
4Verify there is an option available to choose/schedule a ride for a later time.
5Verify the user should not be able to choose a ride time later than 1 month.
6Verify the app shows the suggestion of your previously visited or saved location for choosing the destination.
7Verify the selection of destination works fine.
8Verify that on selecting a destination, the map gets zoom out and shows the destination.
9Verify that there is an option to search location.
10Verify the selection of all the available types of vehicle class.
11Verify the prices of the vehicle are displayed correctly.
12Book 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.
13On a confirmed booking, the app should show the cab and driver details.
14Verify the map shows the driver’s location and estimated time to arrive.
15Verify the map gets updated with the location of the driver.
16Verify there is an option to call/message the driver.
17Verify the cancellation option is available once the booking is confirmed.
18Verify on cancellation the current booking is aborted and cancellation charge is deducted if applicable.
19Book 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.NoTest Cases
1Verify at one time only one booking is allowed
2Verify multiple bookings can be scheduled for different times.
3Verify the behavior of network interruption while booking a cab.
4Verify the driver canceling the booking.
5Verify the behavior when a search of a cab is in progress and a phone comes in.