Recruitment Event Integration Testing Guide
Summary
Smoke evidence exists for Recruitment workflows and outbox state, but dedicated domain, contract, broker, and consumer test projects are absent.
Audience
Developers, QA and support engineers, integration reviewers, implementation partners, solution architects, and security reviewers.
Overview
Prerequisites
Use an approved non-production environment and isolated test context. Do not use production brokers, replay commands, real personal information, document content, interview notes, tokens, or offer values.
Procedure
- Unit-test aggregate event creation and non-creation for terminal retries.
- Persistence-test each of the eleven mappings, outbox atomicity, event identity, occurrence, correlation, null envelope fields, and schema version.
- Contract-test serialization and additive/breaking-change expectations.
- Broker-test publish success/failure and stored status transitions in an isolated broker.
- Consumer-test duplicate and unsupported-version handling only after a real consumer exists.
- Workflow-test first and duplicate callbacks.
- Employee-test deterministic retry and failure before completion events.
- Document-test external success followed by local failure and external failure before local save.
- End-to-end-test gateway coexistence without counting HTTP routes as subscriptions.
- Use the existing smoke helper for broad workflow/outbox evidence only.
Validation or Expected Result
Current source should reconcile to 12 domain events, 11 outbound contracts/mappings, zero inbound contracts, zero confirmed consumer services/subscriptions, one schema version, and one invoked unmapped withdrawal event. Successful outbox persistence must be distinguished from publish and consumer completion.
Troubleshooting
Classify failures as domain creation, mapping, serialization, local transaction, relay selection, broker publication, subscription, consumer processing, or synchronous dependency failure. Do not expose broker topology, infrastructure identifiers, credentials, payload data, or replay commands in reports.
Existing assets are the smoke helper and manual HTTP collection. Dedicated unit, persistence integration, contract, broker integration, consumer, Workflow, Employee, Document, and end-to-end test projects are Not implemented.
Requires confirmation
Consumer ownership, tenant-envelope policy, correlation/causation policy, retry limits, replay, ordering, contract governance, reconciliation, monitoring, and production support require confirmation.
Source References
microservices/scripts/smoke-recruitment.ps1microservices/src/recruitment-service/recruitment-service.httpmicroservices/src/recruitment-service/Domain/Recruitment/RecruitmentDomainEvents.csmicroservices/src/recruitment-service/Infrastructure/RecruitmentDbContext.csmicroservices/src/shared-kernel/Outbox/IntegrationEventJsonSerializer.csmicroservices/src/shared-kernel/Messaging/OutboxProcessor.cs
Related Articles
See Also
Keywords
- Recruitment events
- Integration Testing Guide
Revision Information
- Status: Draft
- Last reviewed: 2026-07-16
- Review cycle: Quarterly