Versions Compared

Key

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

...

Pr. 22. april 2022 er coverage 87%:

Image RemovedImage Added

Integrationstest

Sikrede indlæseren har ikke en integrationstest i traditionel forstand. 

Unit testen "SikredeRouteBuilderTest" udfører en slags integrationstest, da den indlæser en fil og tjekker det resultat, der kommer ud af det.

Derudover kan man udføre en manuel test af det komplete flow fra ft folder til indlæsning i database ud fra følgende opskrift:

Klargøring:

  1. Start Sikrede indlæser op i docker compose:

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

  2. Er der problemer for indlæseren at håndtere filerne i test_sftp folderen kan det skyldes rettigheder. Anvend:

    sudo chmod 777 compose/development/test_sftp/praksys


Test med fejlfri indhold:

  1. Lav relevant test fil:
    1. F.eks. kopi af ./dk.nsp.sdm.sikrede-service/src/test/resources/data/sikrede-input.txt
    2. Filen skal være navngivet på formen: SSR1061023.*.txt. Eksempel SSR1061023.00001.txt  
  2. Kopier omdøbt test fil til ./compose/development/test_sftp/praksys. 
  3. Når filen er væk fra ftp folderen tjek følgende:
    1. Der findes en fil i backup postfixet med UUID. Eksempelvis ./compose/development/backup/SSR1061023.00001-69cc6d28-8bf7-4309-b959-a2d70bc230d7.txt
    2. Der findes det antal entries i SIKR_sikrede tabellen, som der var data linier i filen (slå data op på UUID, der matcher tildelt backup fil postfix)
      select count(*) from SIKR_sikrede where DataSetUUID = "69cc6d28-8bf7-4309-b959-a2d70bc230d7";
    3. Tjek status i SIKR_dataset er "COMPLETED"
      select * from SIKR_dataset where UUID = "69cc6d28-8bf7-4309-b959-a2d70bc230d7" ;
    4. Tjek ingen data i SIKR_datasetlog 
      select * from SIKR_datasetlog where DataSetUUID = "69cc6d28-8bf7-4309-b959-a2d70bc230d7" ;


Test med fejl på data linie:

  1. Lav relevant test fil:
    1. F.eks. kopi af ./dk.nsp.sdm.sikrede-service/src/test/resources/data/sikrede-input-invalidData-SSikGrpKode.txt
    2. Filen skal være navngivet på formen: SSR1061023.*.txt. Eksempel SSR1061023.00002.txt  
  2. Kopier omdøbt test fil til ./compose/development/test_sftp/praksys. 
  3. Når filen er væk fra ftp folderen tjek følgende:
    1. Der findes en fil i backup postfixet med UUID. Eksempelvis ./compose/development/backup/SSR1061023.00002-c323c051-9c48-4582-95e4-35ab7454811a.txt
    2. Der findes det antal entries i SIKR_sikrede tabellen, som der var data linier i filen minus den med fejl (slå data op på UUID, der matcher tildelt backup fil postfix)
      select count(*) from SIKR_sikrede where DataSetUUID = "c323c051-9c48-4582-95e4-35ab7454811a";
    3. Tjek status i SIKR_dataset er "COMPLETED"
      select * from SIKR_dataset where UUID = "c323c051-9c48-4582-95e4-35ab7454811a" ;
    4. Tjek data i SIKR_datasetlog  med korrekt LogMessage og DataSetLocation. I eksemplets tilfælde "Ugyldigt nummer: B i feltet: SSikrGrpKode. Værdien skal være numerisk" i linie 1
      select * from SIKR_datasetlog where DataSetUUID = "c323c051-9c48-4582-95e4-35ab7454811a" ;


Test med fejl i fil struktur :

  1. Lav relevant test fil:
    1. F.eks. kopi af ./dk.nsp.sdm.sikrede-service/src/test/resources/data/sikrede-input-invalidEnd-antalNotMatching.txt
    2. Filen skal være navngivet på formen: SSR1061023.*.txt. Eksempel SSR1061023.00003.txt  
  2. Kopier omdøbt test fil til ./compose/development/test_sftp/praksys. 
  3. Når filen er væk fra ftp folderen tjek følgende:
    1. Der findes en fil i backup postfixet med UUID. Eksempelvis ./compose/development/backup/SSR1061023.00003-839f2f93-3bbc-4cdd-b4ef-0b3b8e0673b8.txt
    2. Der findes findes ingen entries i SIKR_sikrede tabellen, som der var data linier i filen (slå data op på UUID, der matcher tildelt backup fil postfix)
      select count(*) from SIKR_sikrede where DataSetUUID = "839f2f93-3bbc-4cdd-b4ef-0b3b8e0673b8";
    3. Tjek status i SIKR_dataset er "FAILED_WITH_ERROR"
      select * from SIKR_dataset where UUID = "839f2f93-3bbc-4cdd-b4ef-0b3b8e0673b8" ;
    4. Tjek ingen data i SIKR_datasetlog 
      select * from SIKR_datasetlog where DataSetUUID = "839f2f93-3bbc-4cdd-b4ef-0b3b8e0673b8" ;
    5. Tjek fejl i applikationsloggen. I eksemplets tilfælde: "dk.nsp.sdm.common.route.components.ProcessingException: Fejl i input-filen: Antal linier linier: 10, matcher ikke antal poster i footer: 13"

Performancetest

Sikrede indlæseren indeholder ikke en automatiseret testsuite beregnet til performancetest. Det anbefales dog at der udføres en manuel performancetest i forbindelse med udvikling, med Sikrede filer af omtrent samme størrelse og kompleksitet som de rigtige indlæsningsfiler. 

...