I am in the process of implementing an HL7 Module in our EMR, but I am confused as how to test the messages. I was looking at LabCorp and Surescripts and was unable to find a testing Api or a module, it seems like I will have to deal with bit of bureaucracy to get any help from them.
Is there an easy way to test my HL7 module?
Labcorp is a pretty hideous offender when it comes to HL7. We've always said at my company that if there were such a thing as an "HL7 Police" then Labcorp would be their first stop. FYI, Quest is almost as bad.
I've done many interfaces with Labcorp and here are a few tips if you're just getting started or trying to get started with them. They are notoriously uncooperative when it comes to working with developers who approach them "unsolicited".
You absolutely NEED a customer of YOURS who is also a customer of THEIRS (or one who does a lot of labs and will at least tease them). If you've got a customer who does any volume of labs with them at all you will discover that an entirely new world will open up for you with them. If your customer does 5000 labs a month, they will put somebody on a bicycle, drive the HL7 messages to your office and hand deliver them on a thumb drive, and then drop your kids off at school on their way back.
Once you've got the customer let them be the middleman for the first few contacts with Labcorp. You'll want to get Labcorps HL7 specification AND, this is critical, you'll want to get some EXAMPLE messages. Remember that if you're doing BOTH Lab Orders AND Lab Results you'll want to get example HL7 messages for both the Lab Order and the Lab Result.
One thing that I've found is that they are always "stingy" on their example messages so you'll likely get only 1 or 2 examples. Use a good HL7 editor like the Hermetech HL7 Notepad http://www.hermetechnz.com/documentation/UltraPort/HL7Notepad/index.html to take your example messages and "clone" them into several hundreds or thousands of unique messages so that you can do some "volume" testing on your interface.
We always use the 7edit Editor for all HL7 v2 messages (all versions supported) and a great Documentation is being delivered with the editor too.
HL7 Inspector is a free tool which you can use as an LLP sender/receiver - great for testing purposes. It also has a number of features related to inspecting/validating individual messages.
On my experience as an automation tester working in a EMR software solution I'm getting great results using HL7 Soup combined with the automation software.
Not only it can be handled quite easily with the automation tool I'm using (TestComplete), but helped me to improve my level of understanding on HL7 messages (didn't have any experience in HL7 before).
So my suggestions would be first automate the testing process, and second use a good HL7 editor as HL7 Soup to get the most of it.
For HL7 v3 messages, consider Test Level 7 (TL7).
Caristix Test can help you with hl7 testing. It also helps with test automation (http://caristix.com/products/test/test-plans-at-your-fingertips/) Not free but quite powerful.
For testing HL7 interfaces I use 3 tools all the time:
- HAPI Test Panel: to send sample messages http://hl7api.sourceforge.net/hapi-testpanel/
- Mirth Connect: to see messages coming through http://www.mirthcorp.com/products/mirth-connect
- WireShark: as a low-level debugger (packet sniffer) https://www.wireshark.org/
I am not sure of the details of your module, however we use Mirth reading sample messages from an FTP server and pushing them through an LLP connector (or XML) to our software as required. This allows us to have a variety of data "sets" and various malformed messages to test against in a reproducible way. In fact we can process 100,000's of messages an hour It also simulates a "real" environment so that we can do load testing.
Messaging Workbench allows testing HL7v2 messages against your own data types and segments which might be any, event completely out of "standard". This tool is free, however it is not supported so you get what you get with all glitches and features. Imho, it's still worth to try.
I'm late to answer this. In case anyone is still searching for a answer, try using HL7 Soup. After installing HL7 Soup you can create your own sending profile and send HL7 messages to your HL7 module.
来源:https://stackoverflow.com/questions/9308945/testing-hl7-messages