upskill-event-manager/wordpress-dev/tests/manual/email-attendees-test-plan.md
bengizmo e6bdce4301 feat: Add Email Attendees functionality (Phase 2)
Implements the Email Attendees feature which allows trainers to:
- Email event attendees directly from the Event Summary page
- Filter attendees by ticket type
- Use a rich text editor to compose messages
- Include CC recipients
- Send personalized emails to selected attendees

Includes unit tests, integration tests, and E2E tests to verify functionality.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-05-20 10:33:03 -03:00

88 lines
No EOL
4.1 KiB
Markdown

# Email Attendees Feature - Manual Test Plan
This document outlines a manual testing plan for the Email Attendees functionality in the HVAC Community Events plugin.
## Prerequisites
- A WordPress site with The Events Calendar and Event Tickets plugins installed and activated
- The HVAC Community Events plugin installed and activated
- A user with the `hvac_trainer` role
- At least one event created by the trainer
- At least one attendee registered for the event
## Test Scenarios
### 1. Navigation and Access Control
| # | Test Case | Expected Result | Pass/Fail |
|---|-----------|-----------------|-----------|
| 1.1 | As a logged-in trainer, navigate to Event Summary page of your event | Event Summary page loads with event details and Email Attendees button is visible | |
| 1.2 | Click on Email Attendees button | Redirects to Email Attendees page with the same event ID | |
| 1.3 | Try to access Email Attendees page directly when logged out | Redirects to login page | |
| 1.4 | Try to access Email Attendees page for an event you don't own | Access denied message appears | |
### 2. UI Elements
| # | Test Case | Expected Result | Pass/Fail |
|---|-----------|-----------------|-----------|
| 2.1 | Load Email Attendees page for an event with attendees | Page shows event title, navigation buttons, email form, and list of attendees | |
| 2.2 | Verify form elements | Subject field, CC field, rich text editor, and recipient list are present | |
| 2.3 | Check navigation buttons | View Event Summary and Return to Dashboard buttons are functional | |
| 2.4 | Verify attendee list | List shows attendee names, emails, and ticket types | |
| 2.5 | Check for Select All functionality | Select All checkbox selects/deselects all attendees | |
### 3. Filtering
| # | Test Case | Expected Result | Pass/Fail |
|---|-----------|-----------------|-----------|
| 3.1 | With multiple ticket types, check if filter exists | Ticket type filter dropdown is visible with all ticket types | |
| 3.2 | Select a specific ticket type | Page reloads with only attendees of that ticket type | |
| 3.3 | Select "All Tickets" option | Page shows all attendees regardless of ticket type | |
### 4. Form Validation
| # | Test Case | Expected Result | Pass/Fail |
|---|-----------|-----------------|-----------|
| 4.1 | Submit form without subject | Error message indicates subject is required | |
| 4.2 | Submit form without message | Error message indicates message is required | |
| 4.3 | Submit form without selecting recipients | Error message indicates at least one recipient is required | |
| 4.4 | Enter invalid email in CC field | Error message indicates invalid email format | |
### 5. Email Sending
| # | Test Case | Expected Result | Pass/Fail |
|---|-----------|-----------------|-----------|
| 5.1 | Fill all required fields and submit | Success message indicates email was sent | |
| 5.2 | Check recipient receives email | Email is received with correct subject and content | |
| 5.3 | Send email with CC | CC recipient also receives the email | |
| 5.4 | Verify personalization | Email begins with attendee's name if available | |
| 5.5 | Check email subject | Subject contains event title and custom subject text | |
### 6. Edge Cases
| # | Test Case | Expected Result | Pass/Fail |
|---|-----------|-----------------|-----------|
| 6.1 | Access page for an event with no attendees | Message indicates no attendees available | |
| 6.2 | Try to email non-existent event | Redirects to dashboard with error message | |
| 6.3 | Test with a large number of attendees | List correctly paginates or scrolls, Select All works correctly | |
| 6.4 | Test with special characters in email fields | Special characters are properly escaped | |
## Test Results
**Tester:** ______________________
**Date:** ________________________
**Environment:** _________________
**Overall Result:** _______________
## Notes
- Record any bugs, issues, or unexpected behavior in this section
- Include browser and device information for any UI or display issues
- Document any performance concerns or usability issues
## Recommendations
- Add any recommendations for future improvements or feature enhancements here