Serenity BDD Report
Home > Requirements > Stufe5 > Basis > Testing search parameters against a resource of type "private" coverage (@coverage-search-private)
Report generated 01-09-2026 07:02

Feature: Testing search parameters against a resource of type "private" coverage (@coverage-search-private)

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 Coverage-Read-Private test case 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 "Coverage"

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

Examples:

searchParamValuesearchParamType
_idtoken
_countnumber
statustoken
typetoken
beneficiaryreference
payorreference

Examples:

searchParamValuesearchParamType
_tagtoken
subscriberreference

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

And response bundle contains resource with ID "${data.coverage-read-private-id}" with error message "The requested Coverage ${data.coverage-read-private-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"

When Get FHIR resource at "http://fhirserver/Coverage/?_tag=${data.tag-system}%7C${data.tag-value}&_id=${data.coverage-read-private-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'

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

When Get FHIR resource at "http://fhirserver/Coverage/?{searchParameter}=Patient/{searchValue}" 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({searchParameter}.reference.replaceMatches("/_history/.+","").matches("\b${data.patient-read-id}$"))' with error message 'There are search results, but they do not fully match the search criteria'

Examples:

searchParametersearchValue
beneficiary${data.patient-read-id}
payor${data.patient-read-id}

When Get FHIR resource at "http://fhirserver/Coverage/?beneficiary.identifier=${data.patient-read-identifier-system}%7C${data.patient-read-identifier-value}" 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 "beneficiary" in all bundle resources references resource with ID "${data.patient-read-id}"

When Get FHIR resource at "http://fhirserver/Coverage/?status=active&beneficiary=Patient/${data.patient-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(status = 'active')" with error message 'There are search results, but they do not fully match the search criteria'

And element "beneficiary" in all bundle resources references resource with ID "${data.patient-read-id}"

When Get FHIR resource at "http://fhirserver/Coverage/?beneficiary=Patient/${data.patient-read-id}&type=http://fhir.de/CodeSystem/versicherungsart-de-basis%7CSEL" 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(type.coding.where(system = 'http://fhir.de/CodeSystem/versicherungsart-de-basis').code = 'SEL')" with error message 'There are search results, but they do not fully match the search criteria'

And element "beneficiary" in all bundle resources references resource with ID "${data.patient-read-id}"

Feature Coverage By Scenario

Test Outcomes

Test Performance

Key Statistics

Number of Scenarios 9 Total Duration 16s
Total Number of Test Cases 17 Fastest Test 279ms
Number of Manual Test Cases 0 Slowest Test 7s
Tests Started Sep 01, 2026 07:02:59 Average Execution Time 941ms
Tests Finished Sep 01, 2026 07:03:15 Cumulative Test Time
(sum of all individual test durations)
16s

Automated Tests

