Serenity BDD Report
Home > Requirements > Stufe5 > Medikation > Testing search parameters against a resource of type allergyintolerance (@allergyintolerance-search)
Report generated 01-09-2026 07:13

Feature: Testing search parameters against a resource of type allergyintolerance (@allergyintolerance-search)

Scenarios

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 AllergyIntolerance-Read test case must have been executed successfully beforehand.

  • This Search Scenario performs the following conditions exist:
    • At least one Resource with ID as specified in the property 'medication-allergyintolerance-read-id'
    • At least one Resource with clinical-status 'active'
    • At least one Resource with type 'allergy'
    • At least one Resource with patient that references to the ID as specified in the property 'medication-allergyintolerance-read-patient-id'
    • At least one Resource with category 'environment'
    • At least one Resource with onset Date before than 2026-01-01
    • At lease one Resource with (recorder) date after 2026-01-01

When Get FHIR resource at "http://fhirserver/metadata" with content type "json"

And CapabilityStatement contains interaction "search-type" for resource "AllergyIntolerance"

And CapabilityStatement contains definition of search parameter "{searchParamValue}" of type "{searchParamType}" for resource "AllergyIntolerance"

Examples:

searchParamValuesearchParamType
_idtoken
_countnumber
clinical-statustoken
patientreference
datedate
categorytoken
typetoken

Examples:

searchParamValuesearchParamType
_tagtoken
_hasstring

When Get FHIR resource at "http://fhirserver/AllergyIntolerance/?_id=${data.medication-allergyintolerance-read-id}" with content type "xml"

And FHIR current response body is a valid CORE resource and conforms to profile "https://hl7.org/fhir/StructureDefinition/Bundle"

And response bundle contains resource with ID "${data.medication-allergyintolerance-read-id}" with error message "The requested AllergyIntolerance ${data.medication-allergyintolerance-read-id} is not contained in the response bundle."

When Post FHIR search request to "http://fhirserver/AllergyIntolerance/_search" with content type "xml" and parameters:

type_count
allergy${data.search-count}

And FHIR current response body evaluates the FHIRPath 'entry.resource.count() }= 0 and entry.resource.count() {= ${data.search-count}' with error message 'No search results were found'

And FHIR current response body evaluates the FHIRPath "entry.resource.all(type = 'allergy').exists()" with error message 'There are search results, but they do not fully match the search criteria'

When Post FHIR search request to "http://fhirserver/AllergyIntolerance/_search" with content type "xml" and parameters:

clinical-status_count
active${data.search-count}

And FHIR current response body evaluates the FHIRPath 'entry.resource.count() } 0 and entry.resource.count() {= ${data.search-count}' with error message 'No search results were found'

And FHIR current response body evaluates the FHIRPath "entry.resource.all(clinicalStatus.coding.where(system = 'http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical' and code = 'active').exists()).exists()" with error message 'There are search results, but they do not fully match the search criteria'

When Get FHIR resource at "http://fhirserver/AllergyIntolerance/?_count=${data.search-count}&patient=Patient/${data.medication-allergyintolerance-read-patient-id}" with content type "xml"

And FHIR current response body evaluates the FHIRPath 'entry.resource.count() } 0 and entry.resource.count() {= ${data.search-count}' with error message 'No search results were found'

And element "patient" in all bundle resources references resource with ID "${data.medication-allergyintolerance-read-patient-id}" with error message 'There are search results, but they do not fully match the search criteria'

When Get FHIR resource at "http://fhirserver/AllergyIntolerance/?_count=${data.search-count}&category=environment" with content type "xml"

And FHIR current response body evaluates the FHIRPath 'entry.resource.count() } 0 and entry.resource.count() {= ${data.search-count}' with error message 'No search results were found'

And FHIR current response body evaluates the FHIRPath "entry.resource.all(category.where($this = 'environment').exists()).exists()" with error message 'There are search results, but they do not fully match the search criteria'

When Get FHIR resource at "http://fhirserver/AllergyIntolerance/?date=ge2026-01-01&_count=${data.search-count}" with content type "xml"

