You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

About

The tests in this class applies to the measurements controller. 
In SonWIn terms, an account is somewhat equivilant to TimeSeriesValues.  

Included in the tests for this controller is the Common Data Tests.

Information

Information about the controller can be found in this link: 

Measurements Controller


Information (Dansk)

Endpoints:
  GET /bright/measurements        -> maaned   (Monthly)
  GET /bright/measurementDays     -> dag       (Daily)
  GET /bright/measurementHours    -> time      (Hourly)
  GET /bright/measurements15min   -> 15 minutter (Quarterly)

Parametre (alle fire): CustomerID, ServiceID, DateFrom, DateTo

Om dette dokument:
Disse testcases er KRITISKE, datafoelsomme tests, der udfoeres MANUELT af en
tester, som kalder endpointet og sammenligner de returnerede data med det,
kunden kan se i klientprogrammet. 
Hovedfokus er DATOER: der må ALDRIG returneres forkerte datoer/tidspunkter. 
Trivielle scenarier og ting, der allerede er daekket af unit-tests, er ikke gentaget - undtagen hvor det er noedvendigt for at bekraefte datoer mod virkelige data i klienten.

Sådan læses testene:
- Data beskrives ud fra HVAD det er for kunden (fx "forbruget for perioden",
  "tidspunktet en maaling hoerer til"). Testeren skal selv slå op i klienten
  og bekræfte, at vaerdien er korrekt - og dermed at den kommer det rigtige
  sted fra.
- Naar et kald forventes at FEJLE, skal testeren bekraefte, at fejlen er
  synlig i logfilen BLOG, og at der IKKE returneres data til kunden.

Begreber:
  Måling/aflaesning  = et datapunkt med et forbrug (KWh) og et tidspunkt
  Periode            = det interval (DateFrom-DateTo) der spørges om
  Opløsning          = maaned / dag / time / 15 minutter

Tests

Unique identification


DATOER OG TIDSPUNKTER - INGEN FORKERTE DATOER MÅ RETURNERES

  • A1 - Hvert datapunkts tidspunkt hører til den rigtige periode
    Hent forbrug for en kunde og sammenlign hvert datapunkts tidspunkt og forbrug
    med det, klienten viser for samme malepunkt. Tidspunkt og forbrug skal stemme
    punkt for punkt.

  • Dagsvisning: forbrug grupperes på den rigtige KALENDERDAG (dansk tid)
    Vælg en kunde med forbrug tæt på midnat. Kontroller, at en måling lige
    FØR midnat tilfalder den ene dato, og en måling lige EFTER midnat den
    næste - præcis som klienten viser dagene. Dagstotalen i svaret skal være
    lig dagstotalen i klienten.

  • Dagsvisning hen over sommertid/vintertid-skift
    Vælg en periode, der indeholder skiftet til sommertid (dag med 23 timer) og
    til vintertid (dag med 25 timer). Kontroller, at selve skiftedagen får den
    rigtige dato og en korrekt dagstotal sammenlignet med klienten.

  • Månedsvisning: forbrug grupperes i den rigtige MÅNED (dansk tid)
    Vælg en kunde med forbrug tæt på et månedsskifte (sidste dag i måneden,
    sen aften). Kontroller, at forbruget tilfalder den rigtige måned, og at
    månedstotalen matcher klienten.

  • Timevisning: tidspunktet matcher den time kunden ser i klienten
    Hent timeforbrug og sammenlign tidspunktet for hver time med klienten - vær
    særligt opmærksom på aftentimer og på dage med tidsomstilling, hvor dansk
    tid og UTC ikke er ens. Bekræft, at den viste time svarer til den time,
    kunden faktisk forbrugte i.

  • 15-minutters visning: ubrudt række af tidspunkter, intet mangler/dubleres
    Hent 15-minutters data for en periode. Kontroller, at tidspunkterne løber i
    ubrudte 15-minutters spring fra start til slut, uden huller og uden gentagne
    tidspunkter.

  • Perioder uden målinger vises som 0 - ikke som huller eller forkerte datoer
    Vælg en kunde/periode, hvor der mangler målinger i en del af perioden (eller
    en helt fremtidig periode uden forbrug). Svaret skal stadig have datapunkter
    for hele perioden med forbrug = 0 og korrekte, fortløbende datoer.

  • Perioden dækkes præcist - intet datapunkt ud over slut-tidspunktet
    Vælg en periode, hvor slut-tidspunktet ligger præcis på et kvarter/en
    døgngrænse. Kontroller, at datapunktet PÅ slut-tidspunktet IKKE er med
    (perioden er til-men-ikke-med slut), og at der ikke er datapunkter før start.

  • Periodeoverskrift (start/slut) svarer til det DER BLEV SPURGT OM
    Hent en periode, hvor der kun findes faktiske målinger i en DEL af perioden.
    Den start- og slutdato, svaret melder for hele udtrækket, skal være den
    periode, der blev spurgt om - ikke indsnævret til første/sidste måling.
    Kritisk fordi: hvis overskriften snævres ind til data, viser klienten en
    forkert periode for udtrækket.

  • A10 - Lokal visning: UTC-tidspunkter omsættes korrekt til dansk tid
    Tag et kendt tidspunkt fra svaret og bekræft, at klienten viser det på det
    korrekte danske klokkeslæt (ingen 1-2 timers forskydning), både i sommer-
    og vintertid.

  • DateFrom skal ligge før DateTo (ellers afvises kaldet)
    Kald med DateFrom lig med eller efter DateTo.
    Kaldet skal afvises med fejl, og der må ikke returneres data. Bekræft, at fejlen er synlig i BLOG.


Result:

Update User Account



  • No labels