Page History
...
Dato | Ansvarlig | Beskrivelse |
---|---|---|
26/2-2018 | KvalitetsIT | Initiel version |
07/04-2021 | KvalitetsIT | Flere 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.endpoint | Endpoint til samtykkeadministrationen, der skal benyttes |
larservice.wsdlendpoint | URL, 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)
- Tjek source ud til LAR og CAVE servicene
- Byg servicene
- Start CAVE servicen lokalt med docker-compose
- Start LAR servicen lokalt med docker-compose
- 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.
- Som en sundhedsperson, vil jeg registrere medicin-allergioplysninger for en patient, så oplysningerne bliver tilgængelige på tværs af parterne i sundhedsvæsenet
- Som en sundhedsperson, vil jeg se medicin-allergioplysninger for en patient,
- Som en sundhedsperson, vil jeg registrere medicin-allergioplysninger for en patient, så oplysningerne bliver tilgængelige på tværs af parterne i sundhedsvæsenet
- Som en sundhedsperson, vil jeg se medicin-allergioplysninger for en patient, så jeg kan undgå at ordinere medicin, som patienten ikke kan tåle
- 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
- registrering af allergi med uuid - postivt udfald
- input: gyldig allergi med uuid
- udfald: status ok, værdier i allergi som forventet
- test: U1T1testAtAllergiKanOprettesPaaLovligtCprNummerUuidMedsendes
- registrering af allergi uden uuid - positivt udfald
- input: gyldig allergi uden uuid
- udfald: status ok, uuid er udfyldt på registreret allergi
- test: U1T2testAtAllergiKanOprettesPaaLovligtCprNummerUuidMedsendesIkke
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- læsning af allergi, med ikke eksisterende patient, ingen historik - postivt historik , allergi har historik og er inaktiv - positiv udfald
- input: patient
- uden negativ samtykke, ingen
- værdispring,
- historik
- udfald: status ok,
- patientens allergier med alle status hentes i alle versioner
- test:
- U2T9testAtAllergierKanHentesMedHistorik
- læsning af allergi med manglende søgekriterie, ingen historik (selvom der er en del historik) - negativt positiv udfald
- input:
- patient uden negativ samtykke, ingen værdispring, ingen historik
- udfald: status
- ok, patientens nyeste version af allergier med status aktiv hentes
- test:
- U2T10testAtAllergierKanHentesUdenHistorik
- læsning af allergi, med historik , allergi har ingen historik (selvom der er en del historik og er inaktiv) - positiv udfald
- input: patient uden negativ samtykke, ingen værdispring, ingen historik
- udfald: status ok, patientens allergier med alle status hentes i alle versionerder er ingen allergier at hente
- test: U2T9testAtAllergierKanHentesMedHistorik U2T11testAtAllergierIkkeKanHentesUdenHistorikNaarInactive
- 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
- input: patient uden negativ samtykke, ingen værdispring, ingen med historik
- udfald: status ok, patientens nyeste version af allergier med status aktiv hentes
- test: U2T10testAtAllergierKanHentesUdenHistorik U2T11testAtAllergierKanHentesUdenHistorikDefault
Opdatering
- læsning opdatering af allergi , ingen historik (selvom der er en del historik og inaktiv) - positiv med uuid - postivt udfald
- input:
- gyldig eksisterende allergi med uuid
- udfald: status ok,
- værdier i allergi opdateret som forventet
- test:
- U3T1testAtAllergiKanOpdateresPaaLovligtCprNummer
- opdatering af allergi uden angivelse af om historik (som ved ingen historik) - positiv uuid - negativt udfald
- input:
- udfald: status ok, patientens nyeste version af allergier med status aktiv hentes
- test: U2T11testAtAllergierKanHentesUdenHistorikDefault
...
- gyldig eksisterende allergi uden uuid (findes reelt ikke da uuid er null)
- udfald: status fejl, allergien er ikke opdateret
- test: U3T2testAtAllergiIkkeKanOpdateresPaaLovligtCprNummerUuidMedsendesIkke
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- opdatering af inaktiv allergi uden versionid - netativt negativt udfald
- input: gyldig eksisterende allergi
- men uden versionid
- udfald: status
- fejl, allergien er ikke opdateret
- test:
- 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.
...