Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: SDS-6048 Ret URL og propertynavn til integrationstest

...

Dato

Ansvarlig

Beskrivelse

26/2-2018KvalitetsITInitiel version
07/04-2021KvalitetsITFlere detaljer vedr. integrationstest med docker-compose

Definitioner og referencer

...

mvn test -Pintegration-test   -Dconsentadministration.endpoint=http://test1-cnsp.ekstern-test.nspop.dk:8080/consent-administration/service -Dlarservice.wsdlendpoint=http://localhost:8082/lar/MedicationAllergyService?wsdl

Parametrene, der skal sættes er dokumenteret herunder

Property

Beskrivelse

consentadministration.endpointEndpoint til samtykkeadministrationen, der skal benyttes
larservice.wsdlendpointURL, der udpeger Larservicens WSDLLarservicen


Ved aktivering af integrationstesten vil helbreds/versionsservice afprøves. Denne kaldes også health servicen.

Derudover vil der laves test af oprettelse samt hentning af allergioplysninger via LAR med udgangpunkt i de User Stories og krav som er beskrevet i krav specifikationen.

User Stories og krav anvendt

Formålet med dette afsnit er at forklare, hvordan integrations testens dele er blevet til. Det skal løbende vurderes om krav og integrationstest fortsat hænger sammen.

Der arbejdes med følgende user stories, og disse understøttes af integrations testen.

Kørsel af integrationstest mod lokalt kørende service

Udfør følgende trin, hvis du ønsker at køre integrationstest mod lokal version deployed vha. docker-compose (Se detaljer i udvikler guides til LAR og CAVE service)

  1. Tjek source ud til LAR og CAVE servicene
  2. Byg servicene
  3. Start CAVE servicen lokalt med docker-compose
  4. Start LAR servicen lokalt med docker-compose
  5. Kør mvn test -Pintegration-test   -Dconsentadministration.endpoint=http://test1-cnsp.ekstern-test.nspop.dk:8080/consent-administration/service -Dlarservice.endpoint=http://localhost:8082/lar/MedicationAllergyService

User Stories og krav anvendt

Formålet med dette afsnit er at forklare, hvordan integrations testens dele er blevet til. Det skal løbende vurderes om krav og integrationstest fortsat hænger sammen.

Der arbejdes med følgende user stories, og disse understøttes af integrations testen.

  1. Som en sundhedsperson, vil jeg registrere medicin-allergioplysninger for en patient, så oplysningerne bliver tilgængelige på tværs af parterne i sundhedsvæsenet
  2. Som en sundhedsperson, vil jeg se medicin-allergioplysninger for en patient,
  3. Som en sundhedsperson, vil jeg registrere medicin-allergioplysninger for en patient, så oplysningerne bliver tilgængelige på tværs af parterne i sundhedsvæsenet
  4. Som en sundhedsperson, vil jeg se medicin-allergioplysninger for en patient, så jeg kan undgå at ordinere medicin, som patienten ikke kan tåle
  5. Som en sundhedsperson, vil jeg opdatere medicin-allergioplysninger for en patient, så oplysningerne bliver tilgængelige på tværs af parterne i sundhedsvæsenet

...

Minlog og behandler relations service kaldes under integrationstesten, og valideres indirekte ved at en eventuelt fejlsituation vil får LAR servicen til at fejle. Resultatet i selve de 2 services valideres dog ikke automatisk, da det vil være meget omstændigt. Efter at integrationstesten er kørt på test serveren bør MinLog tjekkes manuelt for at se at den i properties angive tekst er kommet korrekt ind, også med de specielle danske bogstaver. Pt er denne tekst: "Medicin intolerens læst (ÆæØøÅå)".

...

at se at den i properties angive tekst er kommet korrekt ind, også med de specielle danske bogstaver. Pt er denne tekst: "Medicin intolerens læst (ÆæØøÅå)".

