IT 643 SOFTWARE DESIGN AND TESTING
CHAPTER 4 - TESTING
GROUP MEMBERS:
MANYA SINGH - 202412047
MONIKA GAUTAM - 202412049
DHARA PATEL - 202412065
HIRWA SARAIYA - 202412088
Project Name: Chapter 4 – Online Bookstore
Version: 1.0
Date: 30/11/25
The purpose of the Test Strategy document is to define the overall testing approach for the Chapter 4 Bookstore application. This e-commerce platform, built with React (Frontend) and .NET Web API (Backend), enables users to browse books, authenticate, add items to cart, wishlist, and complete purchases through secure payment integration.
This document outlines testing types, scope, tools, environments, responsibilities, and defect workflow.
- Ensure the Bookstore application functions as expected across all modules.
- Validate performance, usability, security, and reliability.
- Detect defects early and ensure high product quality.
- Ensure integrations (authentication, database) work correctly.
- Functional Testing
- Integration Testing
- Security Testing (basic)
- Performance Testing (API response validation)
- Usability Testing
- Cross-browser Testing
- Validation of 3rd party integrations (Razorpay, JWT Auth)
- Load/Stress testing
- Deep penetration testing (requires security team)
- Non-book modules not implemented
- Backend database backup/restore testing
Performed manually based on test cases. Includes:
- Login & Authentication
- Search & Filtering
- Book Catalog
- Cart & Wishlist
- Reviews and Ratings
- Checkout & Payments
- User Profile
- API integration with frontend
- Database interactions (EF Core)
Executed after every major change.
Complete end-to-end testing of the entire workflow.
Final validation by stakeholders.
- React 18
- Chrome, Firefox, Edge, Safari
- .NET 9
- SQLite
- Thunder Client for API validation
- JWT authentication enabled
- Thunder Client (API testing)
- GitHub (Version control)
- VS Code
- Browser DevTools
- Requirements finalized
- Build deployed to testing environment
- Test data prepared
- Necessary tools available
- All planned test cases executed
- Major defects fixed and verified
- No blocker or critical defects open
- Test Strategy
- Test Cases
- Test Summary Report
- Signup
- Login
- Logout
- Password validation
- Profile management
| Test Case ID | Scenario | Steps | Expected Result | Actual Result | Pass/Fail |
|---|---|---|---|---|---|
| AUTH_01 | Sign-up with valid details | 1. Open Sign-up page 2. Enter valid name, email, password 3. Click "Register" | User account created and redirected to login | User account created and redirected to login | Pass |
| AUTH_02 | Sign-up with existing email | Enter an already registered email | System shows “Email already exists” error | System shows “Email already exists” error | Pass |
| AUTH_03 | Sign-up with weak password | Enter password less than required strength | Password error message appears | Password error message appears | Pass |
| AUTH_04 | Login with valid credentials | Enter registered email + password | User logs in successfully and redirected to home | User logs in successfully and redirected to home | Pass |
| AUTH_05 | Login with wrong password | Enter wrong password | System shows “Invalid credentials” | System shows “Invalid credentials” | Pass |
| AUTH_06 | Login with unregistered email | Use email not in system | System shows “Account does not exist” | System shows “Account does not exist” | Pass |
| AUTH_07 | Logout | Click Logout button | User session ends and redirected to login page | User session ends and redirected to login page | Pass |
| AUTH_08 | Access profile page after logout | Logout → Attempt to open /profile | User is redirected to login | User is redirected to login | Pass |
| AUTH_09 | Profile update | Change profile fields → save | Profile saves successfully | Profile saves successfully | Pass |
- View all books
- View book details
- Categories listing
- Real-time availability
| Test Case ID | Scenario | Steps | Expected Result | Actual Result | Pass/Fail |
|---|---|---|---|---|---|
| CAT_01 | View all books | Navigate to “All Books” | User account created and redirected to login | List of books is displayed | Pass |
| CAT_02 | View books by category | Select “Indian” category | Only books in that category appear | Only books in that category appear | Pass |
| CAT_03 | Book availability shown | Open book card | “In Stock” or “Out of Stock” visible | “In Stock” or “Out of Stock” visible | Pass |
| CAT_04 | Click on book to view details | Click book title or card | Book details page opens | Book details page opens | Pass |
- Search by title
- Search by author
- Search by image
- Search with no results
| Test Case ID | Scenario | Steps | Expected Result | Actual Result | Pass/Fail |
|---|---|---|---|---|---|
| SRCH_01 | Search by title | Type valid title in search bar | Matching books appear | Matching books appear | Pass |
| SRCH_02 | Search by author | Type author name | Books by that author appear | Books by that author appear | Pass |
| SRCH_03 | Search by image | Select image | Books by that image appear | Books by that image appear | Pass |
| SRCH_04 | Search with no results | Enter random text | “No books found” message shows | No message appears | Fail |
| SRCH_05 | Apply category filter | Choose “Fiction” | Only fiction books displayed | Only fiction books displayed | Pass |
| SRCH_06 | Apply price filter | Set price range | Books within range are shown | Books within range are shown | Pass |
| SRCH_07 | Multiple filters together | Category + Price + Rating | Results match all filters | Results match all filters | Pass |
MODULE 4: Book Details
- Books Details
- Similar/recommended books
- Out-of-stock books
| Test Case ID | Scenario | Steps | Expected Result | Actual Result | Pass/Fail |
|---|---|---|---|---|---|
| DET_01 | Book details page loads | Open any book | Book title, author, price, description displayed | Book title, author, price, description displayed | Pass |
| DET_02 | Show similar/recommended books | Scroll to suggestions | Related books section appears | Related books section appears | Pass |
| DET_03 | Out-of-stock book cannot be purchased | Open out-of-stock item | "Add to Cart" disabled | "Add to Cart" disabled | Pass |
- Add to wishlist
- Remove from wishlist
- View wishlist
| Test Case ID | Scenario | Steps | Expected Result | Actual Result | Pass/Fail |
|---|---|---|---|---|---|
| WISH_01 | Add item to wishlist | Click “Add to Wishlist” | Item added; wishlist icon changes | Item added; wishlist icon changes | Pass |
| WISH_02 | Remove item from wishlist | In wishlist → remove item | Item removed | Item removed | Pass |
| WISH_03 | Wishlist persists after refresh | Add → Reload page | Items remain saved | "Add to Cart" disabled | Pass |
| WISH_04 | Add an already wishlisted item | Click wishlist again | Item removed | Item removed | Pass |
- Add to cart
- Change quantity
- Remove item
- Cart total calculation
| Test Case ID | Scenario | Steps | Expected Result | Actual Result | Pass/Fail |
|---|---|---|---|---|---|
| CART_01 | Add item to cart | Click “Add to Cart” from book detail | Item appears in cart | Item appears in cart | Pass |
| CART_02 | Increase quantity | Change qty + | Total updates correctly | Total updates correctly | Pass |
| CART_03 | Decrease quantity | Reduce quantity - | Total updates, quantity cannot go below 1 | Total updates, quantity cannot go below 1 | Pass |
| CART_04 | Remove item from cart | Click remove/delete | Item removed from cart | Item removed from cart | Pass |
| CART_05 | Cart total calculation | Add multiple items | Total = sum of item prices | Total = sum of item prices | Pass |
| CART_06 | Continue shopping | From cart, click continue shopping | Redirects back to catalog | Continue shopping button is not displayed | Fail |
| CART_07 | Cart empty message | Remove all items | “Your cart is empty” shown | “Your cart is empty” shown | Pass |
- Post review
- View others’ reviews
- Like review
- Dislike review
- Add rating
- Add review by image
| Test Case ID | Scenario | Steps | Expected Result | Actual Result | Pass/Fail |
|---|---|---|---|---|---|
| REV_01 | Add review (logged in) | Open book → Add review | Review successfully posted | Review successfully posted | Pass |
| REV_02 | Display reviews | Open book → scroll | Reviews load correctly | Reviews load correctly | Pass |
| REV_03 | Like review | Click ‘like’ button | Total like updates | Total like updates | Pass |
| REV_04 | Dislike review | Click ‘dislike’ button | Total dislike updates | Total dislike updates | Pass |
| REV_05 | Add rating | Select rating | Rating successfully posted | Rating successfully posted | Pass |
| REV_06 | Add a review with an image for a book | Enter a star rating, enter review text in the comment field, click “Upload Image” and select a valid image file. Click “Submit Review” | Review is submitted successfully and appears in the review list with the rating, text, and uploaded image displayed correctly. | Review is submitted successfully and appears in the review list with the rating, text, and uploaded image displayed correctly. | Pass |
- Address page
- Payment gateway integration
- Order confirmation page
- Successful/failed payment handling
| Test Case ID | Scenario | Steps | Expected Result | Actual Result | Pass/Fail |
|---|---|---|---|---|---|
| CHK_01 | Proceed to checkout | Click “Place order” | Redirects to address page | Redirects to address page | Pass |
| CHK_02 | Enter valid address | Fill all required fields | Address saved | Address saved | Pass |
| CHK_03 | Enter invalid address | Leave mandatory fields empty | Validation error | Validation error | Pass |
| CHK_04 | Choose payment option | Select UPI or Card | Payment screen loads | Payment screen loads | Pass |
| CHK_05 | Successful payment | Enter valid payment | Order success page appears | Order success page appears | Pass |
| CHK_06 | Order summary | After order → summary page | Order details visible | Order details visible | Pass |
| CHK_07 | Order stored in DB | Complete purchase | Order shown in user history | Order shown in user history | Pass |
-
Personalized suggestions
-
Recently viewed section
Books APIs
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/books | Get all books |
| POST | /api/books | Add new book (admin) |
Orders APIs
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/orders | Place order |
| POST | /api/orders/user/{email} | User order list |
Spin & win APIs
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/spin/spin/{email} | Perform spin |
| GET | /api/spin-options | Admin: get spin options |
| POST | /api/spin-options | Admin: add spin option |
Coupons APIs
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/coupons | Get all coupons |
This testing document ensures that Chapter 4 meets its functional, usability, security, and performance requirements before moving to production.



