Proof
How Perfuse is tested, and what the tests found
A test that only checks Perfuse against itself proves little. Perfuse is tested against the official conformance suites and against the real software it talks to, and the results, failures included, are published.
Inferno
The official FHIR test kits, run in public
What it is
Inferno is the testing tool ONC and HL7 publish for FHIR servers. Its test kits check a server against each implementation guide, request by request.
Why it matters
CMS points payers to the Da Vinci guides; Inferno is how anyone checks a server follows them.
How to check it yourself
Open inferno.healthit.gov, choose a kit, and point it at test.perfuse.health. The settings we use are in the repository.
| Test kit | Result |
|---|---|
| SMART App Launch 2.2, public app | 80 of 80 |
| SMART App Launch 2.2, confidential app | 67 pass, 3 omitted |
| Bulk Data Access 2.0 | 48 of 48 |
| Da Vinci PDex 2.0, payer-to-payer | 19 of 19 |
| Da Vinci PDex 2.0, API coverage | 312 pass, 1 skip |
| Da Vinci CRD 2.2.1 | 92 pass, 0 fail |
| Da Vinci PAS 2.2.1 | 82 pass, 2 fail |
| Da Vinci DTR 2.2.0 | 43 pass, 2 fail |
| Da Vinci Plan-Net 1.1.0 | 199 pass, 10 fail |
What is left
Every remaining failure, explained
Where a failure is the test kit's rather than Perfuse's, the upstream report is linked. None is hidden by leaving a test out.
PAS, 2 fail
The kit asks for must-support extensions on ClaimResponse that the extensions' own definitions do not allow there, so a valid resource cannot carry them. Reported upstream: davinci-pas-test-kit #11.
DTR, 2 fail
The same kind of finding in DTR's kit, fixed upstream and waiting for a release: davinci-dtr-test-kit #130.
Plan-Net, 10 fail
The kit picks the value for a chained search from the first organization it has seen, not one the searched resources refer to, so the search rightly finds nothing. davinci-plan-net-test-kit #34.
PDex, 1 skip
A list of elements the guide asks for that cannot appear in a resource that also passes the same guide's profile.
Real software, not mocks
Tested against what it talks to
A client and server written by the same people agreeing only proves they agree with each other. So each connector is tested against someone else's software.
The full record of what each test did, what it found, and what has never been tested is the verification record.
Be honest about it
What has not been proven
Perfuse has not yet run in production at a hospital or health plan. Every test above used test data. We say so here because it is the first thing a careful buyer should ask, and the answer should be easy to find.
If you would like to be one of the first sites, get in touch.
The public test server
test.perfuse.health runs the FHIR, CRD, DTR, PAS, Bulk Data and SMART endpoints with test data only, and is checked every half hour.