Registrering

  1. registrering af allergi med uuid - postivt udfald
    • input: gyldig allergi med uuid
    • udfald: status ok, værdier i allergi som forventet
    • test: U1T1testAtAllergiKanOprettesPaaLovligtCprNummerUuidMedsendes
  2. registrering af allergi uden uuid - positivt udfald
    • input: gyldig allergi uden uuid
    • udfald: status ok, uuid er udfyldt på registreret allergi 
    • test: U1T2testAtAllergiKanOprettesPaaLovligtCprNummerUuidMedsendesIkke
  3. registrering af allergi med eksisterende uuid - postivt udfaldnegativt udfald, genbrug af uuid ikke tilladt
    • input: gyldig allergi med eksisterende uuid
    • udfald: status ok, værdier i allergi som forventetvalideringsfejl, allergien er ikke gemt
    • test: U1T1testAtAllergiKanOprettesPaaLovligtCprNummerUuidMedsendesU1T3testAtAllergiIkkeKanOprettesNårEksisterendeUuidAnvendes
  4. registrering af allergi uden uuid - positivt udfaldmed formål at afslutte (slettemuligheden) - negativt udfald
    • input gyldig allergi med status inaktiv (forudsætning, der findes allerede en aktiv)
    • input: gyldig allergi uden uuid
    • udfald: status ok, uuid er udfyldt på registreret allergi valideringsfejl, og der findes fortsat kun den oprindelige allergi som aktiv
    • test: U1T2testAtAllergiKanOprettesPaaLovligtCprNummerUuidMedsendesIkkeU1T4testAtAllergiIkkeKanOprettesOgEfterfølgendeInaktiveresUuidMedsendes
  5. registrering af ugylding allergi med eksisterende uuid - negativt udfald, genbrug af uuid ikke tilladt
    • input: gyldig allergi med eksisterende uuidugyldig allergi, substance code mangler i input
    • udfald: status valideringsfejl, allergien er ikke gemt
    • test: U1T3testAtAllergiIkkeKanOprettesNårEksisterendeUuidAnvendesU1T5testAtAllergiIkkeOprettesNårSubstanceCodeMangler

Læsning

  1. registrering læsning af allergi med formål at afslutte (slettemuligheden) - negativt udfald- positivt udfald, ingen historik
    • input: patient uden negativ samtykke, ingen værdispring, ingen historik
    • input gyldig allergi med status inaktiv (forudsætning, der findes allerede en aktiv)
    • udfald: status valideringsfejl, og der findes fortsat kun den oprindelige allergi som aktivok, patientens nyeste version af allergier med status aktiv hentes
    • test: U1T4testAtAllergiIkkeKanOprettesOgEfterfølgendeInaktiveresUuidMedsendesU2T1testAtToAllergierKanHentesForPatientUdenNegativeSamtykkerUdenBrugAfVaerdiSpring
  2. registrering læsning af ugylding allergi allergi - negativ samtykke uden værdispring, ingen historik - negativt udfald
    • input: ugyldig allergi, substance code mangler i inputpatient med negativ samtykke mod kaldende sundhedsperson, ingen værdispring, ingen historik
    • udfald: status valideringsfejl, allergien er ikke gemtnegativ samtykke, ingen allergier vises
    • test: U1T5testAtAllergiIkkeOprettesNårSubstanceCodeManglerU2T2testAtAllergierIkkeKanHentesForPatientMedNegativSamtykkeModSundhedsPersonenDerForetagerFremsoegningUdenBrugAfVaerdispring

