Given the Test Description: "The system under test MUST find a previously created resource when searched using the parameter and return it in the search results (SEARCH)."
Given the Preconditions: - The Medication-Read and Medication-Read-Extended test cases must have been executed successfully beforehand.
When Get FHIR resource at "http://fhirserver/metadata" with content type "json"
And CapabilityStatement contains interaction "search-type" for resource "Medication"
And CapabilityStatement contains definition of search parameter "{searchParamValue}" of type "{searchParamType}" for resource "Medication"
Then Get FHIR resource at "http://fhirserver/Medication/?_id=${data.medication-read-id}" with content type "xml"
And response bundle contains resource with ID "${data.medication-read-id}" with error message "The requested Medication ${data.medication-read-id} is not contained in the response bundle"
And FHIR current response body is a valid CORE resource and conforms to profile "https://hl7.org/fhir/StructureDefinition/Bundle"
And Check if current response of resource "Medication" is valid isik5 resource and conforms to profile "https://gematik.de/fhir/isik/StructureDefinition/ISiKMedikament"
When Get FHIR resource at "http://fhirserver/Medication/?_count=1" with content type "xml"
And FHIR current response body evaluates the FHIRPath 'entry.resource.count() } 0 and entry.resource.count() {= 1' with error message 'The _count parameter was not applied as expected'
When Get FHIR resource at "http://fhirserver/Medication/?_tag=${data.tag-system}%7C${data.tag-value}&_id=${data.medication-read-id}" with content type "xml"
And FHIR current response body evaluates the FHIRPath 'entry.resource.count() } 0' with error message 'No search results were found'
And FHIR current response body evaluates the FHIRPath "entry.resource.all(meta.tag.where(code='${data.tag-value}').exists())" with error message 'There are search results, but they do not fully match the search criteria'
Then Get FHIR resource at "http://fhirserver/Medication/?code=http://fhir.de/CodeSystem/bfarm/atc%7CV03AB23&_id=${data.medication-read-id}" with content type "xml"
And FHIR current response body evaluates the FHIRPath 'entry.resource.count() } 0' with error message 'No search results were found'
And FHIR current response body evaluates the FHIRPath "entry.resource.all((code.coding.where(code = 'V03AB23' and system = 'http://fhir.de/CodeSystem/bfarm/atc').exists()))" with error message 'There are search results, but they do not fully match the search criteria'
Then Get FHIR resource at "http://fhirserver/Medication/?code:text=Infusion" with content type "xml"
And FHIR current response body evaluates the FHIRPath 'entry.resource.count() } 0' with error message 'No search results were found'
And FHIR current response body evaluates the FHIRPath "entry.resource.all(code.text.contains('Infusion'))" with error message 'There are search results, but they do not fully match the search criteria'
Then Get FHIR resource at "http://fhirserver/Medication/?form=11210000" with content type "xml"
And FHIR current response body evaluates the FHIRPath 'entry.resource.count() } 0' with error message 'No search results were found'
And FHIR current response body evaluates the FHIRPath "entry.resource.all(form.coding.where(code = '11210000').exists())" with error message 'There are search results, but they do not fully match the search criteria'
Then Get FHIR resource at "http://fhirserver/Medication/?ingredient=Medication/${data.medication-read-referenced-ingredient}" with content type "xml"
And FHIR current response body evaluates the FHIRPath 'entry.resource.count() } 0' with error message 'No search results were found'
And element "ingredient.item" in all bundle resources references resource with ID "${data.medication-read-referenced-ingredient}"
Then Get FHIR resource at "http://fhirserver/Medication/?ingredient.code=V03AB23&_id=${data.medication-read-id}" with content type "xml"
And FHIR current response body evaluates the FHIRPath 'entry.resource.count() } 0' with error message 'No search results were found'
And response bundle contains resource with ID "${data.medication-read-id}" with error message "The requested Medication ${data.medication-read-id} is not contained in the response bundle"
Then Get FHIR resource at "http://fhirserver/Medication/?ingredient-code=L01DB01&_id=${data.medication-read-extended-id}" with content type "xml"
And FHIR current response body evaluates the FHIRPath 'entry.resource.count() } 0' with error message 'No search results were found'
And response bundle contains resource with ID "${data.medication-read-extended-id}" with error message "The requested Medication ${data.medication-read-extended-id} is not contained in the response bundle"
Then Get FHIR resource at "http://fhirserver/Medication/?lot-number=123&_id=${data.medication-read-id}" with content type "xml"
And FHIR current response body evaluates the FHIRPath 'entry.resource.count() } 0' with error message 'No search results were found'
And response bundle contains resource with ID "${data.medication-read-id}" with error message "The requested Medication ${data.medication-read-id} is not contained in the response bundle"
Then Get FHIR resource at "http://fhirserver/Medication/?status=active&_id=${data.medication-read-id}" with content type "xml"
And FHIR current response body evaluates the FHIRPath 'entry.resource.count() } 0' with error message 'No search results were found'
And response bundle contains resource with ID "${data.medication-read-id}" with error message "The requested Medication ${data.medication-read-id} is not contained in the response bundle"
| Number of Scenarios | 14 | Total Duration | 21s |
| Total Number of Test Cases | 22 | Fastest Test | 313ms |
| Number of Manual Test Cases | 0 | Slowest Test | 5s |
| Tests Started | Sep 01, 2026 07:12:46 | Average Execution Time | 952ms |
| Tests Finished | Sep 01, 2026 07:13:07 |
Cumulative Test Time
(sum of all individual test durations) |
20s |
| feature | Scenario | Context | Steps | Started | Total Duration | Result |
|---|---|---|---|---|---|---|
| Testing search parameters against a resource of type Medication (@Medication-Search) | Precondition | 2 | 07:12:46 | 468ms | ||
| Testing search parameters against a resource of type Medication (@Medication-Search) | Read and Validation of the CapabilityStatement | 2 | 07:12:47 | 4s 032ms | ||
| Testing search parameters against a resource of type Medication (@Medication-Search) |
Validation of the search parameter definitions in the CapabilityStatement
9 passing test cases |
1 | 07:12:51 | 8s 172ms | ||
| Testing search parameters against a resource of type Medication (@Medication-Search) | Search for the Medication by ID | 4 | 07:12:59 | 985ms | ||
| Testing search parameters against a resource of type Medication (@Medication-Search) | Search for the Medication by Count | 2 | 07:13:00 | 485ms | ||
| Testing search parameters against a resource of type Medication (@Medication-Search) | Optional Search for the Medication by Tag and ID | 3 | 07:13:00 | 721ms | ||
| Testing search parameters against a resource of type Medication (@Medication-Search) | Search for the Medication by Code and ID | 3 | 07:13:01 | 709ms | ||
| Testing search parameters against a resource of type Medication (@Medication-Search) | Search for the Medication by Free-Text Code | 3 | 07:13:02 | 697ms | ||
| Testing search parameters against a resource of type Medication (@Medication-Search) | Search for the Medication by Form | 3 | 07:13:02 | 694ms | ||
| Testing search parameters against a resource of type Medication (@Medication-Search) | Search for the Medication by Referenced Ingredient | 3 | 07:13:03 | 760ms | ||
| Testing search parameters against a resource of type Medication (@Medication-Search) | Search for the Medication by Ingredient Code (Chaining) and ID | 3 | 07:13:04 | 831ms | ||
| Testing search parameters against a resource of type Medication (@Medication-Search) | Search for the Medication by Ingredient Code and ID | 3 | 07:13:05 | 857ms | ||
| Testing search parameters against a resource of type Medication (@Medication-Search) | Search for the Medication by Lot Number and ID | 3 | 07:13:06 | 794ms | ||
| Testing search parameters against a resource of type Medication (@Medication-Search) | Search for the Medication by Status and ID | 3 | 07:13:06 | 793ms |
| Scenario | Title | Details |
|---|---|---|
| Precondition | RBellog 0 | Download Evidence |
| Read and Validation of the CapabilityStatement | INFO - rest.where(mode = 'server').resource.where(type = 'Medication' and interaction.where(code = 'search-type').exists()).exists() | Details |
| Read and Validation of the CapabilityStatement | RBellog 0 | Download Evidence |
| Read and Validation of the CapabilityStatement | Evidence Report | Download Evidence |
| Validation of the search parameter definitions in the CapabilityStatement | INFO - rest.where(mode = 'server').resource.where(type = 'Medication' and searchParam.where(name = '_id' and type = 'token').exists()).exists() | Details |
| Validation of the search parameter definitions in the CapabilityStatement | RBellog 1 | Download Evidence |
| Validation of the search parameter definitions in the CapabilityStatement | Evidence Report | Download Evidence |
| Validation of the search parameter definitions in the CapabilityStatement | INFO - rest.where(mode = 'server').resource.where(type = 'Medication' and searchParam.where(name = '_count' and type = 'number').exists()).exists() | Details |
| Validation of the search parameter definitions in the CapabilityStatement | RBellog 2 | Download Evidence |
| Validation of the search parameter definitions in the CapabilityStatement | Evidence Report | Download Evidence |
| Validation of the search parameter definitions in the CapabilityStatement | INFO - rest.where(mode = 'server').resource.where(type = 'Medication' and searchParam.where(name = 'code' and type = 'token').exists()).exists() | Details |
| Validation of the search parameter definitions in the CapabilityStatement | RBellog 3 | Download Evidence |
| Validation of the search parameter definitions in the CapabilityStatement | Evidence Report | Download Evidence |
| Validation of the search parameter definitions in the CapabilityStatement | INFO - rest.where(mode = 'server').resource.where(type = 'Medication' and searchParam.where(name = 'form' and type = 'token').exists()).exists() | Details |
| Validation of the search parameter definitions in the CapabilityStatement | RBellog 4 | Download Evidence |
| Validation of the search parameter definitions in the CapabilityStatement | Evidence Report | Download Evidence |
| Validation of the search parameter definitions in the CapabilityStatement | INFO - rest.where(mode = 'server').resource.where(type = 'Medication' and searchParam.where(name = 'ingredient' and type = 'reference').exists()).exists() | Details |
| Validation of the search parameter definitions in the CapabilityStatement | RBellog 5 | Download Evidence |
| Validation of the search parameter definitions in the CapabilityStatement | Evidence Report | Download Evidence |
| Validation of the search parameter definitions in the CapabilityStatement | INFO - rest.where(mode = 'server').resource.where(type = 'Medication' and searchParam.where(name = 'ingredient-code' and type = 'token').exists()).exists() | Details |
| Validation of the search parameter definitions in the CapabilityStatement | RBellog 6 | Download Evidence |
| Validation of the search parameter definitions in the CapabilityStatement | Evidence Report | Download Evidence |
| Validation of the search parameter definitions in the CapabilityStatement | INFO - rest.where(mode = 'server').resource.where(type = 'Medication' and searchParam.where(name = 'lot-number' and type = 'token').exists()).exists() | Details |
| Validation of the search parameter definitions in the CapabilityStatement | RBellog 7 | Download Evidence |
| Validation of the search parameter definitions in the CapabilityStatement | Evidence Report | Download Evidence |
| Validation of the search parameter definitions in the CapabilityStatement | INFO - rest.where(mode = 'server').resource.where(type = 'Medication' and searchParam.where(name = 'status' and type = 'token').exists()).exists() | Details |
| Validation of the search parameter definitions in the CapabilityStatement | RBellog 8 | Download Evidence |
| Validation of the search parameter definitions in the CapabilityStatement | Evidence Report | Download Evidence |
| Validation of the search parameter definitions in the CapabilityStatement | INFO - rest.where(mode = 'server').resource.where(type = 'Medication' and searchParam.where(name = '_tag' and type = 'token').exists()).exists() | Details |
| Validation of the search parameter definitions in the CapabilityStatement | RBellog 9 | Download Evidence |
| Validation of the search parameter definitions in the CapabilityStatement | Evidence Report | Download Evidence |
| Search for the Medication by ID | INFO - entry.resource.where(id.replaceMatches('/_history/.+','').matches('\\bMedication-Read-Example$')).count() = 1 | Details |
| Search for the Medication by ID | WARN - Profile reference 'https://gematik.de/fhir/isik/StructureDefinition/ISiKMedikament' has not been checked because it is unknown | Details |
| Search for the Medication by ID | WARN - Resource meta.profile differs from the passed profile for validation: meta.profile=[]; passed=https://hl7.org/fhir/StructureDefinition/Bundle | Details |
| Search for the Medication by ID | INFO - Code system definition is missing for 'http://fhir.de/CodeSystem/bfarm/atc#V03AB23' | Details |
| Search for the Medication by ID | RBellog 0 | Download Evidence |
| Search for the Medication by ID | Evidence Report | Download Evidence |
| Search for the Medication by Count | INFO - entry.resource.count() > 0 and entry.resource.count() <= 1 | Details |
| Search for the Medication by Count | RBellog 0 | Download Evidence |
| Search for the Medication by Count | Evidence Report | Download Evidence |
| Optional Search for the Medication by Tag and ID | INFO - entry.resource.count() > 0 | Details |
| Optional Search for the Medication by Tag and ID | INFO - entry.resource.all(meta.tag.where(code='external').exists()) | Details |
| Optional Search for the Medication by Tag and ID | RBellog 0 | Download Evidence |
| Optional Search for the Medication by Tag and ID | Evidence Report | Download Evidence |
| Search for the Medication by Code and ID | INFO - entry.resource.count() > 0 | Details |
| Search for the Medication by Code and ID | INFO - entry.resource.all((code.coding.where(code = 'V03AB23' and system = 'http://fhir.de/CodeSystem/bfarm/atc').exists())) | Details |
| Search for the Medication by Code and ID | RBellog 0 | Download Evidence |
| Search for the Medication by Code and ID | Evidence Report | Download Evidence |
| Search for the Medication by Free-Text Code | INFO - entry.resource.count() > 0 | Details |
| Search for the Medication by Free-Text Code | INFO - entry.resource.all(code.text.contains('Infusion')) | Details |
| Search for the Medication by Free-Text Code | RBellog 0 | Download Evidence |
| Search for the Medication by Free-Text Code | Evidence Report | Download Evidence |
| Search for the Medication by Form | INFO - entry.resource.count() > 0 | Details |
| Search for the Medication by Form | INFO - entry.resource.all(form.coding.where(code = '11210000').exists()) | Details |
| Search for the Medication by Form | RBellog 0 | Download Evidence |
| Search for the Medication by Form | Evidence Report | Download Evidence |
| Search for the Medication by Referenced Ingredient | INFO - entry.resource.count() > 0 | Details |
| Search for the Medication by Referenced Ingredient | INFO - entry.resource.all(ingredient.item.reference.replaceMatches('/_history/.+','').matches('\\bMedication-Read-Referenced-Ingredient-Example$')) | Details |
| Search for the Medication by Referenced Ingredient | RBellog 0 | Download Evidence |
| Search for the Medication by Referenced Ingredient | Evidence Report | Download Evidence |
| Search for the Medication by Ingredient Code (Chaining) and ID | INFO - entry.resource.count() > 0 | Details |
| Search for the Medication by Ingredient Code (Chaining) and ID | INFO - entry.resource.where(id.replaceMatches('/_history/.+','').matches('\\bMedication-Read-Example$')).count() = 1 | Details |
| Search for the Medication by Ingredient Code (Chaining) and ID | RBellog 0 | Download Evidence |
| Search for the Medication by Ingredient Code (Chaining) and ID | Evidence Report | Download Evidence |
| Search for the Medication by Ingredient Code and ID | INFO - entry.resource.count() > 0 | Details |
| Search for the Medication by Ingredient Code and ID | INFO - entry.resource.where(id.replaceMatches('/_history/.+','').matches('\\bMedication-Read-Extended-Example$')).count() = 1 | Details |
| Search for the Medication by Ingredient Code and ID | RBellog 0 | Download Evidence |
| Search for the Medication by Ingredient Code and ID | Evidence Report | Download Evidence |
| Search for the Medication by Lot Number and ID | INFO - entry.resource.count() > 0 | Details |
| Search for the Medication by Lot Number and ID | INFO - entry.resource.where(id.replaceMatches('/_history/.+','').matches('\\bMedication-Read-Example$')).count() = 1 | Details |
| Search for the Medication by Lot Number and ID | RBellog 0 | Download Evidence |
| Search for the Medication by Lot Number and ID | Evidence Report | Download Evidence |
| Search for the Medication by Status and ID | INFO - entry.resource.count() > 0 | Details |
| Search for the Medication by Status and ID | INFO - entry.resource.where(id.replaceMatches('/_history/.+','').matches('\\bMedication-Read-Example$')).count() = 1 | Details |
| Search for the Medication by Status and ID | RBellog 0 | Download Evidence |
| Search for the Medication by Status and ID | Evidence Report | Download Evidence |