Page History
| Navitabs | ||||
|---|---|---|---|---|
| ||||
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:
...
| Miljø | Beskrivelse |
|---|---|
| local | Testen køres mod et lokalt docker-compose setup (denne vælges automatisk hvis environment argumentet ikke sættes). |
| test1 | Testen køres mod service der er deployet på test1. |
| test2 | Testen køres mod service der er deployet på test2. |
Alternativt kan de to relevante IDSAS endpoints sættes manuelt med maven property properties. Herunder er et eksempel hvor idsas.service.endpoint og idsas.service-lookup.endpoint sættes.endpoint
| Code Block | ||
|---|---|---|
| ||
mvn verify -pl idsas-integration-tests -Pintegration-test -Didsas.service.endpoint=http://en-anden-url:8080/idsas \ -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 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.