Prospects Module

CHAD2 Prospects Testing Playbook

Comprehensive QA guide for the Prospects module, covering strategy, rules, scenarios, and regression testing across all features and workflows.

The Business

Understanding what Prospects are and how they fit into the CHAD2 ecosystem.

📊What Are Prospects?

Prospects are non-member companies that have been identified as potential future members or are prior members who chose to stop their membership. They are not their own entity type—they are Company records that meet specific criteria in the system. A company becomes a Prospect when it is not a current member AND not marked as "dropped."

The Prospects module exists because ABC organizes prospect tracking and nurturing under a dedicated navigation space, complete with its own admin panel, reporting interface, and conversion funnel workflows. This allows chapters to systematically track and manage relationships with companies that could become members.

Key Insight Prospects are a data-driven filter applied to the Company entity, not a separate company type. The module provides the interface and tools to work with these filtered records.

📋Three Data Areas within Prospects

The Prospects module organizes company information into three distinct data areas:

  • Prospect Information: Tracks the prospect's engagement level, current status in the conversion funnel, and staff assignments. Fields include Level of Interest, Prospect Status, and Staff 1 & 2 (integer counts).
  • Lead Source Information: Records how the prospect was identified. Fields capture Source (origin of the lead), Date (when identified), Note (context), and Company (multi-input for related entities).
  • BEAM Club Integration: Tracks the member referral program. BEAM Club is where individual members sponsor or recruit new member companies, earn points (1 point per sponsorship, split evenly if 2 sponsors), and achieve award levels based on cumulative points.

These three areas work together to give chapters a 360-degree view of each prospect, from initial discovery through conversion or long-term nurturing.

🎯Conversion Funnel & Nurturing

The primary business purpose of the Prospects module is to enable chapters to track and nurture prospects down the conversion funnel. By maintaining structured prospect records with LOI (Level of Interest), status, and lead source, chapters can:

  • Identify "hot" prospects ready for immediate engagement
  • Segment prior members for re-engagement campaigns
  • Measure lead source effectiveness
  • Assign staff liaisons to guide prospects through the funnel
  • Track BEAM Club sponsor relationships

🔐Permissions Architecture

Access to the Prospects module is controlled by four permission levels:

  • Level 0: No access to the Prospects Landing Page or any prospect features
  • Level 1: View-only access—can browse prospects and run reports
  • Level 2: Modify access—can view and edit prospect records and data
  • Level 3: Admin access—full control including admin panel, system settings, and advanced features

The Prospects module maintains its own permission model separate from the broader Contacts system, allowing for granular control of prospect management workflows.

Permission testing must verify that each level correctly restricts or allows access to the landing page, browsing, editing, and admin features.

🌍Module Architecture

The Prospects module leverages the Contacts system infrastructure but operates as a distinct feature within CHAD2:

  • Uses Company records from the Contacts system
  • Adds prospect-specific fields (LOI, Status, Lead Source, Staff)
  • Provides dedicated navigation and landing page
  • Includes its own admin panel for system configuration
  • Offers Prospects-specific reporting and export functions
  • Integrates with the BEAM Club program for member referrals

How It Works

The Browse screen, data model, and export workflows that power the Prospects module.

Browse Prospects Screen (Selective Reporting) ABC-1125

The Browse Prospects Screen is the main landing page for the Prospects module. It implements Selective Reporting, allowing users to filter a large prospect database by multiple criteria and view results in a customizable column layout.

Filterable Criteria

  • Company Type: Defaults to "Prospect"; other values may apply
  • Types: Multi-select filter; options include "prior members" and "dropped"; default is "prior members"
  • Level of Interest (LOI): Defaults to "hot"; filters prospects by engagement level
  • Work Types: Multi-select filter for industry or classification
  • Lead Source Dates: Date range filter for when lead was identified
  • Staff: Filter by assigned staff member
  • Add Date: Filter by when prospect was added to system
  • Join Date: Filter by when company joined (if applicable)
  • Region: Geographic filter

Result Columns

The browse results display the following columns (user-selectable):

  • Company Type
  • Company Status
  • Level of Interest (LOI)
  • Company Name
  • Phone
  • Primary Contact
  • Individual Status
  • Mobile
  • Recruit/Prospect Status
  • Category
  • City
  • State
  • Date Added
  • Date Joined
  • Last Active Year
  • Work Types
  • BEAM Sponsor 1
  • Region

Users can export results using any of the eight export workflows described below.

Prospect Company Record Fields ABC-857

When viewing or editing a Company record that is a Prospect, the following fields appear on the Prospect section of the company detail page:

