This is an old revision of the document!


Testing-av-QC1-sjekker.

A)

 Kravspesifikasjon utarbeides. 
 Ut fra denne lages Algoritme og Test-skjema. 
 (link til eksempel på Test-skjema)

B)

 3 DB tabeller skal vanligvis ha nye / endrete rader: algorithms, checks, station_param.

C)

 Hele Test-systemet ligger på en Virtuell Maskin (VM) der man kan logge seg på fra alle arbeidsstasjoner.
 
 Katalog-strukturen til Test-systemet ser slik ut (eksempel):
 
 
 Dev-Kvalobs-QC1 --+ QC1-Doc --+ Veiledninger
                   + T-QC1-3 --+ QC1-3b ---+ RUN-TIME-TEST                
                                           + Source-Code               
                                           + System-Konsistens             
                                           + Test-Run-kvQabase ---+ Res-10         
                                        

1) Starter med å lage kildekoden på Source-Code katalogen ( Dev-Kvalobs-QC1/T-QC1-3/QC1-3b/Source-Code )

 
 Ta backup ved hver endring ( kopier det området du jobber i til en annen maskin med samme katalogstruktur)
 ( Eksempel: myuser@pcxxxx:/disk1/Dev-Kvalobs-QC1/T-QC1-3$ scp -r kvalobs@157.249.169.135:~/bin/Dev-Kvalobs-QC1/T-QC1-3 . )
 
 Lager test-skjema ved navn: (f.Eks. Test-Skjema-QC1-3b-60-20-10-01.ods) som skal passe med det vi skal teste.
 Fyll ut kolonnene Test-Update, Antall Timer, Krav. La kolonnene Test, Cfailed (Test), Status stå tomme.
 Kildekodens indre logikk kan testes på RUN-TIME-TEST katalogen ( bin/Dev-Kvalobs-QC1/T-QC1-3/QC1-3b/RUN-TIME-TEST )
 
 Kildekoden må legges inn i algorithms tabellen i Kvalobsdatabasen. Det gjøres slik: 
 
  Gå til katalogen $METADIR: cd $METADIR
  Oppdater metadata fra git: git pull
  Hvis vi får CONFLICT ( dette betyr konflikt) skal en slette disse filene og deretter gjøre en ny git pull.
  Dersom det er filer du jobber med så må de tas vare på utenfor repositoriet og kopieres inn på riktig sted.
  Hvis du har en endring, kopierer du den inn her:
  ( f.eks: scp FREEZE_CHECK.pl kvalobs@xxx:~/kvoss_intern/kvmeta/algorithms$ )
  Overfør de nye metadataene til /usr/share/kvalobs/metadata med skriptet: kvinstall_metadata
  Innstaller de nye metadatene med: /usr/lib/kvalobs-metadata/bin/run_metadata 

2) Går inn på katalogen System-Konsistens.

 Bestemmer hvilke parametre, verdier og tidsoppløsning vi vil bruke i testingen.
 I eksemplet her har vi valgt: stationid = 18700 (Blindern), paramid = 211 (TA), tidsperiode: fom 2013-01-01 08 tom 2013-01-02 10.
 Etter at oppdatering av kvalobs metadata er kjørt, oppdateres tabellene data, checks og station_param med sql-script som lager nye testdata og metadata.
 Eksempel: Gå inn på: kvalobs@xxxx:~/bin/Dev-Kvalobs-QC1/T-QC1-3/QC1-3b/System-Konsistens/  og kjør:
 psql -f DELETE-INSERT-Data-QC1-3b-211-60.sql > DELETE-INSERT-Data-QC1-3b-211-60.log
 psql -f DELETE-INSERT-Checks-QC1-3b-FREEZE_CHECK-60-10-01.sql > DELETE-INSERT-Checks-QC1-3b-FREEZE_CHECK-60-10-01.log 
 psql -f DELETE-INSERT-Station_param-QC1-3b-FREEZE_CHECK-60-10-01.sql >  DELETE-INSERT-Station_param-QC1-3b-FREEZE_CHECK-60-10-01.log
 (Husk å oppdatere disse scriptene ved behov.)

3) Står på samme katalog (System-Konsistens) og kjører: Tabell-Konsistens-QC1-3b.sh (Husk å endre innholdet i shell-scriptet ved behov).

 Resultatet kommer på Tabell-Konsistens-QC1-3b.txt (gå gjennom denne resultat-filen og sjekk at alt er i orden med tabellene).
 f.eks. må paramid finnes i param tabellen, det må være minst en rad i obs_pgm, signaturene i algorithms og checks-tabellene må stemme.
 Om alt er i orden kan man gå til punkt 4.

4) Går til katalogen Test-Run-kvQabase. Her ligger katalogene Res-10, Res-20, Res-30, Res-60. Res står for tidsoppløsning.

 Det vil si at vi kjører en testrunde for hver av tidsoppløsningene 10, 20 30 og 60 minutter på hver sin katalog
 (Kjører test på de tidsoppløsningene som er relevante for sjekken).

5) Går til den katalogen du skal kjøre på (f.eks. Res-60).

 
 Hvis det er logger / logg-kataloger her, utføres kommandoene: 
 rm -r testrun.log 
 rm *.log
 Det skal nå ligge 2 viktige filer på denne katalogen: 
 Test-Run-kvQabase-QC1-3b-211-60.sh ( shell script )
 Select-Data-QC1-3b-211-60.sql ( sql script )
 
 Åpner shell scriptet Test-Run-kvQabase-QC1-3b-211-60.sh i en editor ( f.eks. emacs ).
 3 rader gjentas for hvert nytt tidspunkt som kvQabased kjører på:
 kvQabased -d kvalobs -p 5435 --station 18700 --obstime '2013-01-01 08:00:00' --typeid 330 --qcx 'QC1-3b-211' --runlogfile kvQabased.log --logdir=testrun.log
 cat testrun.log/18700/2013-01-01/log.kl08.330.log > Test-Run-kvQabase-QC1-3b-211-60.log
 psql -f Select-Data-QC1-3b-211-60.sql > Select-Data-QC1-3b-211-60.log
 Den 1. raden må endres ved behov slik at kvQabase stemmer med testdata-settet og metadataene.
 Den 2. raden må endres ved behov slik at checks-loggfilenes navn stemmer med stationid, dato, kl, typeid.
 Den 3. raden må endres ved behov slik at sql-scriptets navn og innhold stemmer med stationid, paramid, dato, kl, typeid, tidsoppløsning.
 Det samme gjelder for navnene på de store historiske loggfilene.
 
 Om alt stemmer, gå til punkt 6)

6) Kjører shell-scriptet: Test-Run-kvQabase-QC1-3b-211-60.sh

7) Sjekk utfra loggene om alt er kjørt. Går deretter inn på Select-Data-QC1-3b-211-60.log for å fylle ut kolonnene Test, Cfailed (Test), Status.

 Sjekk at flaggverdiene i Flag kolonnen Test er lik flaggverdiene i Flag kolonnen Krav i Test-Skjema-QC1-3b-60-20-10-01.ods.
 Sjekk også at Cfailed (Test) er fylt ut med QC1-3b-211 når kolonnen Test har høyere verdi enn 1.
 Hvis alt stemmer her kan den nye sjekken (eller den nye versjonen av sjekken) settes i drift.
 
 
 
This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
  • kvalobs/kvalobs/qc1_utvikling_testing_og_verifisering.1561619809.txt.gz
  • Last modified: 2022-05-31 09:23:18
  • (external edit)