Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Navitabs
rootMinLog2 - Leverancebeskrivelse
firsttabMinLog2
includeroottrue



Indhold

Table of Contents


Indledning

Leverancen indeholder unit tests, integrationstest og performance/endurancetests.

Unittests bør afvikles som en del af byggeprocessen, mens integrationstesten bør afvikles mod den deployede komponent. Begge disse tests kan afvikles med maven.

Endurancetesten bør afvikles med jmeter mod den deployede komponent.

Indeværende dokument et sammendrag af dokumentet MinLog2-Testvejledning og performance

Læsevejledning

Læseren forventes at have kendskab til National Sundheds-IT's platform NSP, samt generelt kendskab til WildFly applikation server, MariaDB, Kafka og java.

Dokumenthistorik

Version

Dato

Ansvarlig

Beskrivelse

1.0

10-10-2019

Openminds



Definitioner og forkortelser

Definition

Beskrivelse

NSP

Den nationale service platform (inden for sundheds-IT)


Unit tests

Unit tests bliver afviklet som en del af bygget, med mindre man eksplicit angivet, at det ikke ønskes.

Kør 'mvn clean install' eller 'mvn clean test'

Coverage report

Cobertura benyttes til – via maven – at danne en coverage rapport:

  • Kør fra projektets rod i en kommandolinje:
    • mvn install
    • mvn site
    • mvn site:stage
  • Vis det generede site ved at åbne /target/staging/index.html i en browser
  • Vælg 'Cobertura Test Coverage' under 'Project documentation'-'Project Reports' i menuen til venstre


Rapporten kan også findes i code/target/staging.

Bemærkninger

Det er et krav, at der skal være en coverage på 80 %. Dog kan fx genereret kode afvige fra dette.

Nedenfor er beskrevet, hvilke pakker, der vurderes ikke at leve op til coverage kravet.

Følgende pakker indeholder genereret kode eller 3. part:

Derudover kode uden forretningslogik






Performance


Rapport

Når en performancetest er afviklet skal der produceres en performancetestrapport. Denne skal redegøre for hvilke testplaner/distributioner der har været afviklet og skal præsentere findings ifm hver test. Følgende indhold forventes som minimum i en performancerapport:

  • Det maksimale Throughput målt under testen og hvorledes dette forholder sig til det forventede brug.
  • Gennemsnitlig svartid (100% og 95% fraktil) for de forskellige iterationer samt hvilket Throughput der skabte denne svartid.
  • Bevist for at svartidskravene i kravspecifikationen er overholdt.
  • Grafer over Throughput, Gennemsnitlig svartid, CPU belastning, Heap forbrug, IO wait time.
  • En analyse af hvad der er den begrænsende faktor for Throughput og svartid.
  • Foreslag til hvorledes Throughput kan øges og svartid kan mindskes baseret på de observationer der er foretaget.

Logs og målinger

Under en performancetest opsamles de logfiler som komponenten producere samt følgende målinger:

  • vmstat - Opsamler målinger af virtuel memory-forbrug på process niveau.
  • dockerstat - Opsamler målinger af resource-forbrug for en Docker process.
  • jstat - Opsamlinger målinger af f.eks. Garbage Collection i en Java process.
  • iostat - Opsamlinger målinger af io-forbrug (f.eks. disk) på et system.

Alle disse logfiler og målinger samles med de logfiler som NSP Performance Framework producerer og udleveres til komponentleverandøren, så denne kan producere grafer mv. til performancetestrapporten.


  • No labels