Field Type Description
Level of Interest Dropdown (single-select) Engagement level: cold, warm, hot. Used to segment and prioritize prospects.
Prior Member? Boolean/Flag Indicates whether this prospect was previously a member. Affects filtering and reporting.
Prospect Status Dropdown (single-select) Current position in funnel: e.g., Initial Contact, Proposal Sent, Negotiating, etc.
Staff 1 Integer First assigned staff member (ID or count)
Staff 2 Integer Second assigned staff member (ID or count)
Lead Source Data Model

Lead Source information is stored on the Prospect Company record and includes:

  • Source: How the lead was identified (e.g., referral, event, web, cold call, etc.)
  • Date: When the lead was acquired or identified
  • Note: Free-text context about the lead (who referred, event details, etc.)
  • Company: Multi-input field for related company entities (referral source, partner, etc.)

Lead Source data enables chapters to track the effectiveness of different acquisition channels and credit the right sources for prospect generation.

Recruit/Prospect Status

The Recruit Status field is a dropdown single-select that appears on prospect records. It tracks the current recruiting status and may include values such as:

  • Prospect
  • Recruit in Progress
  • Recruit Accepted
  • Not Interested

This field helps chapters manage the recruitment pipeline and quickly identify which prospects are actively being pursued.

Export Workflows

The Prospects module provides eight export workflows to support various reporting needs:

Export Format Purpose Ref
Prospect List Excel Excel Core prospect list with all filtered data ABC-1124
Prior Members Excel Excel Prior members only (requires Prior Member? flag = true) ABC-1121
List with Sponsors Excel Prospect list including BEAM Club sponsor info ABC-1120
List with Staff Excel Prospect list including assigned staff members ABC-1119
Sort by Sponsor Excel All prospects sorted/grouped by BEAM sponsor ABC-1118
Sort by Liaison Excel All prospects sorted/grouped by assigned liaison ABC-1117
Info Sheet PDF PDF Formatted prospect information sheet for outreach ABC-1122
Prior Members Info Sheet PDF Info sheet for prior members only ABC-1123

Critical Note: All exports respect the current filter state on the browse screen. Sort options (Sort by Sponsor, Sort by Liaison) apply to applicable list exports.

BEAM Club Integration

BEAM Club is ABC's member referral program. It tracks which individual members have sponsored or recruited new member companies and rewards them with points and award levels.

How BEAM Club Works

  • Sponsor Assignment: When a prospect is recruited into membership, one or two sponsors (individual members) can be credited.
  • Point Calculation: Each sponsorship = 1 point. If two sponsors are assigned, each receives 0.5 points (split evenly).
  • Award Levels: Sponsors earn tiered awards based on cumulative point totals (e.g., Bronze at 5 points, Silver at 15, Gold at 30, Platinum at 50, etc.).
  • Visibility: The BEAM Club Sponsor field appears on prospect records and in browse results, allowing chapters to track sponsor relationships.

The Prospects module integrates BEAM Club data to enable chapters to recognize and reward their most active referral partners.

Glossary

Common terms and concepts used throughout the Prospects module.

Prospect

A Company record that is not a current member and is not marked as "dropped." Prospects are the primary entity managed in the Prospects module.

Prior Member

A company that was previously a member of ABC but is no longer active. Prior members may be candidates for re-engagement campaigns. Tracked via the Prior Member? flag.

Dropped Member

A company that was a member and explicitly chose to terminate membership. Dropped members are excluded from the Prospects module (they fail the Prospect filter).

Level of Interest (LOI)

A prospect engagement metric: Cold (minimal interest), Warm (some interest), or Hot (high interest). Used to prioritize outreach and nurturing.

Recruit Status

A dropdown field tracking the current recruiting status of a prospect (e.g., Prospect, Recruit in Progress, Recruit Accepted, Not Interested).

Lead Source

Metadata tracking how a prospect was identified: Source (origin), Date (acquired), Note (context), Company (related entities). Enables ROI analysis on acquisition channels.

BEAM Club

ABC's member referral program. Individual members sponsor new member recruits, earning points (1 per sponsorship, split if 2 sponsors) and award levels based on cumulative points.

Sponsor

An individual member who has referred or recruited a new member company. Sponsors earn BEAM Club points and awards for successful recruits.

Liaison

A staff member assigned to guide a prospect through the conversion funnel. Liaisons are tracked via Staff 1 and Staff 2 fields on the prospect record.

Info Sheet

A formatted PDF document containing prospect information for outreach, nurturing, or reference. Generated via the Info Sheet PDF and Prior Members Info Sheet exports.

Selective Reporting

The Browse Prospects Screen's filtering and column-selection capability, allowing users to filter a large dataset and customize result display.

Conversion Funnel

The journey a prospect takes from initial discovery to membership. Tracked via Prospect Status field and supported by the module's nurturing and export workflows.

