Blogg - Äg din testmiljö

https://commons.wikimedia.org/wiki/File:Godin_van_de_Wind_4_Nieuwpoort.jpg

Ä: Äg din testmiljö

Av Charlotta Carlsson 2020-07-05


Med testmiljöer*) är det som med all annan IT-leverans: Det som landar enkelt och självklart hos dig som användare är ingen slump utan resultatet av en lång rad medvetna aktiviteter av IT-proffs.


Enkelt och självklart för en testmiljö är att du som testare får inloggningsinstruktioner och så är det bara att köra igång med testandet. Under testernas gång tuffar systemet på under de tider som du förväntar dig. Alla delar av systemleveransen och verksamhetsprocesserna går att testa fullt ut. Skulle det uppstå tekniska frågor vet du vart du ska vända dig och eventuella problem löses snabbt.


Det IT-proffsen då behöver ha ordnat med är:

  • Ett samlat ansvar för miljöstrategier och att hålla ordning på alla miljöer, inklusive aktuell teknisk dokumentation.
  • En strukturerad livscykelhantering - dvs processer för att beställa, installera, underhålla, avveckla miljöer.
  • Reproducerbara och personoberoende rutiner för att installera system, data och konfigurationer i miljöerna och verifiera att installationen är korrekt.
  • Kontroll över eller kännedom om hur driftmiljön förvaltas och dess struktur, t.ex. SLA:er, servicefönster, säkerhetsnivåer, support och tjänsteförfrågningar.
  • Tydligt miljöägarskap - att en namngiven person eller roll är ägare av en viss miljö under en viss tid. Det innebär full kontroll över innehåll i miljön och alla aktiviteter däri. Testledaren bör typiskt vara ägare av testmiljö(er) under en testperiod.


I den aktuella testplanen har testledaren hanterat sådant som:

  • Angivit tidsspann för ägandet av testmiljön
  • Säkerställt vilken testmiljö som ska dedikeras för ändamålet
  • Vad exakt som ska installeras (t.ex. systemversion, moduler, funktioner, gränssnitt, integrationer)
  • Vilken data som testmiljön ska populeras med och vem som ansvarar för det (se vidare vid bokstaven D: data - ditt allt!)
  • Infrastruktur för integrationer (s e vidare vid bokstaven I: Integrationerna - bästa teststrategin)
  • Klientmiljö med rätt devices och grundprogramvara
  • Autentiserings (inloggnings-) metoder för testare
  • Behörighetsuppsättningar
  • Backupfrekvens och villkor för återläsning
  • Tidplan för rättningsleveranser, process för uppgradering av miljön
  • Att integrerade testmiljöer och dess personal är tillgängliga när de behövs
  • Lättillgänglig information för testare om testmiljön


Strax innan teststart har det skett:

  • Installationer och kontroller från systemleverantörers sida av systemleveransen i acceptanstestmiljön
  • En kontroll enligt checklista från testledarens sida att testmiljön går att logga in i mm.
  • Handskakning mellan systemleverantörer, teknikansvariga och testledare att miljön och leveransen är klar, efter gemensam hantering av eventuella fel som upptäckts i kontrollerna.


Under själva testen:

  • Tydligt för alla inblandade att inga aktiviteter får ske i testmiljön utan att miljöägaren (testledaren) har godkänt det (t.ex. patchning av rättningar, ändringar i konfiguration, andra tester än det aktuella ändamålet, andra aktiviteter såsom utbildning, utveckling...)
  • Uppgradering/installation av rättningar sker enligt överenskommelse, ej ad hoc
  • Problemhanteringsansvariga utsedda hos respektive part
  • Definierade informationskanaler vid störningar så att alla testare m.fl. nås snabbt och effektivt med vad som gäller
  • Tekniska kontaktpersoner beredda att hantera oförutsedda problem


Efter testens slut:

  • Testmiljöfrågorna är med i retrospektiv för att ta tillvara erfarenheter inför nästa testomgång.
  • Avveckling/återställning av testmiljön inför nästa testomgång


Säkert finns fler aspekter som är viktiga för att testmiljöerna ska fungera optimalt i just din organisation och projektsituation. Men jag tror du känner igen dig i åtminstone en del av mina punkter och du har troligen någon gång upplevt problem som beror på att något av detta har fallit mellan stolarna. Som testledare kan jag varmt rekommendera dig att ställa tydliga krav på den/de som tekniskt ansvarar för testmiljöerna utifrån ditt behov och visa uppskattning för det jobb de gör. De kommer uppskatta dig tillbaks och bli dina bästa vänner.


Slutsats för bokstaven Ä:  Problemfria testmiljöer kräver medvetna strategier och ett tydligt miljöägarskap.


*) En testmiljö vill jag definiera som en teknisk behållare där sedan en systemleverans (testobjekt) och testdata kan läggas in och systemparametrar skruvas till för behovet. Testmiljön kan vara sammankopplade instanser av servrar, serverprogramvara, operativsystem, databashanterare, samt teknisk infrastruktur av olika slag. Alltså, en definierad uppsättning hårdvara och mjukvara som installeras och dimensioneras utifrån behovet. Testmiljö omfattar även klientmiljö. I acceptanstest bör testmiljöerna vara så driftlika som möjligt. Testmiljön i sig kan också anses vara ett testobjekt, när dess uppsättning ingår i det som ska testas för att förbereda för produktionssättning.