Tip 12 in the Interoperability Tip Series
In tips from the past few weeks, we covered two requirements-related artifacts analysts must create: 1) profiles or specs and 2) gap analyses, which include mapping tables.
In this tip, we look at testing an interface. And see how it doesn’t have to be an exercise in frustration.
When to Test: 3 Phases
You need to perform healthcare interface testing at 3 different phases in the HL7 interface lifecycle: during configuration and development; during the formal validation phase; and during maintenance.
Why Test An Interface?
When you start to develop and iterate on your interface, you run tests to avoid introducing new problems – you check and test your code to make sure you are not injecting errors. This is true both during interface development or configuration and while in maintenance mode. This testing helps you determine whether or not the interface makes sense and meets your requirements.
Once you’re satisfied with the interface, you move to validation testing. This is when you determine if the interface will work with and meet the requirements of your clinical workflow. Specifically, you test performance, extreme data cases, and how well the interface supports large volumes. By figuring this out before go-live, you save a lot of implementation headaches, and alleviate the time clinicians need to spend helping you validate the interface once you go live.
What Matters: Reduce the Cycle Time
Healthcare interface testing can be time-consuming. Some organizations find that testing activity is the most time-consuming part of interface development. George, a Caristix client who works for a healthcare vendor, explains, “The implementation process for our product runs several months. Throughout that timeline, we have checkpoints where we need to make sure the feeds are sending data that our product can consume. First, when we scope the feeds, we have to make sure we document all the gaps and work out with the customer how to bridge them. Then the feeds get built. And we test them, and find more gaps. We fix those gaps, and then test, and find more. The cycle repeats as needed until all gaps are resolved.”
That’s the essence of testing.
The Next Step: What to Look for in a Test Tool
So that’s the what, when, and why of testing. But how do you handle testing efficiently? The key is to automate HL7 interface tests. While you need to spend time during the development/configuration phase setting up the tests, during the validation phase, you can take advantage of automation and save a lot of time. Of course, Caristix offers test automation. Some interface engines include test tools. Regardless of the source of your test software, make sure you can do the following:
- Be able to connect to web services or a database, such as by calling a web service, and check in the database after sending a message
- Validate inbound and outbound messages
- Validate ack and nack
- Generate values and test messages from a profile or specification, and generate a large volume of data/messages if you’re conducting volume testing
- Repeat test plans/scenarios, and create reports
We’ll cover more on testing in the upcoming weeks. Stay tuned for guidance on test types, test reports, and test systems.
Learn More about Test Automation
Want to see how Caristix technology automates testing? Check out this 2-minute excerpt on interface testing and validation from our on-demand demo. See how to prevent costly project rework and delays.