LMS Event Testing Guide
Summary
An existing smoke script verifies eight staged contracts and Notification duplicate suppression; dedicated event suites were not found.
Audience
Engineering, QA, integration, architecture, security, product, and support reviewers.
Reference Content
This guide separates verified test evidence from safe future coverage. It does not direct testing against production messaging or claim that an absent suite exists.
Existing Evidence
The Training smoke script exercises lifecycle operations and verifies eight invoked contract types in the outbox. It can send those events directly through a Notification test HTTP boundary and verifies duplicate event-identity suppression. That path does not prove a Training relay, broker publication, subscription transport, or production delivery.
| Existing test classification | Verified evidence |
|---|---|
| Smoke | Present; exercises producer lifecycles, eight outbox contract types, Notification recognition, and duplicate identity suppression. |
| Unit | No dedicated Training event unit suite found. |
| Contract | No dedicated compatibility or schema-version suite found. |
| Persistence integration | Smoke assertions observe outbox staging; no dedicated transaction/failure suite found. |
| Broker integration | Not found; the smoke path does not prove broker delivery. |
| Consumer | Smoke coverage exists through the test HTTP boundary; no dedicated hosted-consumer suite found. |
| End to end | No Training relay-to-Notification suite found. |
No dedicated ordering, correlation, retry-metadata, schema-migration, or uninvoked-contract suite was verified.
Recommended Safe Coverage
| Test level | Recommended evidence |
|---|---|
| Unit | Lifecycle guards, conditional assessment outcome, event identity, correlation defaults, and version assignment. |
| Persistence integration | State and outbox atomicity, uniqueness, retry metadata, and duplicate terminal transitions. |
| Contract | All nine definitions, version compatibility, and the uninvoked expiry contract. |
| Consumer | Recognition mappings, processed-event deduplication, delivery failure states, and unsupported names. |
| Broker integration | Publication and subscription in isolated non-production infrastructure only. |
| End to end | Training-to-Notification path only after relay ownership is implemented and safely isolated. |
| Boundary | Confirm Gateway and Document paths remain HTTP-only and are not counted as subscriptions. |
Testing must use synthetic, non-sensitive records and isolated non-production infrastructure. This guide provides coverage objectives, not operational commands.
Source References
microservices/scripts/smoke-training.ps1microservices/src/training-service/Api/TrainingEndpoints.csmicroservices/src/notification-service/Application/NotificationDispatcher.cs
Related Articles
See Also
Keywords
- Event testing
- Contract tests
- Synthetic test data
Revision Information
- Status: Draft
- Last reviewed: 2026-07-17
- Review cycle: Quarterly