And FHIR current response body evaluates the FHIRPath 'entry.resource.count() } 0 and entry.resource.count() {= ${data.search-count}' with error message 'No search results were found'

And FHIR current response body evaluates the FHIRPath "entry.resource.all(recordedDate is dateTime and recordedDate } @2026-01-01).exists()" with error message 'There are search results, but they do not fully match the search criteria'

When Post FHIR search request to "http://fhirserver/AllergyIntolerance/_search" with content type "xml" and parameters:

_tag_count
${data.tag-system}${data.tag-value}

And FHIR current response body evaluates the FHIRPath 'entry.resource.count() } 0 and entry.resource.count() {= ${data.search-count}' 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'

Feature Coverage By Scenario

Test Outcomes

Test Performance

Key Statistics

Number of Scenarios 10 Total Duration 17s
Total Number of Test Cases 18 Fastest Test 294ms
Number of Manual Test Cases 0 Slowest Test 8s
Tests Started Sep 01, 2026 07:13:36 Average Execution Time 987ms
Tests Finished Sep 01, 2026 07:13:54 Cumulative Test Time
(sum of all individual test durations)
17s

Automated Tests

feature Scenario Context Steps Started Total Duration Result
Testing search parameters against a resource of type AllergyIntolerance (@AllergyIntolerance-Search) Precondition 2 07:13:36 489ms SUCCESS
Testing search parameters against a resource of type AllergyIntolerance (@AllergyIntolerance-Search) Read and Validation of the CapabilityStatement 2 07:13:37 8s 350ms SUCCESS
Testing search parameters against a resource of type AllergyIntolerance (@AllergyIntolerance-Search) Validation of the search parameter definitions in the CapabilityStatement
9 passing test cases
1 07:13:45 3s 709ms SUCCESS
Testing search parameters against a resource of type AllergyIntolerance (@AllergyIntolerance-Search) Search for the AllergyIntolerance resource by ID 3 07:13:49 814ms SUCCESS
Testing search parameters against a resource of type AllergyIntolerance (@AllergyIntolerance-Search) Search for AllergyIntolerance resources that have the Type 'allergy', group by _count 3 07:13:49 837ms SUCCESS
Testing search parameters against a resource of type AllergyIntolerance (@AllergyIntolerance-Search) Search for AllergyIntolerance resources that have the Clinical Status 'active', group by _count 3 07:13:50 733ms SUCCESS
Testing search parameters against a resource of type AllergyIntolerance (@AllergyIntolerance-Search) Search for the AllergyIntolerance resources by Patient, group by _count 3 07:13:51 820ms SUCCESS
Testing search parameters against a resource of type AllergyIntolerance (@AllergyIntolerance-Search) Search for the AllergyIntolerance resources that have the Category 'environment', group by _count 3 07:13:52 711ms SUCCESS
Testing search parameters against a resource of type AllergyIntolerance (@AllergyIntolerance-Search) Search for the AllergyIntolerance by registered Date (registered) after 2026-01-01, group by _count 3 07:13:53 704ms SUCCESS
Testing search parameters against a resource of type AllergyIntolerance (@AllergyIntolerance-Search) Optional Search for AllergyIntolerance resources that have the given Tag, group by _count 3 07:13:53 692ms SUCCESS

Manual Tests

No manual tests were recorded

Evidence