Work Types

Industry, classification, or service categories used to segment prospects. Used as a filter in the browse screen and exported in result lists.

Company Type

A classification field on Company records. In the Prospects module, the Company Type filter defaults to "Prospect" to ensure the browse screen shows prospect records.

Prospect Status

A dropdown field on prospect records tracking position in the conversion funnel (e.g., Initial Contact, Proposal Sent, Negotiating, Won, etc.).

AQC (Account Qualification Criteria)

ABC's standards for qualifying a company as a potential prospect. Used to determine which non-members enter the Prospects pipeline.

STEP Safety Program

An ABC program or certification. May be referenced in prospect work types or recruitment criteria, depending on chapter configuration.

Test Strategy

Risk-based, data-driven QA approach for comprehensive coverage.

🎯Feature Coverage Areas

QA testing of the Prospects module must cover the following feature areas:

  • Browse & Filter: All filterable criteria (Company Type, Types, LOI, Work Types, Lead Source Dates, Staff, Add Date, Join Date, Region) must work correctly and respect default values.
  • Export Functions: All eight export types must generate correctly, include accurate data, and respect applied filters and sort options.
  • Prospect Company Record Fields: LOI, Prior Member?, Prospect Status, Staff 1, Staff 2, and Lead Source fields must be readable, writable, and persist correctly.
  • Recruit Status: The dropdown field must allow selection of valid values and persist changes.
  • Permission Boundaries: All four permission levels (0, 1, 2, 3) must correctly restrict or allow access to landing page, browse, editing, and admin features.
  • BEAM Club Integration: Sponsor field display, point calculation logic, and award level tracking must function correctly.
  • Performance & Stability: Large prospect datasets must not cause memory exhaustion or rendering issues.

⚠️Risk-Based Testing Focus

Based on the system's history and complexity, prioritize testing in these high-risk areas:

  • Export Accuracy (ABC-1124, ABC-1121, ABC-1120, ABC-1119, ABC-1118, ABC-1117, ABC-1122, ABC-1123): Exports must include only the data matching applied filters. Data integrity is critical for chapter planning and outreach.
  • Permission Boundaries (Levels 0–3): Unauthorized users must not be able to access the Prospects landing page or edit prospect records. Permission leaks are security risks.
  • Memory Issues (ABC-2388): Large prospect datasets previously caused memory exhaustion. Test with varying data volumes to ensure the fix is stable.
  • Validation Errors (ABC-2730): The browse screen previously displayed validation errors by default. Ensure the fix prevents spurious error displays.
  • Default Filter Values: LOI defaults to "hot," Company Type to "Prospect." Test that these defaults load correctly and can be overridden by user selection.
QA Note Pay special attention to data matching between browse filters and export results. A common regression is filters being applied to display but not to exports, causing mismatched result sets.

📊Data-Driven Test Design

Create a balanced test dataset that represents realistic prospect distributions:

  • Prospect Types: Include prior members, dropped members (as control data), and active prospects with varying LOI levels (cold, warm, hot).
  • Lead Sources: Represent multiple channels (referral, event, web, cold call) with varying dates to test date range filters.
  • Staff Assignments: Test both single and dual staff assignments (Staff 1, Staff 2) on prospects.
  • BEAM Club Sponsors: Include prospects with 0, 1, and 2 sponsors to test point split logic and sort-by-sponsor workflows.
  • Volume Scaling: Test with small (10–50 records), medium (100–500), and large (1000+) prospect sets to identify performance thresholds.

🔍Test Execution Plan

Execute testing in this order to maximize efficiency and catch blockers early:

  1. Smoke tests: Browse loads, at least one filter works, one export generates
  2. Browse & Filter: All filter criteria individually and in combination
  3. Export accuracy: Verify each export type matches applied filters and includes correct columns
  4. Prospect record fields: LOI, Prior Member?, Status, Staff, Lead Source CRUD operations
  5. Permission boundaries: Test all four levels for landing page, browse, edit, admin access
  6. BEAM Club: Sponsor display, point calculation, award level verification
  7. Regression suite: Run against known bugs (ABC-2388, ABC-2730, ABC-2337, ABC-3097, ABC-3528)
  8. Performance: Test memory and rendering with large dataset (1000+ prospects)

Business Rules & Gotchas

Critical behaviors, edge cases, and known issues to verify during testing.

What Defines a Prospect?

A Prospect is a Company that is NOT a member AND NOT marked as "dropped."

This is a data-driven filter, not a formal company type. When QA browses the Prospects module, it should show only companies that meet both criteria:

  • Is not in the active member list (Member Status is not "Active" or equivalent)
  • Does not have a "dropped" flag set to true

