Skip to content
Rob Scanlon edited this page Jun 9, 2022 · 31 revisions

Welcome to the Inferno Test Kit tutorial. This is a walk-through of useful functionality provided by the Inferno Framework to help users develop and package Inferno Test Suites, which can be used to evaluate conformance of FHIR systems to applicable FHIR Implementation Guides or other criteria.

This tutorial is designed to demonstrate commonly used capabilities by the Inferno Framework step-by-step, with the goal of providing a writing a basic set of tests for servers of the US Core Implementation Guide v3.1.1. You can either start at the beginning, and work through each step, or skip to steps you are interested in. Each step provides a branch to provide an easy starting point.

Servers to test against

Since we are writing tests for servers, it is helpful to have reference servers to develop tests against. Some commonly used reference servers, loaded with data, includes:

Additional public test servers are listed on the HL7 Confluence Public Test Servers Page

Environment setup

To develop tests for Inferno, you need to have a working copy of Docker Desktop running, and git to clone this repository. If you are attending the Let's Build session at FHIR DevDays, you may request temporary access to GitHub Codespaces, which is an easy way to provision a cloud VM configured to run Inferno and support test development.

Tutorial Steps

The tutorial is broken into the following steps, each building on one-another. Each step has an associated branch in this repository, for example step-2 and step-2-solution.

  1. Add bearer_token user input
  2. Create a new search test
  3. Add implementation guide package
  4. Using Ruby to automate repetitive tests
  5. Messages and Result Status
  6. Importing tests

By the end of the tutorial, you will have a working set of patient search tests for all relevant US Core resources, integrated with optional SMART App Launch tests imported from another test kit:

Screen Shot 2022-06-09 at 1 41 43 AM