100 lines
2.9 KiB
Markdown
100 lines
2.9 KiB
Markdown
# Sponsor BDD E2E Tests
|
|
|
|
This directory contains BDD (Behavior-Driven Development) E2E tests for the sponsor functionality.
|
|
|
|
## Test Coverage
|
|
|
|
The sponsor functionality includes the following user journeys:
|
|
|
|
### 1. Sponsor Onboarding
|
|
- **sponsor-signup.spec.ts**: Tests sponsor account creation and login
|
|
- Landing page navigation
|
|
- Account registration with company details
|
|
- Login functionality
|
|
- Form validation
|
|
|
|
### 2. Sponsor Dashboard
|
|
- **sponsor-dashboard.spec.ts**: Tests the sponsor dashboard view
|
|
- Dashboard overview and statistics
|
|
- Navigation to different sponsor sections
|
|
- Quick actions and metrics display
|
|
|
|
### 3. Sponsorship Campaigns
|
|
- **sponsor-campaigns.spec.ts**: Tests sponsorship campaign management
|
|
- Viewing active/pending/approved/rejected sponsorships
|
|
- Filtering sponsorships by type
|
|
- Searching sponsorships
|
|
- Campaign statistics display
|
|
|
|
### 4. Billing & Payments
|
|
- **sponsor-billing.spec.ts**: Tests billing and payment management
|
|
- Viewing billing statistics
|
|
- Managing payment methods
|
|
- Downloading invoices
|
|
- Viewing transaction history
|
|
|
|
### 5. Sponsor Settings
|
|
- **sponsor-settings.spec.ts**: Tests sponsor account settings
|
|
- Profile management (company info, contact details)
|
|
- Notification preferences
|
|
- Privacy settings
|
|
- Account deletion
|
|
|
|
### 6. League Sponsorship Discovery
|
|
- **sponsor-leagues.spec.ts**: Tests browsing and discovering leagues
|
|
- Viewing available leagues for sponsorship
|
|
- League statistics and metrics
|
|
- Filtering and searching leagues
|
|
- Viewing sponsorship opportunities
|
|
|
|
### 7. League Detail & Sponsorship
|
|
- **sponsor-league-detail.spec.ts**: Tests detailed league view and sponsorship
|
|
- Viewing league details
|
|
- Understanding sponsorship slots
|
|
- Sponsorship pricing information
|
|
- League statistics
|
|
|
|
## Testing Philosophy
|
|
|
|
These tests follow the BDD concept defined in `plans/bdd_testing_concept.md`:
|
|
|
|
- **Focus on outcomes**: Tests validate final user outcomes, not visual implementation
|
|
- **Gherkin syntax**: Use Given/When/Then comments to describe scenarios
|
|
- **User-centric**: Tests describe what users can see and do
|
|
- **Placeholder structure**: Each test file contains TODO comments indicating what needs to be implemented
|
|
|
|
## Test Structure
|
|
|
|
Each test file follows this pattern:
|
|
|
|
```typescript
|
|
import { test, expect } from '@playwright/test';
|
|
|
|
test.describe('Feature Name', () => {
|
|
test.beforeEach(async ({ page }) => {
|
|
// TODO: Implement authentication and navigation setup
|
|
});
|
|
|
|
test('User can perform action X', async ({ page }) => {
|
|
// TODO: Implement test
|
|
// Scenario: User performs action X
|
|
// Given I am a registered sponsor
|
|
// And I am on the "Page Name" page
|
|
// When I perform action X
|
|
// Then I should see outcome Y
|
|
});
|
|
});
|
|
```
|
|
|
|
## Running Tests
|
|
|
|
Run sponsor BDD tests:
|
|
```bash
|
|
npx playwright test tests/e2e/bdd/sponsor/
|
|
```
|
|
|
|
Run specific test file:
|
|
```bash
|
|
npx playwright test tests/e2e/bdd/sponsor/sponsor-signup.spec.ts
|
|
```
|