Overblik
Dette dokument beskriver en testvejledning for Stamkortregister-servicen. Det forudsættes at projektet er bygget og installeret, og med denne vejledning kan man således afvikle integrations- og performancetests og derved kontrollere robustheden.
Ændringslog
Version | Dato | Ændring | Ansvarlig |
---|---|---|---|
1.0.0 | 2018-08-31 | Initialt dokument | Trifork |
1.0.12 | 2019-25-09 | Ajourført | Trifork |
1.0.13 | 2021-04-27 | Opdateret | KIT |
Integrationstests
Integrationstest skal afvikles mod den deployede komponent med test-opsætning.
Selve integrationstestene består af en test-klasser med en række forskellige typer kald.
- DGWSITCase: Tester succesfuldt DGWS kald.
- IDWSITCase: Tester succesfuldt IDWS kald.
- ExampleFilesITCase: Tester forskellige eksempler på operationer (fx create, update, delete) ved kald direkte på servicen, som kun er muligt under lokal integrationstest. Ved ekstern integrationstest køres nogle af testene på det eksterne miljø vha. DGWS kald.
- ServletITCase: Tester diverse ikke-webservice-endpoints (fx /isAlive og /dksconfig).
Når servicens er installeret og deployet, kan korrekt deployment verificeres ved at køre integrationstestene. Dette gøres ved at anvende følgende Maven-kommando, som aktiverer Maven-profilen extITs og specificerer et miljø:
mvn verify -pl skr-test -PextITs -Denvironment=local
Der er følgende muligheder for test miljøer:
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. |
Bemærk at dette kræver, at projektet er fuldt bygget, for at lokale dependencies er på plads.
Bemærk endeligt at integrationstestene opretter data, der ikke slettes igen, dvs. afviklen er altså ikke idempotent. Projektets integrationstests kan dog godt afvikles flere gange i træk uden at oprydning er nødvendigt.
Afvikling af unittests
Vejledning til afvikling af unit-tests er beskrevet i installationsvejledningen.
Codecoverage
Efter afvikling af unit-tests genereres en testrapport med Maven-plugin’et JaCoCo. Rapporten kan ses ved at åbne følgende fil i en browser skr-service/target/site/jacoco/index.html.
Rapporten dækker selve servicen, dvs. koden i modulet skr-service. Codecoverage er minimum 80%. Der henvises til JaCoCo testrapporten for yderligere information vedr. coverage. Bemærk at JaCoCo ikke kan verificere linjer, der kaster exceptions, og at sådanne linjer altid vil stå som missed.