PackagesCanonicalsLogsProblems
    Packages
    hl7.fhir.r5.core@5.0.0
    http://hl7.org/fhir/StructureDefinition/TestPlan
description: A plan for executing testing on an artifact or specifications
package_name: hl7.fhir.r5.core
derivation: specialization
name: TestPlan
type: TestPlan
elements:
  description: {isModifier: false, short: Natural language description of the test plan, type: markdown, mustSupport: false, isSummary: false, index: 14}
  category:
    isModifier: false
    short: The category of the Test Plan - can be acceptance, unit, performance
    type: CodeableConcept
    mustSupport: false
    array: true
    binding: {strength: example, valueSet: 'http://hl7.org/fhir/ValueSet/testscript-scope-phase-codes'}
    isSummary: false
    index: 20
  exitCriteria: {isModifier: false, short: The threshold or criteria for the test plan to be considered successfully executed - narrative, type: markdown, mustSupport: false, isSummary: false, index: 26}
  date: {isModifier: false, short: Date last changed, type: dateTime, mustSupport: false, isSummary: true, index: 11}
  dependency:
    isModifier: false
    short: The required criteria to execute the test plan - e.g. preconditions, previous tests
    type: BackboneElement
    mustSupport: false
    array: true
    isSummary: false
    index: 23
    elements:
      description: {isModifier: false, short: Description of the dependency criterium, type: markdown, mustSupport: false, isSummary: false, index: 24}
      predecessor: {isModifier: false, short: Link to predecessor test plans, type: Reference, mustSupport: false, isSummary: false, index: 25}
  publisher: {isModifier: false, short: Name of the publisher/steward (organization or individual), type: string, mustSupport: false, isSummary: true, index: 12}
  jurisdiction:
    isModifier: false
    short: Intended jurisdiction where the test plan applies (if applicable)
    type: CodeableConcept
    mustSupport: false
    array: true
    binding: {strength: extensible, valueSet: 'http://hl7.org/fhir/ValueSet/jurisdiction'}
    isSummary: true
    index: 16
  purpose: {isModifier: false, short: Why this test plan is defined, type: markdown, mustSupport: false, isSummary: false, index: 17}
  name: {isModifier: false, short: Name for this test plan (computer friendly), type: string, mustSupport: false, isSummary: true, index: 7}
  copyrightLabel: {isModifier: false, short: Copyright holder and year(s), type: string, mustSupport: false, isSummary: false, index: 19}
  useContext: {isModifier: false, short: The context that the content is intended to support, type: UsageContext, mustSupport: false, array: true, isSummary: true, index: 15}
  copyright: {isModifier: false, short: Use and/or publishing restrictions, type: markdown, mustSupport: false, isSummary: false, index: 18}
  versionAlgorithm:
    isModifier: false
    short: How to compare versions
    mustSupport: false
    choices: [versionAlgorithmString, versionAlgorithmCoding]
    isSummary: true
    index: 4
  experimental: {isModifier: false, short: 'For testing purposes, not real usage', type: boolean, mustSupport: false, meaningWhenMissing: 'If absent, this resource is treated as though it is not experimental.', isSummary: true, index: 10}
  scope: {isModifier: false, short: 'What is being tested with this Test Plan - a conformance resource, or narrative criteria, or an external reference', type: Reference, mustSupport: false, array: true, isSummary: false, index: 21}
  title: {isModifier: false, short: Name for this test plan (human friendly), type: string, mustSupport: false, isSummary: false, index: 8}
  versionAlgorithmCoding: {isModifier: false, short: How to compare versions, type: Coding, mustSupport: false, choiceOf: versionAlgorithm, isSummary: true, index: 6}
  testCase:
    isModifier: false
    short: The test cases that constitute this plan
    type: BackboneElement
    mustSupport: false
    array: true
    isSummary: false
    index: 27
    elements:
      sequence: {isModifier: false, short: Sequence of test case in the test plan, type: integer, mustSupport: false, isSummary: false, index: 28}
      scope: {isModifier: false, short: The scope or artifact covered by the case, type: Reference, mustSupport: false, array: true, isSummary: false, index: 29}
      dependency:
        isModifier: false
        short: Required criteria to execute the test case
        type: BackboneElement
        mustSupport: false
        array: true
        isSummary: false
        index: 30
        elements:
          description: {isModifier: false, short: Description of the criteria, type: markdown, mustSupport: false, isSummary: false, index: 31}
          predecessor: {isModifier: false, short: Link to predecessor test plans, type: Reference, mustSupport: false, isSummary: false, index: 32}
      testRun:
        isModifier: false
        short: The actual test to be executed
        type: BackboneElement
        mustSupport: false
        array: true
        isSummary: false
        index: 33
        elements:
          narrative: {isModifier: false, short: The narrative description of the tests, type: markdown, mustSupport: false, isSummary: false, index: 34}
          script:
            isModifier: false
            short: The test cases in a structured language e.g. gherkin, Postman, or FHIR TestScript
            type: BackboneElement
            mustSupport: false
            isSummary: false
            index: 35
            elements:
              language: {isModifier: false, short: 'The language for the test cases e.g. ''gherkin'', ''testscript''', type: CodeableConcept, mustSupport: false, isSummary: false, index: 36}
              source:
                isModifier: false
                short: The actual content of the cases - references to TestScripts or externally defined content
                mustSupport: false
                choices: [sourceString, sourceReference]
                isSummary: false
                index: 38
              sourceString: {isModifier: false, short: The actual content of the cases - references to TestScripts or externally defined content, type: string, mustSupport: false, choiceOf: source, isSummary: false, index: 39}
              sourceReference: {isModifier: false, short: The actual content of the cases - references to TestScripts or externally defined content, type: Reference, mustSupport: false, choiceOf: source, isSummary: false, index: 40}
      testData:
        isModifier: false
        short: The test data used in the test case
        index: 41
        type: BackboneElement
        mustSupport: false
        array: true
        elements:
          type: {isModifier: false, short: 'The type of test data description, e.g. ''synthea''', type: Coding, mustSupport: false, isSummary: false, index: 42}
          content: {isModifier: false, short: The actual test resources when they exist, type: Reference, mustSupport: false, isSummary: false, index: 43}
          source:
            isModifier: false
            short: Pointer to a definition of test resources - narrative or structured e.g. synthetic data generation, etc
            mustSupport: false
            choices: [sourceString, sourceReference]
            isSummary: false
            index: 45
          sourceString: {isModifier: false, short: 'Pointer to a definition of test resources - narrative or structured e.g. synthetic data generation, etc', type: string, mustSupport: false, choiceOf: source, isSummary: false, index: 46}
          sourceReference: {isModifier: false, short: 'Pointer to a definition of test resources - narrative or structured e.g. synthetic data generation, etc', type: Reference, mustSupport: false, choiceOf: source, isSummary: false, index: 47}
        required: [type]
        isSummary: false
      assertion:
        isModifier: false
        short: Test assertions or expectations
        type: BackboneElement
        mustSupport: false
        array: true
        isSummary: false
        index: 48
        elements:
          type: {isModifier: false, short: 'Assertion type - for example ''informative'' or ''required'' ', type: CodeableConcept, mustSupport: false, array: true, isSummary: false, index: 49}
          object: {isModifier: false, short: The focus or object of the assertion, type: CodeableReference, mustSupport: false, array: true, isSummary: false, index: 50}
          result: {isModifier: false, short: The actual result assertion, type: CodeableReference, mustSupport: false, array: true, isSummary: false, index: 51}
  status:
    isModifier: true
    short: draft | active | retired | unknown
    index: 9
    type: code
    mustSupport: false
    binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/publication-status|5.0.0'}
    isModifierReason: This is labeled as "Is Modifier" because applications should not use a retired {{title}} without due consideration
    isSummary: true
  url:
    constraint:
      cnl-1: {human: 'URL should not contain | or # - these characters make processing canonical references problematic', source: 'http://hl7.org/fhir/StructureDefinition/TestPlan', severity: warning, expression: 'exists() implies matches(''^[^|# ]+$'')'}
    isModifier: false
    short: Canonical identifier for this test plan, represented as a URI (globally unique)
    type: uri
    mustSupport: false
    isSummary: true
    index: 0
  identifier: {isModifier: false, short: Business identifier identifier for the test plan, type: Identifier, mustSupport: false, array: true, isSummary: true, index: 1}
  versionAlgorithmString: {isModifier: false, short: How to compare versions, type: string, mustSupport: false, choiceOf: versionAlgorithm, isSummary: true, index: 5}
  testTools: {isModifier: false, short: A description of test tools to be used in the test plan - narrative for now, type: markdown, mustSupport: false, isSummary: false, index: 22}
  version: {isModifier: false, short: Business version of the test plan, type: string, mustSupport: false, isSummary: true, index: 2}
  contact: {isModifier: false, short: Contact details for the publisher, type: ContactDetail, mustSupport: false, array: true, isSummary: true, index: 13}
package_version: 5.0.0
class: resource
kind: resource
url: http://hl7.org/fhir/StructureDefinition/TestPlan
base: http://hl7.org/fhir/StructureDefinition/DomainResource
version: 5.0.0
required: [status]