Testing must verify that the prospect filter correctly excludes current members and dropped companies. Any company that is neither member nor dropped should appear when browsed.

Gotcha: A company that drops from membership must be explicitly marked as "dropped" in the system; simply removing membership status does not automatically exclude it from Prospects. QA must test both scenarios to ensure the filter logic is correct.
Prior Member Export Rules

The Prior Members Excel and Prior Members Info Sheet exports must include ONLY prior members when the Prior Member? flag is true.

This is a stricter filter than the general browse filter. When running the "Prior Members" export, the system should:

  • Apply all active filters from the browse screen (LOI, Staff, Region, etc.)
  • Additionally filter to include only records where Prior Member? = true
  • Exclude any prospect that is not marked as a prior member, even if it passes other filters

Testing must validate that prior member exports do not include non-prior-member prospects, even when other filter criteria match.

Default Filter Values

The Browse Prospects Screen initializes with specific default filter values:

  • Company Type: Defaults to "Prospect" to ensure the browse shows only prospect records
  • Level of Interest (LOI): Defaults to "hot" to surface prospects with highest engagement
  • Types: Defaults to "prior members" in the multi-select filter for Types

These defaults should load on page load and can be overridden by user interaction. Testing must verify:

  • Defaults load correctly on initial page load
  • Results reflect the default filter values
  • User can override any default by selecting different filter criteria
  • User selection persists during the session (or clears on page refresh, depending on design)
Export Format Specifics

Different export types have distinct format requirements:

  • Prospect List Excel: Excel format (.xlsx), includes all filtered results with standard columns
  • Prior Members Excel: Excel format (.xlsx), filtered to prior members only
  • List with Sponsors: Excel format, includes BEAM Club sponsor information alongside prospect data
  • List with Staff: Excel format, includes assigned Staff 1 and Staff 2 information
  • Sort by Sponsor: Excel format, results are grouped or sorted by BEAM sponsor
  • Sort by Liaison: Excel format, results are grouped or sorted by assigned liaison (staff)
  • Info Sheet PDF: PDF format (.pdf), formatted for human-readable reference during outreach
  • Prior Members Info Sheet: PDF format (.pdf), formatted for prior member outreach

Testing must verify that exports generate in the correct format and are downloadable.

Sort Options Apply to List Exports

The "Sort by Sponsor" and "Sort by Liaison" options apply to ALL applicable list exports from the browse screen.

This means:

  • If a user selects "Sort by Sponsor" and runs the "Prospect List Excel" export, the results should be sorted/grouped by sponsor
  • If "Sort by Liaison" is selected before exporting, all list-based exports (Excel, not PDF) should be grouped by liaison
  • Sort options should NOT affect PDF info sheet exports (formatting is fixed)

Testing must verify that sort options correctly propagate to each export type where applicable.

BEAM Club Point Calculation

1 point per sponsorship; split evenly between 2 sponsors.

  • If a prospect is recruited with 1 sponsor assigned: Sponsor earns 1.0 point
  • If a prospect is recruited with 2 sponsors assigned: Each sponsor earns 0.5 points
  • Award levels are based on cumulative sponsor points (e.g., Bronze at 5 points, Silver at 15, etc.)

Testing must verify that point splits are calculated correctly and award levels update as sponsors accumulate points.

Gotcha: Point calculations may happen asynchronously. QA should verify both immediate and eventual consistency of sponsor point totals and award levels.
Permission Levels & Access Control

The Prospects module enforces four permission levels with specific access boundaries:

Level Landing Page Browse Edit Records Admin Panel
0 No No No No
1 Yes Yes No No
2 Yes Yes Yes No
3 Yes Yes Yes Yes

Testing must create users at each level and verify access boundaries. Level 0 users should not even see a navigation link to Prospects. Level 1 users should not be able to modify data. Level 3 users should have unrestricted access including admin functions.

Known Issues & Fixes to Verify

The following issues have been reported and fixed. QA regression testing must verify these fixes are stable:

  • ABC-2730: Browse screen showed validation errors by default (fixed). Verify that the browse screen loads without spurious validation error messages unless user input is actually invalid.
  • ABC-2388: Memory exhaustion with large prospect sets (fixed). Test with 1000+ prospects to ensure memory usage remains stable and UI remains responsive.
  • ABC-2337: Member Type was showing as number instead of label (QA Verified). Verify that all member/prospect type fields display as human-readable labels, not numeric codes.
  • ABC-3097: Prospect status showed duplicate data (fixed). Verify that Prospect Status field does not display duplicate entries or options.
  • ABC-3528: Removed date_renewed and date_reinstated fields; changed "Last Active Year" to "Last Year Paid" in browse results and exports. Verify that old fields do not appear and the new field displays correctly.

