Page History
...
I det følgende antages at koden er hentet ned fra SVN: https://svn.nspop.dk/svn/kvalitetsit/cave-performance/ samt at man har docker installeret i sit udviklingsmiljø.
Hvis ikke nedenstående fremgangsmåder fungerer umiddelbart, kan der hentes hjælp i filen README, der ligger i roden i projektet. Denne indeholder information om software og OS platform.
Kildekode struktur
Kilde koden er udleveret af Arosii og eftefølgende tilrettet til LAR service projektet. Kildekoden indeholder også performance test til andre services. Om disse er opdateret til kørende version af disse services er ikke sikkert, men kan tjene til inspiration til fremtidig udvikling af performance test.
├── tests |
└── ...
|
├── larservice-war
└── src
├── main │ ├── java │ ├── resources │ └── webapp │ └── WEB-INF │ ├── jboss-deployment-structure.xml │ └── web.xml └── test ├── conf │ ├── application.properties │ ├── log4j-larservice-ws.xml │ ├── log4j-nspslalog-lar.properties │ ├── log4j.properties │ ├── module.xml │ ├── systemtest19-ca.cer
│ └── nspslalog-lar.properties
├── installation └── larservice-ds.xml
|
doc: indeholder Arosiis vejledning til brug af frameworket
...
jmeter-docker: indeholder det, som muliggør at køre JMeter i en docker container
...
modules: indeholder kildekoden til de forskellige test, herunder larserviceLAR servicen
tests: indeholder de generede test filer (test filer og eventuelle hjælpe filer. For LAR servicens vedkommende indeholder folderen udover test filer et database dump med 50.000 allergier og den tilhørenede liste af cpr numre.
Versionskontrol
Ændringer til cave-performance skal tagges i SVN med samme release som den lar version rettelsen gælder.
Udvikling af test
LAR servicens performance test består af tre java sourcer, hvoraf der reelt er logik to af dem, og som skal vedligeholdes ved LAR snitflade ændringer.
- ListAllergyRequestSamplerGui: indeholder skærmbillede logik til at kunne angive input parametrene til LAR servicen
- ListAllergyRequestSampler: indholder logik til at lave det faktisk web service kald med de angivne input værdier
Ved ændringer skal der typisk sættes nye felter på i ListAllergyRequestSamplerGui og disse anvendes herefter i ListAllergyRequestSampler. Derefter bygges med
mvn -Pdockerbuild clean install.
Ved at anvende profilen "dockerbuild" bliver der samtidig oprettet et docker image, som anvendes, når man starter JMeter op (se næste afsnit)
Generering af test filer
Når man bygget test projektet som angivet i forrige afsnit, starter JMeter op ved
docker run -it --net=host -e DISPLAY=$DISPLAY -v ${PWD}/tests/:/tests/ -v /tmp/.X11-unix:/tmp/.X11-unix -v ~/.Xauthority:/root/.Xauthority:ro kvalitetsit/cave-performance
Herefter vil JMeter GUI starte op. Eksisterende performance test kan åbnes og køres herfra: