The better the site, the better the business.
An exemplary experience of an e-commerce site is of paramount importance because if that’s not the case the user might just leave with a bad impression for the site & never come back again. Hence, it becomes important to make sure that it’s major features are correctly implemented and are functioning as per the requirement.
Since so much depends on the user experience, it becomes important that the e-commerce site undergoes thorough testing.
A core user journey flow would cover login/signup, searching for a product, adding the product to cart, filling up the payment and order details and making payment.
So here is a list of scenarios which can be used as a guide to get started with testing the e-commerce site.
User creation and login
Most of the e-commerce sites allow the user to purchase an item as a guest user, the registered user or via any social network. So it’s important to consider all of these conditions when testing.
- As a guest user: – Validate that the user is able to purchase the item without having to create an account.
- Registered user: – Validate that the user is able to purchase an item with an existing account and with a newly created account.
- Create an account or log in during the checkout process and validate that the selected item gets added to the shopping cart.
- Login via any social network and validate that the user is able to make payment.
Searching, Sorting, Filtering and Pagination
The search feature allows the user to select the desired product from the thousands of products present on the site. Hence it’s important that the search shows relevant results.
- Perform a search by providing the product name, brand, category or sub-category. Validate that the search result page displays products that satisfy the search criteria with the most relevant products on top.
- On the search result page and the category page, validate that the filters functions as expected and displays the desired results. Apply both, single filters and multiple filters.
- Similarly, validate that the products are sorted according to the sorting option chosen and when paginating make sure that the sort order and filters applied remains.
Test your cart
Case 1: The Happy Flow.
Needless to say, the user should be able to add the desired product(s) in the shopping cart and proceed for payment as a registered user. Validate the same for the guest user.
Further, after the payment is successfully made, validate that the status of the bought product(s) gets updated accordingly under ‘my orders’/’my bookings’.
Case 2: Updating the products in the cart.
After adding the product(s) in the shopping cart, update the shopping cart before proceeding for the payment. The following scenes can be considered for the updating the cart:
Increase the quantity of a product from the cart.
- Add a new product
- Remove an added product from the cart
- Add the same item multiple times
For each of the above-mentioned scenes validate that the total amount displayed is correct.
Case 3: Product Inventory
- After the payment is made for a product, validate that the inventory of the product gets updated in the database.
- Buying a product for quantity which is greater than the quantity of product available.
- Verify that the product with inventory=0 is displayed as out of stock to the user.
For both case 2 and 3 an alert message should be displayed to the user when trying to add a product to cart.
Case 4: When two different users try to buy the same product simultaneously with only 1 item left.
One of the scenario for this case can be when two users try to buy the same product simultaneously with just 1 item in stock. User 1 and User 2 adds the product to the cart. While user 1 continues to add more products in the cart, user 2 makes the payment for the product. In such a case, an alert message should be displayed to the user 1 when he proceeds to make payment.
Case 5: Failed transaction
When the transaction is canceled during checkout or on the payment gateway page because of poor net connectivity, wrong card details provided, the user deliberately cancels the transaction or any other reason, validate that the status of the product(s) in the cart is changed accordingly.
Case 6: When the user does not proceed to make payment after adding a product to cart.
For the above case validate that the added products should be displayed to the user in his cart, everytime he logs in.
Case 7: The ‘Wishlist’
The wishlist feature provides an improved e-commerce experience and makes it easier for the customer to save the product(s) and return to it later. The scenarios for the wishlist feature can be:
- For a logged in user: Add an item to your wishlist and validate that the same is present in your wishlist the next time you log in.
- Validate that a user is able to move the product(s) from the wishlist to the shopping cart and proceed with the payment.
Apart from the above-listed scenarios, there can be many others. If you can think of any, please feel free to add it in the comment section.
By – Mansi Bhardwaj, Software Engineer QA