Læsning

  1. læsning af allergi - positivt udfaldnegativ samtykke med værdispring, ingen historik - positivt udfald
    • input: patient uden med negativ samtykke mod kaldende sundhedsperson, ingen værdispring, ingen historik
    • udfald: status ok, patientens nyeste version af allergier med status aktiv hentes
    • test: U2T1testAtToAllergierKanHentesForPatientUdenNegativeSamtykkerUdenBrugAfVaerdiSpringU1T3testAtAllergierKanHentesForPatientMedNegativSamtykkeModSundhedsPersonDerForetagerFremsoegningMedBrugAfVaerdispring
  2. læsning af allergi - negativ samtykke uden værdispringmod anden person, ingen historik - negativt udfald, positivt udfald, ingen historik
    • input: patient med negativ samtykke mod anden person end kaldende sundhedsperson, ingen værdispring, ingen historik
    • udfald: status negativ samtykke, ingen allergier visesok, patientens nyeste version af allergier med status aktiv hentes
    • test: U2T2testAtAllergierIkkeKanHentesForPatientMedNegativSamtykkeModSundhedsPersonenDerForetagerFremsoegningUdenBrugAfVaerdispringU2T4testAtAllergierKanHentesForPatientMedNegativSamtykkeModEnAndenSundhedsPersonenEndDenDerForetagerFremsoegning
  3. læsning af allergi - dataspecifik negativ samtykke med uden værdispring, ingen historik - , delvist positivt udfald
    • input: patient med dataspecifikt negativ samtykke mod kaldende sundhedsperson, ingen værdispring, ingen historik
    • udfald: status ok, patientens nyeste status succes men dataspec., et udsnit af patientens nyeste version af allergier med status aktiv hentes
    • test: U1T3testAtAllergierKanHentesForPatientMedNegativSamtykkeModSundhedsPersonDerForetagerFremsoegningMedBrugAfVaerdispringU2T5testAtAllergierForRegistreringerPaaSorkodeHvorPatientHarDataSpecifiktNegativtSamtykkeFiltreresFraNaarDerIkkeBrugesVaerdispring
  4. læsning af allergi - dataspecifik negativ samtykke mod anden personmed værdispring, ingen historik, positivt postivt udfald, ingen historik
    • input: patient med dataspecifikt negativ samtykke mod anden person end kaldende sundhedsperson, værdispring, ingen værdispringhistorik
    • udfald: status oksuccess, patientens nyeste version af allergier med status aktiv hentes
    • test: U2T4testAtAllergierKanHentesForPatientMedNegativSamtykkeModEnAndenSundhedsPersonenEndDenDerForetagerFremsoegningU2T6testAtAllergierForRegistreringerPaaSorkodeHvorPatientHarDataSpecifiktNegativtSamtykkeIkkeFiltreresFraNaarDerBrugesVaerdispring
  5. læsning af allergi - dataspecifik negativ samtykke uden værdispringmed ikke eksisterende patient, ingen historik , delvist positivt - postivt udfald
    • input: patient med dataspecifikt negativ samtykkesom ikke har allergier registreret, ingen værdispringværdspring, ingen historik
    • udfald: status succes men dataspec., et udsnit af patientens nyeste version af allergier med status aktiv hentesok, der er ingen allergier at hente
    • test: U2T5testAtAllergierForRegistreringerPaaSorkodeHvorPatientHarDataSpecifiktNegativtSamtykkeFiltreresFraNaarDerIkkeBrugesVaerdispringU2T7testAtIngenAllergierHentesForPatientUdenNegativeSamtykkerUdenBrugAfVaerdiSpring
  6. læsning af allergi - dataspecifik negativ samtykke med værdispringmed manglende søgekriterie, ingen historik , postivt - negativt udfald
    • input: ingen patient med dataspecifikt negativ samtykke, ingen værdispring, ingen historik
    • udfald: status success, patientens nyeste version af allergier med status aktiv hentesvalideringsfejl, ingen allergier returneres
    • test: U2T6testAtAllergierForRegistreringerPaaSorkodeHvorPatientHarDataSpecifiktNegativtSamtykkeIkkeFiltreresFraNaarDerBrugesVaerdispringU2T8testAtIngenAllergierHentesForBlankPatientUdenBrugAfVaerdiSpring
  7. læsning af allergi, med ikke eksisterende patient, ingen historik - postivt historik , allergi har historik og er inaktiv - positiv udfald
    1. input: patient
    som ikke har allergier registreret
    1. uden negativ samtykke, ingen
    værdspring
    1. værdispring,
    ingen
    1. historik
    2. udfald: status ok,
    der er ingen allergier at hente
    1. patientens allergier med alle status hentes i alle versioner
    2. test:
    U2T7testAtIngenAllergierHentesForPatientUdenNegativeSamtykkerUdenBrugAfVaerdiSpring
    1. U2T9testAtAllergierKanHentesMedHistorik
  8. læsning af allergi med manglende søgekriterie, ingen historik (selvom der er en del historik) - negativt positiv udfald
    1. input:
    ingen
    1. patient uden negativ samtykke, ingen værdispring, ingen historik
    2. udfald: status
    valideringsfejl, ingen allergier returneres
    1. ok, patientens nyeste version af allergier med status aktiv hentes
    2. test:
    U2T8testAtIngenAllergierHentesForBlankPatientUdenBrugAfVaerdiSpring
    1.  U2T10testAtAllergierKanHentesUdenHistorik
  9. læsning af allergi, med historik , allergi har ingen historik (selvom der er en del historik og er inaktiv) - positiv udfald
    1. input: patient uden negativ samtykke, ingen værdispring, ingen historik
    2. udfald: status ok, patientens allergier med alle status hentes i alle versionerder er ingen allergier at hente
    3. test: U2T9testAtAllergierKanHentesMedHistorik U2T11testAtAllergierIkkeKanHentesUdenHistorikNaarInactive
  10. læsning af allergi uden angivelse af om historik (som ved ingen læsning af allergi, ingen historik (selvom der er en del historik) - positiv udfald
    1. input: patient uden negativ samtykke, ingen værdispring, ingen med historik
    2. udfald: status ok, patientens nyeste version af allergier med status aktiv hentes
    3. test: U2T10testAtAllergierKanHentesUdenHistorik U2T11testAtAllergierKanHentesUdenHistorikDefault

Opdatering

  1. læsning opdatering af allergi , ingen historik (selvom der er en del historik og inaktiv) - positiv med uuid - postivt udfald
    • input:
    patient uden negativ samtykke, ingen værdispring, ingen historik
    • gyldig eksisterende allergi med uuid
    • udfald: status ok,
    der er ingen allergier at hente
    • værdier i allergi opdateret som forventet
    • test:
     U2T11testAtAllergierIkkeKanHentesUdenHistorikNaarInactive
    •  U3T1testAtAllergiKanOpdateresPaaLovligtCprNummer
    læsning
  2. opdatering af allergi uden angivelse af om historik (som ved ingen historik) - positiv uuid - negativt udfald
    • input:
    patient uden negativ samtykke, ingen værdispring, med historik
  3. udfald: status ok, patientens nyeste version af allergier med status aktiv hentes
  4. test: U2T11testAtAllergierKanHentesUdenHistorikDefault

...

    • gyldig eksisterende allergi uden uuid (findes reelt ikke da uuid er null)
    • udfald: status fejl, allergien er ikke opdateret
    • test: U3T2testAtAllergiIkkeKanOpdateresPaaLovligtCprNummerUuidMedsendesIkke
  1. opdatering af allergi med ukendt uuid - postivt negativt udfald
    • input: gyldig eksisterende gyldig eksisterende allergi med ikke eksisterende uuid (findes reelt ikke da uuid ikke findes)
    • udfald: status ok, værdier i allergi opdateret som forventetfejl, allergien er ikke opdateret
    • test:  U3T1testAtAllergiKanOpdateresPaaLovligtCprNummerU3T3testAtAllergiIkkeKanOpdateresNaarIkkeEksisterendeUuidAnvendes
  2. opdatering af allergi uden uuid med patient ændret - negativt udfald
    • input: gyldig eksisterende allergi uden uuid (findes reelt ikke da uuid er null)med opdateret patient
    • udfald: status valideringsfejlfejl, allergien er ikke opdateret
    • test: U3T2testAtAllergiIkkeKanOpdateresPaaLovligtCprNummerUuidMedsendesIkkeU3T4testAtAllergiIkkeKanOpdateresNaarPatientAendres
  3. opdatering af ikke seneste version af allergi med ukendt uuid - negativt negativ udfald
    • input: gyldig eksisterende gyldig eksisterende allergi med ikke eksisterende uuid (findes reelt ikke da uuid ikke findes)nyeste version id
    • udfald: status valideringsfejlfejl, allergien er ikke gemtopdateret
    • test: U3T3testAtAllergiIkkeKanOpdateresNaarIkkeEksisterendeUuidAnvendesU3T5testAtAllergiIkkeKanOpdateresNaarIkkeNyesteVersion
  4. opdatering af allergi med patient ændret - negativt 3 gange og al historik gemmes - postivt udfald
    • input: gyldig eksisterende allergi med opdateret patient
    • udfald: status valideringsfejl, allergien er ikke gemtok
    • test: U3T4testAtAllergiIkkeKanOpdateresNaarPatientAendresU3T6testAtAllergiKanOpdateresTreGangeOgHistorikGemmes
  5. opdatering af ikke seneste version af allergi - negativ med inaktiv status (slettemarkering) -  postivt udfald
    • input: gyldig eksisterende allergi med ikke nyeste version id
    • udfald: status valideringsfejl, allergien er ikke gemtok
    • test: U3T5testAtAllergiIkkeKanOpdateresNaarIkkeNyesteVersionU3T7testAtAllergiKanOpdateresMedStatusInaktiv
  6. opdatering af inaktiv allergi 3 gange og al historik gemmes - postivt - negativt udfald
    • input: gyldig eksisterende allergi med status inaktiv
    • udfald: status okfejl, allergien er ikke opdateret
    • test: U3T6testAtAllergiKanOpdateresTreGangeOgHistorikGemmesU3T8testAtAllergiIkkeKanOpdateresNaarStatusInaktiv
  7. opdatering af allergi med inaktiv status (slettemarkering) -  postivt invalid data - negativt udfald
    • input: gyldig eksisterende allergi og blank drugid
    • udfald: status okfejl, allergien er ikke opdateret
    • test: U3T7testAtAllergiKanOpdateresMedStatusInaktivU3T9testAtAllergiIkkeKanOpdateresPaaLovligtCprNummerNaarDrugidBlankes
  8. opdatering af inaktiv allergi uden versionid - netativt negativt udfald
    1. input: gyldig eksisterende allergi
    med status inaktiv
    1. men uden versionid
    2. udfald: status
    valideringsfejl
    1. fejl, allergien er ikke opdateret
    2. test:
    U3T8testAtAllergiIkkeKanOpdateresNaarStatusInaktiv
    1.  U3T10testAtAllergiIkkeKanOpdateresNaarVersionNull

Transformation

Transformering testes som en del af testen "registrering af allergi med uuid - postivt udfald" hvor input og output sammenlignes. Dermed har data ikke ændret sig under transformering fra LAR >> CAVE >> LAR format.

...

Fejlhåndtering testes som en del af både registrering, opdatering og læsning, i det test som har negativ udfald.

...

mvn test -Pperformancedata-test   -Dconsentadministration.endpoint=http://test1-cnsp.ekstern-test.nspop.dk:8080/consent-administration/service  -Dlarservice.wsdlendpoint=http://localhost:8065/larservice/MedicationAllergyService?wsdl

Vær opmærksom på, at justeringer kan være nødvendige i kildekoden (Modulet larservice-integrationtest, pakken .performancedata, klassen PerformanceTestDataImport.java) omkring antallet af records, fordeling af recorder information samt cpr nummer genereringen).

...

mvn test -Pdataimport-test   -Dconsentadministration.endpoint=http://test1-cnsp.ekstern-test.nspop.dk:8080/consent-administration/service  -Dlarservice.wsdlendpoint=http://localhost:8065/larservice/MedicationAllergyService?wsdl

Kørslerne tager udgangspunkt i navngivne filer (se kildekode)  som placeres i test resources biblioteket, og disse bliver så læst ind i allergi databasen.

...