Files
gridpilot.gg/tests/e2e/bdd/profile/README.md
2026-01-21 23:46:48 +01:00

90 lines
3.1 KiB
Markdown

# Profile BDD E2E Tests
This directory contains BDD (Behavior-Driven Development) E2E tests for the GridPilot profile functionality.
## Test Coverage
### 1. Profile Main (`profile-main.spec.ts`)
Tests the main profile page where drivers can view and manage their profile.
**Scenarios:**
- Driver sees their profile information
- Driver can navigate to profile sub-pages
- Driver sees profile statistics and achievements
- Driver can view their avatar and personal details
### 2. Profile Leagues (`profile-leagues.spec.ts`)
Tests the profile leagues page where drivers can view their league memberships.
**Scenarios:**
- Driver sees list of leagues they are a member of
- Driver can view league details from their profile
- Driver can leave a league from their profile
- Driver sees league status and upcoming races
### 3. Profile Liveries (`profile-liveries.spec.ts`)
Tests the profile liveries page where drivers can manage their racing liveries.
**Scenarios:**
- Driver sees list of uploaded liveries
- Driver can view livery details and validation status
- Driver can navigate to livery upload page
- Driver sees livery preview and metadata
### 4. Profile Livery Upload (`profile-livery-upload.spec.ts`)
Tests the livery upload functionality for drivers.
**Scenarios:**
- Driver can upload a new livery
- Driver sees upload progress and validation
- Driver receives confirmation after successful upload
- Driver sees error messages for invalid uploads
### 5. Profile Settings (`profile-settings.spec.ts`)
Tests the profile settings page where drivers can update their personal information.
**Scenarios:**
- Driver can view their current profile settings
- Driver can update personal information
- Driver can save changes to their profile
- Driver sees validation errors for invalid input
### 6. Profile Sponsorship Requests (`profile-sponsorship-requests.spec.ts`)
Tests the sponsorship requests page where drivers can manage sponsorship opportunities.
**Scenarios:**
- Driver sees list of sponsorship requests
- Driver can accept sponsorship offers
- Driver can reject sponsorship offers
- Driver sees sponsorship details and terms
## Test Philosophy
These tests follow the BDD testing concept defined in `plans/bdd_testing_concept.md`:
1. **Focus on Outcomes**: Tests validate final user outcomes, not visual implementation.
2. **Gherkin Syntax**: Tests use Given/When/Then structure in comments.
3. **Acceptance Criteria**: Tests serve as the final source of truth for profile functionality.
4. **Playwright**: Tests use Playwright for E2E testing.
## Implementation Notes
- All test files are placeholders with TODO comments.
- Tests should be implemented using Playwright.
- Authentication setup should be shared across tests.
- Tests should validate final user outcomes, not implementation details.
- Tests should be independent and can run in any order.
## Directory Structure
```
tests/e2e/bdd/profile/
├── profile-main.spec.ts
├── profile-leagues.spec.ts
├── profile-liveries.spec.ts
├── profile-livery-upload.spec.ts
├── profile-settings.spec.ts
├── profile-sponsorship-requests.spec.ts
└── README.md
```