onc-healthit / onc-certification-g10-test-kit

ONC Certification (g)(10) Standardized API Tests
Apache License 2.0
34 stars 11 forks source link

Inferno Test Suite - EHR Practitioner App #109

Closed naveen101112 closed 2 years ago

naveen101112 commented 2 years ago

Hi Team,

As I don't know the process of running the EHR Practitioner App, I am stuck at the test of that group . Can any one please help me by providing information on how to run the tests in EHR Practitioner App? image

radamson commented 2 years ago

Hi @naveen101112. It looks like you are using the Inferno Reference Server Preset. The EHR Launch test requires you to initiate the launch from the EHR (in this case https://inferno.healthit.gov/reference-server/)

If you go to https://inferno.healthit.gov/reference-server/ you'll see a link to the app launch page where you can paste in the launch URL (https://inferno.healthit.gov/suites/custom/smart/launch).

See the short gif below: EHR

naveen101112 commented 2 years ago

Thank you for your instant response @radamson. Will try with the reference you provided.

naveen101112 commented 2 years ago

Hi @radamson,

After trying with your reference the test is running fine now, but only one test case is getting failed i.e.

image

Tried modifying the App Launch URL like, https://inferno.healthit.gov/inferno/oauth2/static/launch?launch=123&iss=**custome_issuer_url** even though getting same error specified in screenshot. Can you please suggest me what to be done to overcome this

radamson commented 2 years ago

Your original screen shot is from Inferno ONC (g)(10)Standardized API Test Kit. The screenshot you just posted is from (Legacy) Inferno Program Edition.

Are you using a version of Inferno hosted on https://inferno.healthit.gov/? If so which one?

Screen Shot 2022-04-27 at 2 33 03 PM

naveen101112 commented 2 years ago

I am getting following error while trying with (g)(10) version, when redirecting to inferno screen.

image

So I tried with (Legacy) version. Here it is redirecting to inferno screen but failing with a test case which I mentioned above.

radamson commented 2 years ago

For now lets stick with debugging the (g)(10) version since the there are some differences between the two, like the redirect uri which you are required to provide to the reference server, which I don't want us to confuse.

A couple questions to help me investigate this with you:

  1. Are you running this from the hosted instance on https://inferno.healthit.gov or from your own local instance? a. If you are running on https://inferno.healthit.gov can you share the URL so I can take a look at what you've run and the inputs and outputs?
  2. Can you share the inputs & outputs of the failing tests? See below for an example of showing test inputs.
Screen Shot 2022-04-28 at 9 17 24 AM
naveen101112 commented 2 years ago
  1. We are running tests on the https://inferno.healthit.gov. I am providing our server URL and credentials.

  2. image

radamson commented 2 years ago

Do you have an EHR launch page? Note that in this test you are required to "launch" the Inferno application from within your EHR Instance. These test are unique relative to other tests where just giving inputs and pressing the run button on the test isn't enough - once you've started the tests Inferno will be waiting for a redirect request which includes the iss and launch URL parameters

If you watch the gif I posted above you'll notice that I took these steps:

  1. Started the Inferno EHR launch test
  2. Copied the Inferno redirect URL from the inferno modal window (https://inferno.healthit.gov/suites/custom/smart/launch)
  3. In another browser window/tab, go to the EHR server and launch the application with that URL
  4. The browser should then return you back to Inferno where test execution will proceed

You can read more about this part of the spec and the request Inferno is expecting here: SMART App Launch EHR launch sequence

naveen101112 commented 2 years ago

Hi @radamson, Thank you for your support, for now that test is being pass after trying to launch inferno standalone app with our end-point as issuer.

Justin-Ramm commented 2 years ago

We also encountered this issue. A bit of troubleshooting revealed that Inferno is strict with regard to how it handles trailing slashes in the FHIR Endpoint. If you have a trailing slash in the FHIR Endpoint you specify in the configuration you use before beginning the EHR segment of the testing, but your FHIR server returns an iss without a trailing slash, you will hit the error described above. It can be resolved by remove the trailing slash from the FHIR Endpoint you specify when you configure this test before running it (or perhaps adding a slash - whatever is needed to match your server's iss behavior)

All of the examples in the HL7 spec do not have a trailing slash.

Unclear whether this should be considered an issue or not, but I thought this comment might help others.