feature Scenario Context Steps Started Total Duration Result
Testing search parameters against a resource of type "private" Coverage (@Coverage-Search-Private) Precondition 2 07:02:59 426ms SUCCESS
Testing search parameters against a resource of type "private" Coverage (@Coverage-Search-Private) Read and Validation of the CapabilityStatement 2 07:03:00 7s 428ms SUCCESS
Testing search parameters against a resource of type "private" Coverage (@Coverage-Search-Private) Validation of the search parameter definitions in the CapabilityStatement
8 passing test cases
1 07:03:07 2s 410ms SUCCESS
Testing search parameters against a resource of type "private" Coverage (@Coverage-Search-Private) Search for the Coverage by ID 3 07:03:10 807ms SUCCESS
Testing search parameters against a resource of type "private" Coverage (@Coverage-Search-Private) Optional Search for the Condition by Tag and ID 4 07:03:10 931ms SUCCESS
Testing search parameters against a resource of type "private" Coverage (@Coverage-Search-Private) Search for the Coverage by Beneficiary and Payor
2 passing test cases
3 07:03:11 1s 421ms SUCCESS
Testing search parameters against a resource of type "private" Coverage (@Coverage-Search-Private) Search for the Coverage Coverage by Beneficiary (Chaining) 3 07:03:13 781ms SUCCESS
Testing search parameters against a resource of type "private" Coverage (@Coverage-Search-Private) Search for the Coverage by Status and Beneficiary 4 07:03:14 956ms SUCCESS
Testing search parameters against a resource of type "private" Coverage (@Coverage-Search-Private) Search for the Coverage by Type of Insurance and Beneficiary 4 07:03:15 880ms 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 = 'Coverage' 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 = 'Coverage' 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 = 'Coverage' 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 = 'Coverage' and searchParam.where(name = '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 = 'Coverage' and searchParam.where(name = 'type' 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 = 'Coverage' and searchParam.where(name = 'beneficiary' 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 = 'Coverage' and searchParam.where(name = 'payor' and type = 'reference').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 = 'Coverage' and searchParam.where(name = '_tag' 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 = 'Coverage' and searchParam.where(name = 'subscriber' and type = 'reference').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
Search for the Coverage by ID INFO - entry.resource.where(id.replaceMatches('/_history/.+','').matches('\\bCoverage-Read-Private-Example$')).count() = 1  Details
Search for the Coverage by ID INFO - None of the codings provided are in the value set 'Coverage Type and Self-Pay Codes' (http://hl7.org/fhir/ValueSet/coverage-type|4.0.1), and a coding is recommended to come from this value set) (codes = http://fhir.de/CodeSystem/versicherungsart-de-basis#SEL)  Details
Search for the Coverage by ID WARN - Profile reference 'https://gematik.de/fhir/isik/StructureDefinition/ISiKVersicherungsverhaeltnisSelbstzahler' has not been checked because it is unknown  Details
Search for the Coverage 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 Coverage by ID RBellog 0  Download Evidence
Search for the Coverage by ID Evidence Report  Download Evidence
Optional Search for the Condition by Tag and ID INFO - entry.resource.count() > 0  Details
Optional Search for the Condition by Tag and ID INFO - entry.resource.all(meta.tag.where(code='external').exists())  Details
Optional Search for the Condition by Tag and ID INFO - entry.resource.where(id.replaceMatches('/_history/.+','').matches('\\bCoverage-Read-Private-Example$')).count() = 1  Details
Optional Search for the Condition by Tag and ID RBellog 0  Download Evidence
Optional Search for the Condition by Tag and ID Evidence Report  Download Evidence
Search for the Coverage by Beneficiary and Payor INFO - entry.resource.count() > 0  Details
Search for the Coverage by Beneficiary and Payor INFO - entry.resource.all(beneficiary.reference.replaceMatches("/_history/.+","").matches("\\bPatient-Read-Example$"))  Details
Search for the Coverage by Beneficiary and Payor RBellog 1  Download Evidence
Search for the Coverage by Beneficiary and Payor Evidence Report  Download Evidence
Search for the Coverage by Beneficiary and Payor INFO - entry.resource.count() > 0  Details
Search for the Coverage by Beneficiary and Payor INFO - entry.resource.all(payor.reference.replaceMatches("/_history/.+","").matches("\\bPatient-Read-Example$"))  Details
Search for the Coverage by Beneficiary and Payor RBellog 2  Download Evidence
Search for the Coverage by Beneficiary and Payor Evidence Report  Download Evidence
Search for the Coverage Coverage by Beneficiary INFO - entry.resource.count() > 0  Details
Search for the Coverage Coverage by Beneficiary INFO - entry.resource.all(beneficiary.reference.replaceMatches('/_history/.+','').matches('\\bPatient-Read-Example$'))  Details
Search for the Coverage Coverage by Beneficiary RBellog 0  Download Evidence
Search for the Coverage Coverage by Beneficiary Evidence Report  Download Evidence
Search for the Coverage by Status and Beneficiary INFO - entry.resource.count() > 0  Details
Search for the Coverage by Status and Beneficiary INFO - entry.resource.all(status = 'active')  Details
Search for the Coverage by Status and Beneficiary INFO - entry.resource.all(beneficiary.reference.replaceMatches('/_history/.+','').matches('\\bPatient-Read-Example$'))  Details
Search for the Coverage by Status and Beneficiary RBellog 0  Download Evidence
Search for the Coverage by Status and Beneficiary Evidence Report  Download Evidence
Search for the Coverage by Type of Insurance and Beneficiary INFO - entry.resource.count() > 0  Details
Search for the Coverage by Type of Insurance and Beneficiary INFO - entry.resource.all(type.coding.where(system = 'http://fhir.de/CodeSystem/versicherungsart-de-basis').code = 'SEL')  Details
Search for the Coverage by Type of Insurance and Beneficiary INFO - entry.resource.all(beneficiary.reference.replaceMatches('/_history/.+','').matches('\\bPatient-Read-Example$'))  Details
Search for the Coverage by Type of Insurance and Beneficiary RBellog 0  Download Evidence
Search for the Coverage by Type of Insurance and Beneficiary Evidence Report  Download Evidence
Serenity BDD version 5.3.10