- Objective: The objective of this test plan is to ensure the functionality and usability of the product listing page.
- Scope: The testing will cover all features and interactions available on the product listing page, including searching, navigation, product actions, pagination, and edge cases.
-
User Story: As a user, I want to view essential UI elements on the product listing page so that I can easily navigate and interact with the page.
-
Steps:
- Navigate to the product listing page.
- Verify the presence and layout of UI elements such as the "Product" heading, search input field, and action buttons like "Create a draft" , "Add to Amamzon" or "Import from amazon" depending on the user and "Go to Trash"
-
Expected Result: All essential UI elements are visible and positioned correctly on the page.
- User Story: As a user, I want to search for products on the product listing page so that I can quickly find the items I need.
- Steps:
- Enter the name of an existing product in the search field by ASIN and SKU.
- Verify that the product appears in the product list.
- Enter the name of a non-existent product in the search field.
- Verify that appropriate UI showed up for not found.
- Expected Result: Search returns relevant products and handles non-existent queries appropriately.
-
User Story: As a user, I want to navigate to other pages from the product listing page so that I can perform additional actions.
-
Steps:
- Click on the "Go to Trash" button .
- Verify navigation to the trash page means - ?state=deleted.
3.1. New User
- Click on "Add from Amazon" button. - We should be navigated to the "setting page" to connect our account with amazon
3.2. Already Connnected User
- Click on the "Import from Amazon" button. - We should be seeing the loading indicator that our actions is loading - We shoule be seeing the percentage status for importing our product - We should be seeing toaster message for finished importing product
- Click on the "Create a draft" button.
- Verify that if could take to you to the draft product page for you to optimize.
-
Expected Result: Navigation actions lead to the intended destinations and action dispatches.
- User Story: As a user, I want to perform actions on products listed on the page so that I can manage them effectively.
- Steps:
- Click on the "Optimize" button for a product.
- Verify navigation to the product editing page.
- Click on the "Move to trash" button for a product.
- Verify successful deletion and showing toaster for confirmation or product disapearance / moved to trash.
- Expected Result: Product actions perform their respective functions accurately.
- User Story: As a user, I want to navigate through multiple pages of products so that I can view more items.
- Steps:
- Check if only 20 products are displayed per page if 20+ product exists.
- Ensure the pagination disables when there no product.
- Navigate to different pages using pagination controls.
- Expected Result: Pagination controls allow navigation between pages, and the correct number of products is displayed per page.
- User Story: As a user, I want to perform actions on products in the trash so that I can manage them effectively.
- Steps:
- Navigate to the trash page.
- Click on the "Restore" button for a product.
- Verify successful restoration of the product to the active state.
- Click on the "Delete Permanently" button for a product.
- Verify successful permanent deletion of the product as toaster or someething like that.
- Expected Result: Product actions in the trash perform their respective functions accurately.
- User Story: As a user, I want to manage the trash bin to permanently remove products or restore them to the active state.
- Steps:
- Navigate to the trash page.
- Click on the "Leave the Trash" button.
- Verify navigation back to the product listing page.
- Click on the "Empty the Trash" button.
- Verify the opening of a confirmation popup.
- Confirm the deletion of all products in the trash.
- Expected Result: Trash management actions perform their respective functions accurately.
- User Story: As a user, I want the product listing page to render correctly on different browsers and devices so that I can access it from anywhere.
- Steps:
- Run tests on different browsers (e.g., Chrome, Firefox, Safari) with a multiple workers.
- Test the page layout and functionality on different screen sizes with custom or predefined devices fixtures like using Pixels 7 as standard for android and iPhone 10+ for iphone.
- Expected Result: The page renders correctly and functions as expected across various browsers and screen sizes.
- Operating System: [Fedore - Linux Distro]
- Browser: [Specify Browser(s)]
- Device: [Specify Device(s)]
- Test Results: [Specify Pass/Fail for each test case]
a place for writing any remarks or conclusion for that specific page