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>
88 lines
No EOL
4.1 KiB
Markdown
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 |