Test‐plan: Shopping Cart & Promotions Requirements - camilagomo/camila-portifolio GitHub Wiki
📋 Test Plan - QACommerce
Test Plan according to ISO 29119-3 with User Stories Approach
1. OBJECTIVE
1.1 Plan Purpose
This document defines the testing strategy for the QACommerce system using a User Stories approach, ensuring that all functionalities are validated according to end-user needs and established functional requirements.
1.2 Specific Objectives
- ✅ Validate functionalities through real user scenarios
- ✅ Ensure each User Story is testable and validatable
- ✅ Implement behavior-based testing
- ✅ Validate user experience across different devices
- ✅ Ensure application quality and usability
1.3 User Stories Approach
- As a [end user type]
- I want [specific functionality]
- So that [benefit/objective]
- Acceptance Criteria: [how to validate]
2. VERSION
Version | Date | Author | Description |
---|---|---|---|
2.0 | 08/23/2025 | Camila Monteiro | Version with User Stories and ISO 29119-3 |
2.1 | 08/23/2025 | Camila Monteiro | Final review and adjustments |
3. SCOPE
3.1 User Stories in Scope
Shopping Cart User Stories
- US-CART-001: As a customer, I want to add products to cart so I can purchase them
- US-CART-002: As a customer, I want to change quantities in cart so I can adjust my purchase
- US-CART-003: As a customer, I want to remove products from cart so I can cancel items
- US-CART-004: As a customer, I want to view all cart items so I can review my purchase
- US-CART-005: As a customer, I want to see real-time purchase total so I can control my budget
- US-CART-006: As a customer, I want guidance when cart is empty so I know how to proceed
Coupon System User Stories
- US-COUPON-001: As a customer, I want to apply discount coupons so I can save on my purchase
- US-COUPON-002: As a customer, I want to remove applied coupons so I can cancel discounts
- US-COUPON-003: As a customer, I want clear feedback about valid and invalid coupons
Promotion System User Stories
- US-PROMO-001: As a customer, I want automatic discounts when reaching minimum values
- US-PROMO-002: As a customer, I want to understand available discount types (percentage or fixed amount)
- US-PROMO-003: As a customer, I want to see promotion rules so I can plan my purchase
User Interface User Stories
- US-UI-001: As a customer, I want to use the application on any device so I can shop anywhere
- US-UI-002: As a customer, I want to easily complete my purchase so I can finish the transaction
Administrative User Stories
- US-ADMIN-001: As an administrator, I want to create new promotions so I can attract more customers
3.2 Out-of-Scope Functionalities
- Data Persistence: Application runs in memory
- User Authentication: System without login
- Real Payment: Checkout simulation
- Backend/API: Frontend only
4. TEAM
4.1 Responsibilities
Role | Responsibility | Name |
---|---|---|
QA Analyst | Overall test coordination and User Stories | Camila Monteiro |
5. TEST STRATEGY
5.1 User Stories-Based Approach
- Behavior Testing: Validate if system behaves as expected by user
- Acceptance Testing: Verify if acceptance criteria are met
- Usability Testing: Validate end-user experience
- Scenario Testing: Execute complete user flows
5.2 Test Types per User Story
- Functional Testing: Validate if functionality works
- Acceptance Testing: Verify acceptance criteria
- Usability Testing: Validate user experience
- Integration Testing: Verify interaction between functionalities
6. ACTIVITIES AND ESTIMATES
6.1 Test Schedule per User Story
Phase | Duration | Activities |
---|---|---|
Planning | 1 day | Strategy definition and User Stories |
Preparation | 2 days | Test case creation based on User Stories |
Execution | 4 days | Test execution and criteria validation |
Reporting | 1 day | Results analysis and feedback |
6.2 Effort Estimates per User Story
User Story Category | Test Cases | Estimated Effort |
---|---|---|
Shopping Cart (6 US) | 18 | 8 hours |
Coupon System (3 US) | 9 | 4 hours |
Promotion System (3 US) | 9 | 4 hours |
User Interface (2 US) | 6 | 3 hours |
Administrative (1 US) | 3 | 2 hours |
Integration Testing | 4 | 3 hours |
Usability Testing | 6 | 3 hours |
Documentation | - | 2 hours |
Total | 59 | 29 hours |
6.3 Project Milestones per User Story
- 08/14/2025: User Stories approved and criteria defined
- 08/15/2025: Test cases created for all User Stories
- 08/16/2025: Test execution completed
- 08/16/2025: Final report delivered
7. ACCEPTANCE CRITERIA PER USER STORY
7.1 Shopping Cart User Stories
US-CART-001: Add Products
Acceptance Criteria:
- User can click "Add to Cart"
- Product appears in cart with quantity 1
- Visual feedback confirms addition
- Cart updates total automatically
US-CART-002: Change Quantities
Acceptance Criteria:
- + and - buttons are visible for each item
- Quantity increases when clicking +
- Quantity decreases when clicking -
- Item is removed when quantity reaches 0
US-CART-003: Remove Products
Acceptance Criteria:
- Trash icon is visible for each item
- Clicking trash removes the item
- Cart updates total after removal
- Item counter decreases correctly
US-CART-004: View Cart
Acceptance Criteria:
- All items are displayed with complete information
- Individual and total prices are shown
- Quantities are displayed correctly
- Product icons are visible
US-CART-005: Real-Time Total
Acceptance Criteria:
- Subtotal is calculated correctly
- Discounts are applied and displayed
- Final total is updated automatically
- Calculations are mathematically accurate
US-CART-006: Empty Cart
Acceptance Criteria:
- Clear message is displayed when cart is empty
- "Add Products" button is available
- User is guided on next steps
- Navigation to other pages works
7.2 Coupon System User Stories
US-COUPON-001: Apply Coupons
Acceptance Criteria:
- Field to enter coupon code is available
- Valid coupons are accepted and applied
- Discount is calculated and applied correctly
- Cart total is updated
US-COUPON-002: Remove Coupons
Acceptance Criteria:
- "Remove" button is visible for applied coupons
- Clicking remove removes the coupon
- Discount is removed from total
- Coupon field is cleared
US-COUPON-003: Validate Coupons
Acceptance Criteria:
- Invalid coupons show clear error message
- Minimum value rules are validated
- Tips are provided for invalid coupons
- Button to view promotions is available
7.3 Promotion System User Stories
US-PROMO-001: Automatic Discounts
Acceptance Criteria:
- Promotions are applied automatically
- Discounts appear in cart summary
- Total is updated with promotions
- Higher value promotions have priority
US-PROMO-002: Discount Types
Acceptance Criteria:
- Percentage discounts are calculated correctly
- Fixed amount discounts are applied correctly
- Discount types are clearly identified
- Calculations are accurate
US-PROMO-003: Promotion Rules
Acceptance Criteria:
- Minimum values are respected
- Promotions within deadline are applied
- Expired promotions are not applied
- Rules are consistent
7.4 User Interface User Stories
US-UI-001: Responsive Design
Acceptance Criteria:
- Interface works on desktop (1200px+)
- Interface works on tablet (768px-1199px)
- Interface works on mobile (320px-767px)
- Navigation is functional on all devices
7.5 Administrative User Stories
US-ADMIN-001: Create Promotions
Acceptance Criteria:
- Creation form is available
- All required fields are validated
- Promotion is created successfully
- New promotion appears in active list
8. APPROVALS
Role | Name | Signature | Date |
---|---|---|---|
Tech Lead | Adam | _________________ | 08/23/2025 |
Product Owner | Paula | _________________ | _________________ |
9. REFERENCES
- ISO 29119-3: Software and systems engineering
- User Stories: Agile methodology for requirements definition
- Acceptance Criteria: Validation criteria for each User Story
- Behavior-Driven Development: Approach for behavior-based testing
10. APPENDICES
A. Glossary of Terms
- User Story: Description of functionality from user perspective
- Acceptance Criteria: Conditions that must be met to accept a User Story
- US-XX: User Story identifiers
- BDD: Behavior-Driven Development