Page History
Introduktion
Formål
Formålet med dette dokument er at beskrive de tests, som er udviklet og afviklet forud for release af DROS.
...
De i DROS 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.
Afviklede komponenttest
I de følgende afsnit beskrives de tests der afviklet som en del af udviklingen af DROS.
Der henvises i øvrigt til DROS - Guide til udviklere for udførselsvejledning.
UnitTests
Der findes UnitTests af centrale enheder (klasser) i DROS.
...
Unittests og tilhørende udregning af testcoverage udføres som en integreret del af byg af komponenten (se i øvrigt DROS - Guide til udviklere).
Integrationstest til verifikation af funktionalitet og deployment
Integrationstestene for DROS er implementeret vha Cucumber og JUnit i moduletdros-qa, og er beregnet til afvikling mod en kørende udgave af DROS.
Afvikling af Integrationstests aktiveres via Maven ved følgende kommando i moduletdros-qa:
mvn verify -Pintegration-test -Dvariabel=value
Det kræves at følgende properties angives ved afvikling af integrationstesten
Property | Beskrivelse |
| iti41.service.endpoint | Endpoint for DROS ITI-41 service |
| iti42.service.endpoint | Endpoint for DROS ITI-42 service |
| iti42.nodgws.service.endpoint | Endpoint for DROS ITI-42 service (uden DGWS) |
| iti57.service.endpoint | Endpoint for DROS ITI-57 service |
| iti61.service.endpoint | Endpoint for DROS ITI-61 service |
| hm.dros.endpoint | Endpoint til roden Høremappe specifik DROS f.eks. http://localhost:8061/dros |
For nemheds skyld kan man nøjes med at specificere miljøet med argumentet environment
Der er følgende muligheder for test miljøer:
| local | Det dockerbaserede udviklingsmiljø for DROS |
| test1 | DROS på NSP Test1 miljø |
| test2 | DROS på NSP Test2 miljø |
...
local vælges som default hvis der ikke specificeres miljø.
Testrapporter kan for integrationstesten genereres som html og json og kan ses i /target/cucumber-reports/cucumber.html og /target/cucumber-reports/cucumber.json
Høremappe specifik Integrationstest
Således kan man afvikle integrationstestene mod test1 med følgende kommando:
| Code Block | ||
|---|---|---|
| ||
/dros/trunk/dros-qa$ mvn verify -Pintegration-test -Denvironment=test1 -Dcucumber.filter.tags="@høremappe" -Dhm.dros.endpoint=http://<test1>/dros |
Integrationstestene af afvikles i dette tilfæde da de er tagget med @Høremappe. Derudover kan man også teste specifikke grupper af tests, da der også er tagget ud fra Testcase Id. Så tests HOERVAL_1_PatientId_01 og HOERVAL_1_PatientId_02 kan testes alene ved at tilføje @HOERVAL_1_PatientId til cucumber.filter.tags property.
Se desuden beskrivelse og liste over tests:
Høremappe - test af valideringsregler
Sammenhæng mellem integrationstests og user stories
I DROS - Brugerhistorierfindes en liste over, hvilke user stories, der er relevante for DROS.
Disse brugerhistorier går igen i integrationstestene, da hver brugerhistorie svarer til en integrationstestssuite (feature) i DROS.
Således findes testscenarier for brugerhistorien 'Opret Stable Dokument' i featurefilen:
./dros-qa/src/test/resources/dk/nsp/dros/test/OpretStableDokument.feature