Skip to main content

Prove parity before production

Preserve required business behavior, not incidental implementation details. Test exact inputs, transformed outputs, external side effects and error paths. Run local artifact tests separately from runtime/connector tests so a failure can be traced to the right layer.

Test by layer​

LayerExecuteDoes not prove
ArtifactXSD/XSLT fixtures and pure-code unit testsConnector, identity or hosted-runtime behavior
WorkflowTrigger input, action dependencies, failure paths and outputs in StandardFull end-to-end behavior when external systems are mocked
IntegrationReal operation against a test endpoint with target-host identity/networkProduction-scale capacity or partner certification
Load/recoveryPeak traffic, throttling, restarts, duplicate/replay and resource measurementsCorrectness for untested contracts

Start with the local transformation lab. Then feed the same cases into the Standard workflow and compare business identifiers, payloads and side effects.

A repeatable failure investigation​

  1. Locate the message by business correlation ID and identify its workflow/run/action.
  2. Inspect the first unexpected action status; later skipped actions are often symptoms.
  3. Check sanitized inputs, operation settings, connection references and effective runtime identity.
  4. Distinguish invalid contract data, authorization, network failure, throttling and business rejection.
  5. Reproduce in a test environment, fix the responsible layer, then rerun the failure and duplicate cases.

Avoid replay until you know which external side effects already committed. See recovery patterns.

Freeze the baseline​

For each scenario capture:

  • Source application and artifact version.
  • Sanitized input, trigger conditions and environment assumptions.
  • Expected output, side effects, acknowledgments and ordering.
  • Correlation identifiers and the expected observable failure path.
  • Allowed differences, explicitly approved by the business owner.

Never compare only successful HTTP status codes or workflow completion flags when the requirement is a downstream business outcome.

Acceptance dimensions​

DimensionCasesEvidence and owner
FunctionalHappy path, schema failure, boundary values, transformation, rule outcomes, partner acknowledgmentsExpected/actual payloads and side effects; application/test lead
Delivery semanticsDuplicate messages, ordering, correlation, replay and compensationReconciled business identifiers; application architect
PerformanceTypical load, peak sustained load, bursts and representative payload sizesMeasured latency percentiles, throughput and resource pressure against agreed thresholds; performance lead
ResilienceEndpoint failure, throttling, transient faults, exhausted retries, recovery and replayNo silent loss or duplicate side effects beyond the agreed contract; operations lead
SecurityLeast privilege, identity, network boundaries, secret/certificate handling and data exposureSecurity review and negative-access tests; security owner
OperationsAlerts, business tracing, recovery, retention and incident proceduresDemonstrated operator diagnosis and recovery; service owner
ReleaseDeployment, environment configuration, coexistence and rollbackRehearsed runbook and release provenance; release lead

Set numeric performance, error-rate, reconciliation and recovery thresholds per interface. This hub intentionally does not invent universal thresholds for different businesses.

A useful test record​

FieldExample of what to record
ScenarioStable identifier and requirement reference
Source / targetCommit IDs, runtime versions and environment
Input / expectedApproved fixture IDs and exact expected business result
ActualOutput, side effects and correlation IDs
ThresholdAgreed measurable pass/fail condition
VerdictPass, fail or blocked; no success-shaped fallback for unavailable dependencies
Follow-upDefect link, owner and retest evidence

Exit gate​

The business owner approves parity; operations accepts monitoring and recovery; security approves controls; the release owner accepts coexistence and rollback. Any unresolved exception must have explicit risk acceptance and a named owner.

See deployment and configuration for packaging, environment settings and deployment diagnostics.