Scenario Thinking

Real-world workflows and use cases to validate through end-to-end testing.

New Prospect Onboarding Flow

Scenario: A chapter receives a referral for a potential new member company and needs to add it to the prospects pipeline.

Test Steps

  1. Navigate to Contacts and create a new Company record (company name, phone, primary contact, etc.)
  2. Set Company Status to a non-member value (or leave blank to exclude from member list)
  3. Switch to the Prospects module landing page—verify the new company appears in the browse screen
  4. Click into the company record and populate Prospect fields:
    • Set Level of Interest to "hot" (or appropriate value)
    • Set Prospect Status to "Initial Contact"
    • Add Lead Source: Source = "Referral", Date = today, Note = "Referred by John Doe", Company = [referrer company]
    • Assign Staff 1 to a liaison (staff member) responsible for follow-up
  5. Save the record
  6. Run the "Prospect List Excel" export and verify the new prospect appears in the results
  7. Verify that the Lead Source data appears in the export (date, source, note, company)

Expected Outcome: New company flows through system as a prospect with all metadata correctly recorded and queryable via browse and export.

Bulk Prospect Reporting for Outreach

Scenario: A chapter's sales director wants to identify all "hot" prospects in a specific region to plan an outreach campaign. They want to export a list with sponsors so they can credit referral partners.

Test Steps

  1. Navigate to Prospects landing page
  2. Set filters:
    • Level of Interest = "hot"
    • Region = [target region]
    • Leave other filters at defaults
  3. Verify results display only hot prospects in the target region
  4. Click "Export" and select "List with Sponsors"
  5. Download and open the Excel file
  6. Verify that:
    • All rows have LOI = "hot"
    • All rows have Region = target region
    • The BEAM Sponsor 1 column is populated (or empty where no sponsor is assigned)
    • Row count matches the browse results count

Expected Outcome: Export contains accurate filtered data with sponsor information for outreach planning.

Prior Member Re-Engagement Campaign

Scenario: A chapter wants to run a re-engagement campaign targeting prior members. They need to export a formatted info sheet to send to former member contacts.

Test Steps

  1. Navigate to Prospects landing page
  2. Set filters:
    • Types = "prior members" (may already be default)
    • Leave other filters open to include all prior members regardless of LOI or region
  3. Verify browse results display prior member companies
  4. Click "Export" and select "Prior Members Info Sheet"
  5. Download and open the PDF file
  6. Verify that:
    • PDF is properly formatted for human reading (not raw data)
    • Company names, phone, primary contact appear clearly
    • No non-prior-member companies appear in the sheet
    • Each prior member record is on its own page (or grouped appropriately)
  7. Verify that the row count in browse matches the number of records/companies in the PDF

Expected Outcome: PDF info sheet is properly formatted and contains only prior members, ready for outreach campaign distribution.

Permission Boundary Testing

Scenario: Verify that users with different permission levels can only access the features they are authorized for.

Test Steps (Run for Each Permission Level)

  1. Level 0 user:
    • Log in with a Level 0 user
    • Verify no "Prospects" navigation link is visible
    • Attempt to directly access the Prospects URL—should be redirected or denied
    • Verify cannot view, browse, or edit any prospect records
  2. Level 1 user:
    • Log in with a Level 1 user
    • Verify "Prospects" navigation link is visible
    • Click to browse prospects—should load successfully
    • Click into a prospect record to view details—should show read-only view
    • Attempt to edit a field (e.g., LOI)—should be disabled or rejected
    • Attempt to access admin panel—should be denied
  3. Level 2 user:
    • Log in with a Level 2 user
    • Browse prospects and open a record
    • Edit a prospect field (e.g., change LOI to "warm")—should be allowed
    • Save the change—should persist
    • Attempt to access admin panel—should be denied
  4. Level 3 user:
    • Log in with a Level 3 user
    • Browse and edit prospects—should all work
    • Access admin panel—should be available
    • Verify can modify system settings (if applicable)

Expected Outcome: Each permission level grants exactly the intended access, with no leakage to lower levels.

BEAM Club Sponsor Tracking & Award Level Verification

Scenario: A sponsor recruits multiple new members and should earn points and advance through award levels. Verify that sponsor records correctly reflect point totals and awards.

Test Steps

  1. Identify or create a test sponsor (individual member in ABC)
  2. Create prospect companies and assign this sponsor:
    • Prospect 1: Assign this sponsor as sole sponsor (1 point)
    • Prospect 2: Assign this sponsor as sole sponsor (1 point, total = 2)
    • Prospect 3: Assign this sponsor and another sponsor (0.5 points, total = 2.5)
  3. Convert these prospects to members (if system has a conversion workflow)
  4. Verify that the sponsor's BEAM Club record shows:
    • Total points = 2.5
    • Award level updates based on point thresholds (e.g., Bronze = 5, so not yet Bronze)
  5. Add more sponsors (4 more individual recruits) to reach 6.5 points
  6. Verify award level advances to Bronze (if 5-point threshold exists)
  7. Run the "Sort by Sponsor" export and verify this sponsor's name appears with all their prospects

Expected Outcome: Sponsor points accumulate correctly, award levels advance when thresholds are met, and sponsor data is visible in exports.

Regression Checklists

Systematic checklists for regression testing at different depths.

Smoke Test Checklist

Quick validation that core features are not broken. Run after any deployment.

  • Prospects landing page loads without errors or blank content
  • Browse Prospects screen displays at least 1 prospect company
  • At least one filter (e.g., LOI) can be applied and results update
  • At least one export (e.g., Prospect List Excel) generates and downloads successfully
  • A prospect company record can be opened and viewed
  • Prospect fields (LOI, Status) are readable on the record

If any smoke test fails, escalate to development—do not proceed with deeper testing.

Browse & Filter Regression Checklist

Comprehensive validation of filtering and column selection.

Default Values

  • On initial load, Company Type defaults to "Prospect"
  • On initial load, LOI defaults to "hot"
  • On initial load, Types defaults to "prior members"
  • Results respect default filter values (only show hot prospects, prior members)

Filter Criteria (Individual Testing)

  • Company Type filter works (try "Prospect", other types if available)
  • Types multi-select works (prior members, dropped members, both, etc.)
  • Level of Interest (LOI) dropdown works for all values (cold, warm, hot)
  • Work Types multi-select filter works
  • Lead Source date range picker works (from date, to date)
  • Staff dropdown/multi-select filter works
  • Add Date range filter works
  • Join Date range filter works
  • Region filter works (if applicable)

Filter Combinations

  • Multiple filters can be combined (e.g., LOI="hot" AND Region="North")
  • Results correctly reflect all applied filters
  • Clearing a filter updates results immediately
  • Clearing all filters returns to default filter state (or shows all non-members)

Result Columns

  • All expected columns are available in result set (Company Name, Phone, LOI, etc.)
  • Column data is accurate (company names match source, phone numbers correct, etc.)
  • Column selection UI allows user to show/hide columns (if supported)
  • "Last Active Year" column displays (formerly "Last Year Paid")

Pagination & Performance

  • Small result sets (< 50 records) load and render instantly
  • Medium result sets (100–500 records) load and render within acceptable time (< 3 sec)
  • Large result sets (1000+ records) do not freeze or exhaust memory
  • Pagination controls work (if applicable) to navigate results
Export Regression Checklist

Validation of all eight export workflows and data accuracy.

All Eight Exports Generate

  • ABC-1124 Prospect List Excel generates and downloads
  • ABC-1121 Prior Members Excel generates and downloads
  • ABC-1120 List with Sponsors Excel generates and downloads
  • ABC-1119 List with Staff Excel generates and downloads
  • ABC-1118 Sort by Sponsor Excel generates and downloads
  • ABC-1117 Sort by Liaison Excel generates and downloads
  • ABC-1122 Info Sheet PDF generates and downloads
  • ABC-1123 Prior Members Info Sheet PDF generates and downloads

Data Accuracy for Each Export

  • Prospect List Excel: Rows match browse filter results (same row count and companies)
  • Prior Members Excel: Only includes rows where Prior Member? = true
  • List with Sponsors: Includes BEAM Sponsor 1 column with correct data
  • List with Staff: Includes Staff 1 and Staff 2 columns with correct assignments
  • Sort by Sponsor: Results are grouped/sorted by sponsor name (verify grouping)
  • Sort by Liaison: Results are grouped/sorted by liaison/staff name
  • Info Sheet PDF: Formatted for reading; includes company name, phone, primary contact
  • Prior Members Info Sheet PDF: Contains only prior members; properly formatted

Filter Propagation to Exports

  • Apply a LOI filter (e.g., "hot") and export—verify all rows have LOI = "hot"
  • Apply a Region filter and export—verify all rows have matching region
  • Apply multiple filters and export—verify all rows match all filters
  • Export with no filters (or default filters)—results show appropriate default set

File Format Validation

  • All Excel exports open correctly in Microsoft Excel or LibreOffice Calc
  • All PDF exports open correctly in PDF reader
  • Excel files have proper headers and formatting
  • PDF files are readable and properly laid out
Permission Regression Checklist

Validation of all four permission levels and access boundaries.

Level 0 (No Access)

  • Prospects link not visible in navigation
  • Direct URL access to Prospects landing page redirects or shows error
  • Cannot access any prospect record view or edit pages
  • No prospect data visible to user in any context

Level 1 (View Only)

  • Prospects link visible in navigation
  • Can access Prospects landing page
  • Can browse and filter prospects
  • Can view prospect record details in read-only mode
  • Cannot edit prospect fields (LOI, Status, Lead Source, etc.)
  • Cannot run exports (or exports are disabled)
  • Cannot access admin panel

Level 2 (Modify)

  • Prospects link visible; can access landing page and browse
  • Can edit prospect fields on company records
  • Changes to fields persist (e.g., change LOI, refresh page, value is saved)
  • Can run exports
  • Cannot access admin panel

Level 3 (Admin)

  • Full access to browse, view, edit
  • Can access admin panel for system configuration
  • Can run all exports
  • Can modify any prospect record
  • Can access admin-only features (if any)
Prospect Record Fields Regression Checklist

CRUD validation for prospect-specific fields on company records.

Level of Interest

  • LOI field is readable on prospect record
  • LOI dropdown shows all valid values (cold, warm, hot, or custom values)
  • Can select a value and save (if Level 2+ permission)
  • Selected value persists after page refresh

Prior Member?

  • Prior Member? field is readable on prospect record
  • Field is a checkbox or boolean toggle
  • Can toggle the value (if Level 2+ permission)
  • Value persists after save and refresh
  • Setting Prior Member? = true makes the record eligible for "Prior Members" exports

Prospect Status

  • Prospect Status field is readable on prospect record
  • Dropdown shows all valid funnel states (Initial Contact, Proposal Sent, etc.)
  • Can select a value and save
  • Selected value persists after page refresh
  • No duplicate or malformed status values appear in dropdown

Staff 1 & Staff 2

  • Staff 1 field is readable and writable (integer or staff selector)
  • Staff 2 field is readable and writable
  • Can assign both a Staff 1 and Staff 2 to the same prospect
  • Values persist after save and refresh
  • Staff display shows human-readable names (not numeric IDs)

Lead Source

  • Lead Source fields (Source, Date, Note, Company) are readable on record
  • Can edit each field (if Level 2+ permission)
  • Date picker works for Lead Source Date
  • Company field accepts multiple entries (multi-input)
  • All Lead Source values persist after save and refresh
BEAM Club Regression Checklist

Validation of BEAM Club sponsor tracking, point calculation, and award levels.

Sponsor Display

  • BEAM Sponsor 1 field is visible on prospect records
  • BEAM Sponsor 1 column appears in browse results
  • BEAM Sponsor 1 is included in "List with Sponsors" export
  • Sponsor names display as human-readable text (not IDs)

Point Calculation

  • Sponsor earns 1 point per new member recruit (sole sponsor)
  • Sponsor earns 0.5 points per recruit when 2 sponsors are credited (split)
  • Point totals accumulate across multiple recruits
  • Sponsor point history is visible (if applicable)

Award Levels

  • Award levels are defined (Bronze, Silver, Gold, Platinum, etc.)
  • Sponsors are assigned award levels based on accumulated points
  • Award levels advance when point thresholds are reached
  • Award levels are visible on sponsor profile or in reports

Sort by Sponsor Export

  • "Sort by Sponsor" export groups prospects by sponsor name
  • All prospects assigned to a sponsor appear under their name
  • Sponsors with no assigned prospects do not appear
  • Sort order is consistent (alphabetical by sponsor, or by point total)

Environment & Data Setup

Test data requirements and environment configuration for comprehensive QA.

Test Data Requirements

Create a balanced test dataset representing realistic prospect distributions.

Prospect Companies (by Status & LOI)

  • Prior Members (10–15 records):
    • 5 with LOI = "hot" (re-engagement candidates)
    • 5 with LOI = "warm" (passive prospects)
    • 5 with LOI = "cold" (low engagement)
  • Active Prospects (15–20 records):
    • 7 with LOI = "hot" (primary focus)
    • 7 with LOI = "warm" (nurture)
    • 6 with LOI = "cold" (future potential)
  • Dropped Members (5–10 records):
    • Marked with "dropped" flag to test exclusion from Prospects
    • Used to verify that browse does not return dropped members
  • Current Members (5–10 records):
    • Control data to verify they are excluded from Prospects browse

Lead Source Variety

  • Referral (5+ records with referral company and date)
  • Event (5+ records with event name, date, and link)
  • Web (5+ records via website inquiry)
  • Cold Call (5+ records with note about outreach)
  • Other sources as applicable to your chapter

Staff Assignments

  • 10 prospects with Staff 1 assigned (single liaison)
  • 5 prospects with both Staff 1 and Staff 2 assigned (dual liaison)
  • 5 prospects with no staff assigned (unassigned)

