3.4 KiB
3.4 KiB
End-to-End (E2E) Test Plan
Feature: Anonymous Desire Aggregator Date: 2025-10-09
This document outlines the manual test plan for verifying the end-to-end functionality of the application.
Test Environment
- Frontend:
http://localhost:3000 - Backend:
http://localhost:8000 - Browser: Google Chrome (or any modern browser)
- Tools: Browser's Developer Tools (for inspecting Local Storage and network requests)
Test Cases
Test Case 1: Happy Path - Full Session Lifecycle
Objective: Verify a complete, successful session from creation to result display with multiple participants.
Steps:
-
Participant 1 (Creator): Create Session
- Open a browser and navigate to
http://localhost:3000. - In the "Topic" field, enter "Team Lunch".
- In the "Number of Participants" field, enter "3".
- Click "Create Session".
- Expected: The user is redirected to a new URL (e.g.,
/session/some-uuid). The session ID should be visible in the URL. - Copy the session URL.
- Open a browser and navigate to
-
Participants 2 & 3: Join Session
- Open two new browser windows (or incognito tabs) and paste the session URL into each.
- Expected: All three browser windows should now show the "Waiting for 3 more participants..." message, which should update as each new participant joins.
-
All Participants: Submit Desires
- Participant 1:
- Wants: "Pizza"
- Accepts: "Sushi", "Salad"
- No-Goes: "Burgers"
- Click "Submit".
- Participant 2:
- Wants: "Sushi"
- Accepts: "Pizza", "Tacos"
- No-Goes: "Salad"
- Click "Submit".
- Participant 3:
- Wants: "Pizza"
- Accepts: "Tacos"
- No-Goes: "Sushi"
- Click "Submit".
- Expected: As each participant submits, the "Waiting for..." message should update. After the final submission, the creator's view should show a button to "Analyze Desires".
- Participant 1:
-
Participant 1 (Creator): Trigger Analysis
- Click the "Analyze Desires" button.
- Expected: A loading indicator should appear. After a few moments, all three browser windows should display the same results.
-
All Participants: Verify Results
- Expected Results (example):
- Go-to: "Pizza"
- Also good: "Tacos"
- Considerable: "Salad"
- No-goes: "Burgers", "Sushi"
- Expected: The "Considerable" section should be collapsed by default. Clicking it should expand to show the items.
- Expected Results (example):
Test Case 2: Edge Case - Participant Leaves and Rejoins
Objective: Verify that the session state remains consistent if a participant disconnects and reconnects.
Steps:
- Follow steps 1 and 2 from Test Case 1.
- Close the browser window for Participant 2.
- Re-open the session URL in a new window for Participant 2.
- Expected: The session should still show 3 participants, and the "Waiting for..." message should be accurate. The session should proceed normally when all desires are submitted.
Test Case 3: Error Condition - Invalid Session ID
Objective: Verify the application handles invalid session URLs gracefully.
Steps:
- Navigate to a non-existent session URL (e.g.,
http://localhost:3000/session/invalid-uuid). - Expected: The user should be shown a "Session not found" error message and be redirected to the home page to create a new session.