Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Læser forventes at have kendskab til Java softwareudvikling med anvendelse af Maven og WildFly. Derudover forventes kendskab til docker-compose.

Dokument historik

Dato

Ansvarlig

Beskrivelse

5/2-2018KvalitetsITInitiel version
07/04-2021KvalitetsITJusteringer i forhold til docker-compose anvendelse

Definitioner og referencer

...

I det følgende antages at koden er hentet ned fra SVN: https://svn.nspop.dk/svn/kvalitetsitcomponents/cave/

Krav til software

Krav til applikationsserveren og operativsystemet er de samme som til produktionsmiljøet. De specifikke krav kan ses i https://www.nspop.dk/display/public/web/Husregler+for+udvikling+til+NSP

Derudover er der en række krav til de anvendte udviklingsværktøjer:

  • Maven 3.0.3 eller højere anvendes.
  • docker-compose version 3.4 eller højere

Bygge WAR filen

Man skal bruge Apache Maven til at bygge CAVE servicen, hvilket gøres ved at køre kommandoen
$ mvn clean install

...

Udviklers workstation

Når man udvikler , kan det være praktisk at foretage deploy til en lokal Wildfly. Dette kan gøres vha. docker-compose:

docker-compose -f compose/development/docker-compose.yml up --build

Efter start af docker-compose kan CAVE servicen tilgåes på localhost port 8080 (http://localhost:8080/cave/fhir). 

Beskrivelse af systemdesign

...

Unit tests kan afvikles ved at køre:

Code Block
mvn test


Integrationstests

Integrationstests kan afvikles på to måder. De kan enten afvikles mod en vilkårlig JBOSS instans eller mod en installation i docker på den lokale maskine. Sidst nævnte metode sørger selv for at starte containere med database og applikationsserver. Det sker ved hjælpe af tescontainers.org.

Code Block
languagebash
titleIntegrationstest mod vilkårlig installation
mvn test -Pintegration-test -Dintegrationtestpropdir=src/test/integrationstest-localhost

Integrationstest mod vilkårliginstallaiton. Bemærk at denne metode kræver at CAVE servicen er installeret på en Wildfly applikationsserver. mvn test -Pintegration-test -Dintegrationtestpropdir=src/test/integrationstest-localhost Se flere detaljer i test vejledning under integrationstest for at køre mod lokal Wildfly.


Code Block
languagebash
titleIntegrationstest mod docker containere

...

DOCKER_RUN=true mvn -P integration-test clean install