BEAM Club Sponsors

  • Create 3–5 test sponsor accounts (individual members)
  • Assign 15+ prospects to these sponsors (various combinations)
  • Include some prospects with 2 sponsors assigned (for split point testing)
  • Recruit some prospects into membership to trigger point calculation

Geographic & Work Type Distribution

  • Distribute prospects across 3–5 regions (to test Region filter)
  • Assign 2–3 work types per prospect (to test Work Types filter)
  • Vary industry classification to ensure filter exercises different data paths

Date Distribution

  • Add dates spanning the past 12 months (to test date range filters)
  • Include recent additions (within past week) and old prospects (1+ year)
  • Lead Source dates should vary (some old, some recent)

Volume Tiers for Performance Testing

  • Small dataset: 10–50 prospects for smoke and basic regression
  • Medium dataset: 100–500 prospects for filter and export validation
  • Large dataset: 1000+ prospects to test memory and performance (ABC-2388 regression)
Permission Test Users

Create test users at each permission level for access control testing.

Username Permission Level Purpose
prospect.level0@test.com 0 (No Access) Verify no access to Prospects module, landing page blocked
prospect.level1@test.com 1 (View Only) Verify read-only access; edit operations blocked
prospect.level2@test.com 2 (Modify) Verify full browse and edit access; admin panel blocked
prospect.level3@test.com 3 (Admin) Verify full access including admin panel

Each user should have the same company access (to focus on Prospects permission testing) but different Prospects module permission levels.

Test Data Setup Workflow

Step-by-step process to create test data efficiently.

Phase 1: Create Core Companies

  1. Create 50–80 company records in the Contacts module (name, phone, city, state, region)
  2. Assign a subset to current member status (control data)
  3. Assign a subset to dropped status (control data)
  4. Leave the remainder as non-members (these become prospects by default)

Phase 2: Populate Prospect Fields

  1. For each non-member company, navigate to Prospects section
  2. Set Level of Interest (vary: cold, warm, hot distribution)
  3. Set Prospect Status (Initial Contact, Proposal Sent, etc.)
  4. Toggle Prior Member? flag for appropriate companies
  5. Assign Staff 1 and Staff 2 (using created test staff/liaison accounts)
  6. Add Lead Source data (Source, Date, Note, Company)

Phase 3: BEAM Club Setup

  1. Create 3–5 test sponsor accounts (individual members in ABC)
  2. On prospect records, assign sponsors in the BEAM Club section
  3. Use a mix: some with 1 sponsor, some with 2 (for split point testing)
  4. Trigger prospect-to-member conversions (if workflow exists) to activate point calculation

Phase 4: Verify Data and Prepare for Testing

  1. Browse Prospects and verify 50+ prospects appear (with appropriate filters)
  2. Run a sample export and verify data is included
  3. Spot-check a few prospect records to verify all fields are populated
  4. Verify sponsor point calculations have started (if applicable)
  5. Document the test data setup (counts, distribution, key records) for repeatability
Environment Configuration Checklist

Prepare the test environment for QA execution.

System & Browser

  • Test in modern browsers (Chrome, Firefox, Safari, Edge) for compatibility
  • Test on desktop and mobile viewports (responsive design validation)
  • Clear browser cache before smoke tests to ensure fresh data load
  • Disable any browser extensions that might affect form submission or filtering

CHAD2 Instance

  • Use a dedicated QA/test instance (not production)
  • Ensure Contacts module is fully functional (Prospects depends on it)
  • Verify database has adequate space for test data (especially volume tests)
  • Confirm admin access is available for setting up test users and permissions

Prospects Module Configuration

  • Verify Prospects module is enabled in system settings
  • Check that Prospects navigation link is visible to admin users
  • Confirm all eight export workflows are configured and callable
  • Verify BEAM Club integration is active (if applicable)

Test User Setup

  • Create four test users at permission levels 0, 1, 2, 3
  • Grant each user appropriate Prospects module permissions
  • Verify admin user can see admin panel for Prospects module
  • Test that Level 0 user cannot access Prospects at all

Data Setup

  • Load test data (50–80 companies with prospect attributes)
  • Verify test data is visible in browse (see "Test Data Setup Workflow" above)
  • Create snapshots or backups of test data state (for test reruns)
  • Document test data structure (counts, LOI distribution, staff assignments)

Known Issue Tracking

  • Ensure all known bugs (ABC-2388, ABC-2730, ABC-2337, ABC-3097, ABC-3528) are documented and assigned regression tests
  • Verify fixes are in the current build (check deploy logs or release notes)
  • Plan regression tests for these issues as part of every test cycle