Introduktion

Formål

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

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

Andre typer af tests (ikke en del af udviklingen af LAR):

De i LAR anvendte tests gennemgåes i det følgende.

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.

2. Afviklede komponenttest

Følgende tests er afviklet som en del af udviklingen af LAR.

Der henvises i øvrigt til LAR Udviklerguide for udførselsvejledning og LAR Testrapport for resultat.

UnitTests

Der findes UnitTests af alle centrale enheder (klasser) i LAR.

Placeringen af disse følger standarden foreskrevet af Maven og er placeret i src/test/java i hvert af LAR servicens moduler.

Unittests er navngivet med navnet på den klasse, som de tester, efterfulgt af Test.

Således ligger unittesten for klassen:

./larservice-cave/src/main/java/dk/sds/larservice/cave/client/CaveClient.java

implementeret i:

./larservice-cave/src/test/java/dk/sds/larservice/cave/client/CaveClientTest.java

Unittests er stilmæssigt opbygget på følgende måde:

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


Til udregning af testcoverage anvendes Jacoco Maven Plugin (se JaCoCo Maven plug-in).

Testcoverage udregnes i de enkelte Maven moduler i LAR servicen og aggregeres til en samlet rapport i modulet larservice-integrationtest.

Således er en samlet rapport over testcoverage tilgængelig i

./larservice-integrationtest/target/site/jacoco-aggregate/


Unittests og tilhørende udregning af testcoverage udføres som en integreret del af byg af komponenten (se i øvrigt LAR Udviklerguide).

Integrationstest til verifikation af funktionalitet og deployment

Integrationstestene for LAR er implementeret vha JUnit, og er beregnet til afvikling mod en kørende udgave af LAR.

Integrationstest aktiveres via Maven ved følgende kommando:

mvn test -Pintegration-tests -Dintegrationtestpropdir=src/test/integrationstest-localhost

hvor "integrationtestpropdir" udpeger det underbibliotek, hvor den skal ledes efter test.properties (og eventuelle jks).

Integrationstesten afvikles ikke som en del af byg.

Indholdet af test.properties er som følger:

Property

Beskrivelse




Ved aktivering af integrationstesten vil helbreds/versionsservice afprøves.

Derudover vil der laves test af oprettelse samt hentning af allergioplysninger via LAR.

Performancetests

TODO