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

4.1 KiB

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