Page History
...
Unittests og tilhørende udregning af testcoverage udføres som en integreret del af byg af komponenten (se i øvrigt CRA - Guide til udviklere).
Integrationstest
Der er i sommeren 2023 oprettet integrations test for CRA, i første omgang til FetchIntermediateCraJob.
Integrationstestene er implementeret vha Cucumber og JUnit i modulet cra-integrationstest, og er beregnet til afvikling mod en kørende udgave af CRA.
Afvikling af Integrationstests aktiveres via Maven ved følgende kommando:
mvn verify -Pintegration-test
Det kræves at følgende properties angives ved afvikling af integrationstesten
Property | Beskrivelse |
fetchintermediatecert.start.endpoint | Endpoint for FetchIntermediateCraJob |
fetchintermediatecert.status.endpoint | FetchIntermediateCraJob status |
For nemheds skyld er der angivet følgende profiler (kan angives med -P), med variabeldefinitioner for et givent miljø
local | Det dockerbaserede udviklingsmiljø for CRA. Dette kan startes op med docker compose. Se udvikler guiden for CRA. |
test1 | CRA på NSP Test1 miljø. NB! dette kan ikke køres på test systemet, da snitfladerne ikke er til rådighed pt. |
test2 | CRA på NSP Test2 miljø. NB! dette kan ikke køres på test systemet, da snitfladerne ikke er til rådighed pt. |
Således kan man afvikle integrationstestene mod det lokale docker setup med følgende kommando:
mvn verify -Plocal,integration-test
Testrapporter kan for integrationstesten genereres som html og json og kan ses i /target/cucumber-reports/cucumber.html og /target/cucumber-reports/cucumber.json
Test med Cronjobs
Da CRA har tidligere ikke haft en integrationstest. Og de nuværende test kan ikke kontrollere resultatetet som sådan, andet end kald gik godt. Pt findes der kun integrationstest for FetchIntermediateCraJob
I stedet kan servicens samlede funktionalitet verificeres ved at tjekke docker loggen for har en service snitflade, er der ikke oprettet standard integrationstests. I stedet er det muligt at teste servicens funktionalitet ved at kalde start og status for de tilgængelige cron-jobs, når servicen er deployet lokalt med docker-compose.
Disse kan f.eks. kaldes i en browser på følgende vis:
...
Og log filer kan testes for fejl.
Der henvises i øvrigt til CRA - Guide til udviklere for udførselsvejledning.
...
CRL Stub
Når CRA servicen skal hente crl filer, så kalder sender den et http request. Det er dog ikke altid at disse services der udstiller CRL filerne er tilgængelige.
For at undgå afhængigheder til andre services, så er det nu muligt at placere CRL filer i modulet cra-crl-stub.
...