Indhold

Introduktion

Formål

Formålet med dette dokument er at beskrive de tests, som er udviklet og afviklet forud for release af DDTV.

Følgende typer af test indgår i udviklingsarbejdet:

Læsevejledning

Dokumentet henvender sig til udviklere og testere.

Læseren forventes at have kendskab til Java software udvikling, herunder unittesting ved anvendelse af JUnit og Maven.

UnitTests

Der findes UnitTests af centrale enheder (klasser) i DDTV.

Testene er implementeret vha JUnit og kan eksekveres af Mavens standard testplugin SureFire.

Testene udføres som en integreret del af byg af komponenten, men kan også afvikles separat med kommandoen

mvn test

Integrationstests

Integrationstestene for DDTV er implementeret vha Cucumber og JUnit i modulet ddtv-integrationtests, og er beregnet til afvikling mod en kørende udgave af DDTV.

Testene er implementeret i "DdtvIT.java", og er inddelt i 3 forskellige kategorier:

I praksis kan alle tests køre op imod docker-compose-setuppet under development, da denne rummer alle de services. der skal kaldes, kørende på hhv. port 8080, 8081 og 8082. Dette er afspejlet i local.properties-filen 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.

Afvikling

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

 mvn verify -pl integrationtest -Pintegration-test

Dette vil afvikle integrationstestene mod lokalt kørende DDTV-services.

Testene kan også afvikles mod NSP's test miljøer ved at sætte argumentet environment. F.eks.

mvn verify -pl integrationtest -Pintegration-test -Denvironment=test1

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

MiljøBeskrivelse
localTests afvikles mod et lokalt docker-compose setup (denne vælges automatisk hvis environment argumentet ikke sættes).
test1Tests afvikles mod services, der er deployet på test1.
test2Tests afvikles mod services, der er deployet på test2.

Bemærk. hvis det ønskes at afvikle integrationstests mod services køres i lokalt docker-compose setup, skal services først startes. Se Guide til udviklere - Afvikling.