# E2E Testing End-to-end testing for the Invoice Field Extraction API. ## When to Use - Testing complete inference pipeline (PDF -> Fields) - Verifying API endpoints work end-to-end - Validating YOLO + OCR + field extraction integration - Pre-deployment verification ## Workflow 1. Ensure server is running: `python run_server.py` 2. Run health check: `curl http://localhost:8000/api/v1/health` 3. Run E2E tests: `pytest tests/e2e/ -v` 4. Verify results and capture any failures ## Critical Scenarios (Must Pass) 1. Health check returns `{"status": "healthy", "model_loaded": true}` 2. PDF upload returns valid response with fields 3. Fields extracted with confidence scores 4. Visualization image generated 5. Cross-validation included for invoices with payment_line ## Checklist - [ ] Server running on http://localhost:8000 - [ ] Health check passes - [ ] PDF inference returns valid JSON - [ ] At least one field extracted - [ ] Visualization URL returns image - [ ] Response time < 10 seconds - [ ] No server errors in logs ## Test Location E2E tests: `tests/e2e/` Sample fixtures: `tests/fixtures/`