1005.17.42b Tværgående test fase 2+3 - Fælles testrammeværk til alle nye applikationer og alle personalegrupper
STATUS - KLADDE UNDER UDARBEJDELSE.
Versionshistorik af betydning for eksterne (v0.1, v0.3, v0.5 og v1.0)
Anvendes ved ændringer, der har betydning for eksterne.
Dato | Version | Hvem | Hvad er ændret? |
---|---|---|---|
1.06.2023 | 0.1 | Morten Christensen | Initiel version |
Interne links (indhold i links ikke relevant for eksterne)
- TEK-260Getting issue details... STATUS - TEK-259Getting issue details... STATUS
Relevant baggrundsinformation om arkitektur og strategi:
/wiki/spaces/MOI/pages/3718938673
STAR's strategi for test automatisering
Indholdsfortegnelse
Afgrænsning af epic
Afgrænsning | ||
---|---|---|
Som STAR udvikler/tester/FA/PO har jeg brug at kunne sikre kvaliteten af STARs leverancer på effektiv og lovmedholdig vis. Hertil er der brug for følgende kapabiiteter, som skal dels udvikles, dels implementeres organisatorisk:
Arbejdet skal opdeles i faser, hvor fase 2 handler om udbredelse af systemunderstøttelse henvendt mod udviklere og fase 3 handler om udbredelse til øvrige personalegrupper, herunder udvikling i brugergrænseflader til ikke-udviklere. Arbejdet er en videreudvikling af /wiki/spaces/ISB/pages/3944939521. | ||
Acceptkriterier | ||
Nr. | Beskrivelse | Relevant for |
1005.17.42b.1 | Alle domæner, applikationer og interne afhænigheder er containeriseret og kan spinnes op i et Docker miljø (bortset fra DFDG Classic) | STAR |
1005.17.42b.2 | Automatiserede tests på tværs af applikationer/domæner kan afvikles på CI samt lokalt på udviklermaskiner | STAR |
1005.17.42b.3 | Kvaliteten af de automatiserede test suites skal være høj indenfor følgende parametere: høj forretningsmæssig værdi, stabil og korrekt afvikling (ingen falske positiver og ingen falske negativer), hurtig og parallel afvikling af tests samt at tests er nemme at konstruere og koden er forståelig. Den forretningsmæssige værdi opnåes ved, at test eksekveringen giver den ønskede indsigt i systemets kvalitet samt løbende sikrer at ændringer i systemet ikke resulterer i utilsigtede fejl. | STAR |
1005.17.42b.4 | Test data til én og samme test borger kan nemt oprettes i multiple forretningsdomæner (herunder nye Jobnet/Vitas domæner) uden, at udviklere/testere kender til domæne- og databasemodeller i de enkelte forretningsdomæner | STAR |
1005.17.42b.5 | Nyt software i STAR testbart (herunder automatiserbare, kontrolerbare og observerbare), så tests kan observere og manipulere systemet uden hvilket effektive tests ikke vil kunne fungere. Bl.a. skal tests sætte en bestemt initial tilstand før en test køres og testen skal kunne få events når en hændelse er færdig. For yderligere definition af testbarhed se kapitel 6 i STAR's strategi for test automatisering. | STAR |
1005.17.42b.6 | Der er oprette stamdata (grunddata) i de enkelte forretningsdomæner databaser, så landekoder, stillingsbetegnelser m.m. er til stede, uden at automatiserede tests skal beskæftige sig hermed | STAR |
1005.17.42b.7 | Der er oprettet en mindre test suite, som til dels tester de vigtigste forretningsmæssige flows, samt sikrer at testrammeværket er korrekt og komplet | STAR |
1005.17.42.8 | Vi skal nemt og effektivt kunne genbruge standardiserede test borgere (persona) i flere tests | STAR |
1005.17.42.9 | Testrammeværket er dokumenteret og der er gennemført vidensdeling på tvær af teams i Star City | STAR |
Kriterier for tilsagn til serviceaftager i forhold til STARs snitflader | Berørte acceptkriterier | Bemærkninger | |||
---|---|---|---|---|---|
<epic nr>.1.1 | <epic nr>.1 .2 | <epic nr>.1 .3 | <epic nr>.1 .4 | ||
N/A | |||||
Oversigt over berørte webservices
Manuel oversigt som er synlig for eksterne
Links i listen virker kun med STAR Jira konto og kan derfor ikke tilgås af eksterne. Links under Summary indeholder ikke andre oplysninger relevant for eksterne end hvad der fremgår i tabellen.
(kopiér og indsæt manuelt i tabellen)
Summary | Varslingstype | Varslingsnote | Eksterne Snitflader | Interne Snitflader | Project |
---|---|---|---|---|---|
N/A | |||||
Automatisk oversigt
Ikke synlig for eksterne, men indeholder ikke andre oplysninger end kopieret til den manuelle oversigt ovenfor.
Beskrivelse af epic
Baggrund
Denne epic er oprettet ud fra et internt ønske om at sikre kvalitet, effektivitet (og GDPR overholdelse for test data) i hele STAR. Arbejdet er en videreudvikling af /wiki/spaces/ISB/pages/3944939521 Nedestående figur viser sammenhængen mellem de forskellige faser, kapabiliteter, leverancer og målgrupper. Scope for denne epic er fase 2+3 !
Tværgående test er en implementering af strategi for test automatisering udarbejdet af moderniseringsprojektet, dels af udviklingsdelen, dels af den organisatoriske implementering (forandringsledelse). Scope er dynamiske, funktionelle og tværgående tests. Resterende test aktiviteter håndteres af andre projekter. Se nedenstående figur for detaljer.
Regler
Ingen
Forventet påvirkning af jobcenter-, a-kasse- eller ydelsessystemer
Ingen ændringer i snitflader mellem DFDG domæner og eksterne aftagere.
På sigt vil denne epic give eksterne aftagere bedre muligheder for test op imod STAR's systemer.
1005.17.42.1 Alle moderniserede forretningsdomæner/applikationer er containeriseret og kan spinnes op i et Docker miljø
- Containerisering af Jobnet.
- Containerisering af Vitas.
- Containerisering af Taxonomy
- Containerisering af LSS
- Containerisering af øvrige applikationer
1005.17.42.2 Automatiserede tests på tværs af applikationer og forretningsdomæner kan afvikles på CI samt lokalt på udviklermaskiner
- Azure Devops afvikling af tests i CI
- Konfigurationstyring så vi kan styre connectionstrings m.m
- Vi skal kunne køre på det seneste i master på CI
- Skal kunne nemt styre hvilke applikationer/domæner/containere som er oppe og nede.
- Paralleliseret testafvikling (plus check at det virker)
- Vi skal kunne køre lokalt mod specifik branch der ikke er i master
- Vi skal kunne angive specifikke versioner af alle domæner når vi kører
1005.17.42.3
- Styr på hvordan vi venter hvor det ikke skal give problemer med test suiten hvis event mangler (testen skal blot fejle).
- Styr på timeouts (overskrivbar default).
- Simulering af events via eventbroker
- Vente på at systemet er fuldt ud startet op inkl. opdatering af heldbredscheck
- Styr på applikationer/domæner som ikke svarer
- Styr på exception beskeder og log filer (evt. log filer som arifaktor i PR)
1005.17.42.4 Test data til én og samme test borger kan nemt oprettes i multiple forretningsdomæner uden, at udviklere/testere kender til domæne- og databasemodeller i de enkelte forretningsdomæner
1005.17.42.5
- Foreløbig løsning på notifikation når async processen er færdig i et eller flere konkrete domæner/applikationer (endelig løsning afventer at vi får mere erfaring)
- Vi skal nemt kunne udlæse samlet ”streng” med alle versioner af et kørende system – det kan evt. senere kræve ændringer i frontends el. lign
- Wiremocks (subbe eksterne afhængigheder, såsom LetAsyl m.fl.)
- Endelig løsning for notifikation når async processen er færdig i et eller flere konkrete domæner uden at testen ved noget om hvilke events som er involveret internt
- Webhooks
1005.17.42.6 Der er oprette stamdata (grunddata) databaser for applikationer og domæner, så landekoder, stillingsbetegnelser m.m. er til stede, uden at automatiserede tests skal beskæftige sig hermed
Standard test data fixtures (migrations)
1005.17.42.7 Der er oprettet en mindre test suite, som til dels tester de vigtigste forretningsmæssige flows, samt sikrer at testrammeværket er korrekt og komplet
- Udarbejdelse af ca 25 vigtige tværgående service test cases som involvere applikationer og domæner, herunder identifikation + prioritering af disse
- Udarbejdelse af ca 25 vigtige tværgående GUI test cases som involvere applikationer og domæner, herunder identifikation + prioritering af disse
- Programmering af ovennævnte test suites.
1005.17.42.8 Vi skal nemt og effektivt kunne genbruge standardiserede test borgere (persona) i flere tests
- Test data katalog klasse med persona o.s.v.
1005.17.42.9 Testrammeværket er dokumenteret og der er gennemført vidensdeling på tvær af teams i Star City
- Dokumentation i STARWiki og oplæring
Overvej for hvert acceptkriterie hvilke systemer der berøres af ændringen:
- DFDG
- Services
- WSRMer
- Kodelister
- PersonStatusService (PSS) / domænespecifikke statusservices
- PersonHistoryService (PHS) / domænespecifikke historik services
- LSS (Landssupportsystem) og herunder Registerudtræk (hvis STAR har dataejerskab og der er lavet PHS på domænet)
- Jobnet
- VITAS
- JobKon
- JobAG
- JobSearch
- Ydelsesudstilling
- Taxonomy
- BI integrationsplatform
- Alle områder
- Nye batchjobs
- Dokumentation af jobbet til SF (jf. skabelon: xxx link til skabelon)
- Dataløft
- Hvis der i Databaser tilføjes eller fjernes kolonner med personfølsomme data (f.eks. person navne, adresser, email, telefonumre etc.), så skal SF informeres så disse data fremadrettet tilføjes eller fjernes fra scrambling.
- Nye batchjobs
- Kommunalt sagsbehandlingssystem
- A-kasse sagsbehandlingssystem
- Kommunalt bookingsystem
- WorkForcePlanner (WFP)
- M4 Booking
- Schultz Booking
- Kommunalt ydelsessystem (KY)
- Kommunalt sygedagpengesystem (KSD)
Særlige krav til test
Test suites skal være i høj kvalitet, herunder nemme at vedligeholde og robuste (uden falske positiver).
Konsekvenser for drift/idriftsættelse
Kun containeriseringen har konsekvenser for drift og dette håndteres af moderniseringsprojektet.
Arkitektur- og implementeringsnoter
Der henvises til strategi for testautomatisering som beskriver arkitekturændringer.
Husk GDPR stillingtagen
Ingen personfølsomme data i epics
Illustrationer, skærmdumps m.v. må ikke indeholde cpr.nr., CV. nr., rigtige personnavne på borgere eller deres kontaktoplysninger i form af e-mail, telefonnr., adresse m.v.
- Ja, det er tjekket, at epic ikke indeholder dette.
Angiv hvem der har foretaget dette tjek: MMC
Angiv dato for tjek: 05-06-2023
Opbevaring af oplysninger i STARs it-systemer
Denne epic tilføjer ingen nye nye dataområder eller nye data i eksisterende områder.
Hvem må tilgå oplysningerne?
Denne epic tilføjer ingen nye oplysninger og ændre ikke på adgang til eksisterende oplysninger.
Korrekte sikkerhedsattributter på services
Denne epic tilføjer ingen webservices, som kan kaldes af andre organisationer.