Scenario Title Details
Precondition RBellog 0  Download Evidence
Read and Validation of the CapabilityStatement INFO - rest.where(mode = 'server').resource.where(type = 'AllergyIntolerance' 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 = 'AllergyIntolerance' 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 = 'AllergyIntolerance' 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 = 'AllergyIntolerance' and searchParam.where(name = 'clinical-status' 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 = 'AllergyIntolerance' and searchParam.where(name = 'patient' and type = 'reference').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 = 'AllergyIntolerance' and searchParam.where(name = 'date' and type = 'date').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 = 'AllergyIntolerance' and searchParam.where(name = 'category' 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 = 'AllergyIntolerance' and searchParam.where(name = 'type' 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 = 'AllergyIntolerance' and searchParam.where(name = '_tag' 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 = 'AllergyIntolerance' and searchParam.where(name = '_has' and type = 'string').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 AllergyIntolerance resource by ID WARN - Profile reference 'https://gematik.de/fhir/isik/StructureDefinition/ISiKAllergieUnvertraeglichkeit' has not been checked because it is unknown  Details
Search for the AllergyIntolerance resource 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 AllergyIntolerance resource by ID INFO - entry.resource.where(id.replaceMatches('/_history/.+','').matches('\\bAllergyIntolerance-Read-Example$')).count() = 1  Details
Search for the AllergyIntolerance resource by ID RBellog 0  Download Evidence
Search for the AllergyIntolerance resource by ID Evidence Report  Download Evidence
Search for AllergyIntolerance resources that have the Type 'allergy', group by _count INFO - entry.resource.count() >= 0 and entry.resource.count() <= 20  Details
Search for AllergyIntolerance resources that have the Type 'allergy', group by _count INFO - entry.resource.all(type = 'allergy').exists()  Details
Search for AllergyIntolerance resources that have the Type 'allergy', group by _count RBellog 0  Download Evidence
Search for AllergyIntolerance resources that have the Type 'allergy', group by _count Evidence Report  Download Evidence
Search for AllergyIntolerance resources that have the Clinical Status 'active', group by _count INFO - entry.resource.count() > 0 and entry.resource.count() <= 20  Details
Search for AllergyIntolerance resources that have the Clinical Status 'active', group by _count INFO - entry.resource.all(clinicalStatus.coding.where(system = 'http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical' and code = 'active').exists()).exists()  Details
Search for AllergyIntolerance resources that have the Clinical Status 'active', group by _count RBellog 0  Download Evidence
Search for AllergyIntolerance resources that have the Clinical Status 'active', group by _count Evidence Report  Download Evidence
Search for the AllergyIntolerance resources by Patient, group by _count INFO - entry.resource.count() > 0 and entry.resource.count() <= 20  Details
Search for the AllergyIntolerance resources by Patient, group by _count INFO - entry.resource.all(patient.reference.replaceMatches('/_history/.+','').matches('\\bPatient-Read-Example$'))  Details
Search for the AllergyIntolerance resources by Patient, group by _count RBellog 0  Download Evidence
Search for the AllergyIntolerance resources by Patient, group by _count Evidence Report  Download Evidence
Search for the AllergyIntolerance resources that have the Category 'environment', group by _count INFO - entry.resource.count() > 0 and entry.resource.count() <= 20  Details
Search for the AllergyIntolerance resources that have the Category 'environment', group by _count INFO - entry.resource.all(category.where($this = 'environment').exists()).exists()  Details
Search for the AllergyIntolerance resources that have the Category 'environment', group by _count RBellog 0  Download Evidence
Search for the AllergyIntolerance resources that have the Category 'environment', group by _count Evidence Report  Download Evidence
Search for the AllergyIntolerance by registered Date (registered) after 2026-01-01, group by _count INFO - entry.resource.count() > 0 and entry.resource.count() <= 20  Details
Search for the AllergyIntolerance by registered Date (registered) after 2026-01-01, group by _count INFO - entry.resource.all(recordedDate is dateTime and recordedDate > @2026-01-01).exists()  Details
Search for the AllergyIntolerance by registered Date (registered) after 2026-01-01, group by _count RBellog 0  Download Evidence
Search for the AllergyIntolerance by registered Date (registered) after 2026-01-01, group by _count Evidence Report  Download Evidence
Optional Search for AllergyIntolerance resources that have the given Tag, group by _count INFO - entry.resource.count() > 0 and entry.resource.count() <= 20  Details
Optional Search for AllergyIntolerance resources that have the given Tag, group by _count INFO - entry.resource.all(meta.tag.where(code='external').exists())  Details
Optional Search for AllergyIntolerance resources that have the given Tag, group by _count RBellog 0  Download Evidence
Optional Search for AllergyIntolerance resources that have the given Tag, group by _count Evidence Report  Download Evidence
Serenity BDD version 5.3.10