Phase 07: Testing & Polish - 3 plans created - 9 total tasks defined (all verification checkpoints + 1 checklist creation) - Ready for execution Plan breakdown: - 07-01: Provider flow E2E test (register → submit → deactivate) - 07-02: Mentor flow E2E test (browse → apply → opt-in) - 07-03: Admin flow test + deployment checklist All plans independent (can run in parallel)
185 lines
6.8 KiB
Markdown
185 lines
6.8 KiB
Markdown
---
|
|
phase: 07-testing-polish
|
|
plan: 01
|
|
type: execute
|
|
depends_on: []
|
|
files_modified: []
|
|
---
|
|
|
|
<objective>
|
|
Verify complete provider workflow from registration through job deactivation works end-to-end without errors.
|
|
|
|
Purpose: Ensure providers can successfully register, submit jobs, manage their listings, and deactivate when needed - the complete lifecycle works as designed.
|
|
Output: Verified provider user journey, documented test results, issues logged if any.
|
|
</objective>
|
|
|
|
<execution_context>
|
|
~/.claude/get-shit-done/workflows/execute-plan.md
|
|
~/.claude/get-shit-done/references/checkpoints.md
|
|
./summary.md
|
|
</execution_context>
|
|
|
|
<context>
|
|
@.planning/PROJECT.md
|
|
@.planning/ROADMAP.md
|
|
@.planning/STATE.md
|
|
|
|
# Prior work being tested:
|
|
@.planning/phases/02-provider-registration-auth/02-01-SUMMARY.md
|
|
@.planning/phases/02-provider-registration-auth/02-02-SUMMARY.md
|
|
@.planning/phases/02-provider-registration-auth/02-03-SUMMARY.md
|
|
@.planning/phases/02-provider-registration-auth/02-04-SUMMARY.md
|
|
@.planning/phases/03-job-management-core/03-01-SUMMARY.md
|
|
@.planning/phases/03-job-management-core/03-02-SUMMARY.md
|
|
@.planning/phases/04-job-deactivation-system/04-01-SUMMARY.md
|
|
|
|
**Tech stack being tested:** Formidable Forms (F1 registration, F2 submission, F3 edit, F4 deactivation), custom role `ddhh_provider`, ACF fields, access control, email notifications
|
|
**Expected flows:** Self-registration with auto-login, dashboard access, job submission to pending, job editing (resets to pending), job deactivation (to draft)
|
|
**Established patterns:** German UI, ownership validation, admin approval workflow
|
|
</context>
|
|
|
|
<tasks>
|
|
|
|
<task type="checkpoint:human-verify" gate="blocking">
|
|
<what-built>Provider registration and login flow (Phase 2)</what-built>
|
|
<how-to-verify>
|
|
**Test Registration:**
|
|
1. Visit: /anbieter-login/ (login/registration page)
|
|
2. Fill out registration form (F1) with test data:
|
|
- Email: test-provider-[timestamp]@test.com
|
|
- Company name, password, etc.
|
|
3. Submit form
|
|
4. Confirm: Auto-logged in after registration (no manual login needed)
|
|
5. Confirm: Redirected to provider dashboard (/anbieter-dashboard/)
|
|
6. Confirm: Dashboard shows "Keine Stellenangebote gefunden" (no jobs yet)
|
|
|
|
**Test Login (existing user):**
|
|
1. Log out
|
|
2. Return to /anbieter-login/
|
|
3. Log in with registered credentials
|
|
4. Confirm: Redirected to dashboard
|
|
5. Confirm: Access control works (logged-in providers can access dashboard)
|
|
|
|
**Test Access Control:**
|
|
1. Log out
|
|
2. Try to visit /anbieter-dashboard/ directly
|
|
3. Confirm: Redirected to /anbieter-login/ (non-logged-in users blocked)
|
|
</how-to-verify>
|
|
<resume-signal>Type "approved" when registration and login work correctly, or describe issues to investigate</resume-signal>
|
|
</task>
|
|
|
|
<task type="checkpoint:human-verify" gate="blocking">
|
|
<what-built>Job submission and editing flow (Phase 3)</what-built>
|
|
<how-to-verify>
|
|
**Prerequisites:** Logged in as provider from previous test
|
|
|
|
**Test Job Submission (F2):**
|
|
1. From dashboard, click "Neues Angebot erstellen" or similar submission link
|
|
2. Fill out job submission form with test data:
|
|
- Job title (Stellentitel)
|
|
- Description (Beschreibung)
|
|
- Location (Standort)
|
|
- Job type (Art der Stelle)
|
|
- Contact email
|
|
- Logo upload (optional)
|
|
3. Submit form
|
|
4. Confirm: Redirected back to dashboard
|
|
5. Confirm: New job appears in dashboard with "pending" status
|
|
6. Confirm: Job NOT visible on public job archive (/jobangebote/) yet
|
|
|
|
**Test Job Edit (F3):**
|
|
1. From dashboard, click "Bearbeiten" (edit) button on submitted job
|
|
2. Edit form appears with pre-filled data
|
|
3. Modify job title or description
|
|
4. Submit changes
|
|
5. Confirm: Redirected back to dashboard
|
|
6. Confirm: Job status reset to "pending" (requires re-approval)
|
|
7. Confirm: Changes saved correctly
|
|
|
|
**Test Admin Notification:**
|
|
1. Check admin email inbox (WordPress site admin email)
|
|
2. Confirm: Received notification about new job submission
|
|
3. Confirm: Email includes job title, provider details, direct edit link
|
|
</how-to-verify>
|
|
<resume-signal>Type "approved" when submission and editing work correctly, or describe issues</resume-signal>
|
|
</task>
|
|
|
|
<task type="checkpoint:human-verify" gate="blocking">
|
|
<what-built>Job deactivation flow (Phase 4)</what-built>
|
|
<how-to-verify>
|
|
**Prerequisites:**
|
|
- Job from previous test exists
|
|
- Admin approves job (set status to "publish" in WP admin)
|
|
- Wait for job to appear on dashboard as "published"
|
|
|
|
**Test Deactivation (F4):**
|
|
1. From dashboard, find published job
|
|
2. Click "Deaktivieren" (deactivate) button
|
|
3. Deactivation form appears with reason field (required)
|
|
4. Enter deactivation reason: "Test: Position filled"
|
|
5. Submit form
|
|
6. Confirm: Job status changes to "draft"
|
|
7. Confirm: Job no longer visible on public job archive
|
|
8. Confirm: Job still visible in provider's dashboard (as draft)
|
|
|
|
**Test Admin Deactivation Notification:**
|
|
1. Check admin email inbox
|
|
2. Confirm: Received notification about job deactivation
|
|
3. Confirm: Email includes job title, provider details, deactivation reason
|
|
|
|
**Test Deactivation Access Control:**
|
|
1. Try to deactivate a pending/draft job (should not have deactivate button)
|
|
2. Confirm: Deactivate button only appears for published jobs
|
|
</how-to-verify>
|
|
<resume-signal>Type "approved" when deactivation flow works correctly, or describe issues</resume-signal>
|
|
</task>
|
|
|
|
</tasks>
|
|
|
|
<verification>
|
|
Before declaring plan complete:
|
|
- [ ] Provider can register and auto-login
|
|
- [ ] Provider can submit jobs (go to pending)
|
|
- [ ] Provider can edit jobs (reset to pending)
|
|
- [ ] Provider can deactivate published jobs (go to draft)
|
|
- [ ] Access control prevents non-logged-in access
|
|
- [ ] Admin receives email notifications for submissions and deactivations
|
|
- [ ] German UI labels display correctly
|
|
</verification>
|
|
|
|
<success_criteria>
|
|
|
|
- Complete provider lifecycle tested end-to-end
|
|
- All workflows function without errors
|
|
- Access control works correctly
|
|
- Email notifications reach admin inbox
|
|
- German UI displays properly
|
|
- Any issues documented for fixes
|
|
</success_criteria>
|
|
|
|
<output>
|
|
After completion, create `.planning/phases/07-testing-polish/07-01-SUMMARY.md`:
|
|
|
|
# Phase 7 Plan 1: Provider Flow E2E Testing Summary
|
|
|
|
**[Substantive one-liner - what was tested and verified]**
|
|
|
|
## Test Results
|
|
|
|
- [Registration/Login: PASS/FAIL with details]
|
|
- [Job Submission/Edit: PASS/FAIL with details]
|
|
- [Job Deactivation: PASS/FAIL with details]
|
|
|
|
## Issues Found
|
|
|
|
[List any bugs, UX issues, or problems discovered, or "None"]
|
|
|
|
## Fixes Applied
|
|
|
|
[List any immediate fixes made during testing, or "None"]
|
|
|
|
## Next Step
|
|
|
|
Ready for Plan 07-02 (Mentor flow E2E testing). Can run in parallel if desired.
|
|
</output>
|