The testing infrastructure is intended to support multiple testing environments including instance testing, isolated system testing, and peer-to-peer system testing.
- Instance Testing - Instance or conformance/unit testing is defined as testing an artifact (e.g., an HL7 V2 message) against the rules defined in the specification. This form of testing does not directly involve a system under test, but rather a testing artifact that was produced by the system under test. Examples of instance testing include validating a CDA document instance against the CDA general rules and document type rules, and validating an HL7 V2 message instance against an HL7 V2 conformance profile.
- Isolated System Testing - Isolated system or integration testing is defined as a single vendor system conducting a test with one or more standard(s) or one or more specification(s). The vendor system may interact with test agents and/or validators.
- Peer-to-Peer Testing - Peer-to-Peer or interoperability testing is defined as testing conducted among a group of vendor systems either in a closed-network or remote setting. Peer-to-peer testing uses two or more vendor systems, but can use one or more standards, or one or more specifications. An example of interoperability system testing would be the IHE Connectathon.
The instance testing capability, which is essentially a collection of individual tools, will be the basis for both isolated and peer-to-peer system testing. This capability primarily serves the general standards development organization (SDO) community. Isolated system testing is anticipated to be the major focus of the testing infrastructure as most meaningful use testing requirements fall into this category. Peer-to-peer testing will not be a primary focus of the testing infrastructure; however the envisioned set of services will support this testing environment model.
The following diagrams illustrate how the various testing environments will be supported by the testing infrastructure components.