Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Navitabs
rootIdentitetssløring af ansatte i sundhedsvæsnet (IDSAS) - Leverancebeskrivelse
includeroottrue


Indhold

Table of Contents

Introduktion

...

Integrationstestene for IDSAS er implementeret vha Cucumber og JUnit i modulet idsas-integration-tests, og er beregnet til afvikling mod en kørende udgave af IDSAS.

Testene er i praksis inddelt i tre forskellige pakker, hver med deres egen Cucumber "glue"-klasse, som i alle tre tilfælde hedder "IdsasIT.java".

De tre pakker er følgende: 

  • _20230601. Test af den oprindelige snitflade med Kafka.
  • _20240124. Test af den nye snitflade med afdelingssløring, også med Kafka.
  • _20240124_legacy. Test af seneste snitflade med afdelingssløring, kun "registration" og kun med database-konfiguration (ingen Kafka).

I praksis kan alle tests køre op imod docker-compose-setuppet under development, da denne indeholder både Kafka og database-udgaven af "idsas-registration". Kafka-udgaven af "registration" kører på port 8081 og database-udgaven kører på port 8080. Det er også afspejlet i properties-filerne under "resources".

Integrationstestene tjekker primært om kaldene går igennem, eller giver fejl, alt efter hvad forventningen er i den givne situation. Mere specifik forretningslogik testes igennem unit-testene.

For at køre en bestemt pakke af tests, kan man gøre det manuelt igennem IntelliJ ved at køre selve glue-klasse, fx "src/test/java/dk/nsp/idsas/test/_20240124_legacy/IdsasIT.java". Hver glue-klasse har annoteringer der udpeger den relevante cucumber-specifikation, og property-filerne deles på tværs af alle klasserne.

Afvikling

Afvikling af Integrationstests aktiveres via Maven med følgende kommando:

...

Testene kan også afvilkes mod test miljøerne med maven profilerne test1 eller test2. Fxved at sætte argumentet environment. F.eks.

Code Block
mvn verify -pl idsas-integration-tests -Pintegration-test -Ptest1Denvironment=test1

Der er følgende muligheder for test miljøer:

MiljøBeskrivelse
localTesten køres mod et lokalt docker-compose setup (denne vælges automatisk hvis environment argumentet ikke sættes).
test1Testen køres mod service der er deployet på test1.
test2Testen køres mod service der er deployet på test2.

Alternativt kan de relevante IDSAS endpointet endpoints sættes manuelt med maven property properties. Herunder er et eksempel hvor idsas.service.endpoint og idsas.service-lookup.endpoint sættes.

Code Block
languagetext
mvn verify -pl idsas-integration-tests -Pintegration-test -Didsas.service.endpoint=http://en-anden-url:8080/idsas

Afvikling fra IDE

 \
-Didsas.service-lookup.endpoint=http://en-tredje-url:8080/idsas-lookup

Hvis man ønsker at køre integrationstesten lokalt mod docker-compose setup, skal denne først startes. Se Guide til udviklere - AfviklingØnskes integrationstestene afviklet fra en IDE, vælges en profil ved at markere den tilsvarende konfigurationsfolder som 'Test Resources Root'. Fx folderen idsas-integration-tests/config/local.