Udforsk skift til højre-test

Fuldført

Som forklaret tidligere i kurset er test i programlivscyklusstyring afgørende for at maksimere kodekvaliteten og minimere den driftsmæssige risiko, der er forbundet med udrulning og opdatering af software. Dette er årsagen til anvendelsen af skift-venstre- tilgang, som introducerer testaktiviteter så tidligt som muligt i udviklingsfasen. Der er dog visse aspekter af test, som ikke er effektive, når de udføres på denne måde. For at opfylde deres formål skal de i stedet udføres i produktionsmiljøet. Dette kaldes tilgangen skift til højre. Organisationen i vores eksempelscenarie skal bruge dette for på korrekt vis at vurdere pålideligheden af deres systemer i kombination med fejlinjektion. I denne lektion skal du undersøge dette og andre kriterier, hvor skift-højre-test er berettiget.

Hvad er årsagerne til skift-højre-test?

Selvom shift-left-testen er ideel til enheds- og røgtest, udføres den på betingelser, der typisk adskiller sig væsentligt fra dem, der gælder for tilsigtede leveringsmål. Selv kvalitetssikrings- og midlertidige miljøer afspejler sjældent fuldt ud kompleksiteten af deres produktionskollegaer. Den bedste måde at undersøge funktionsmåden for en arbejdsbelastning på efter udrulningen fuldt ud er at teste den på det pågældende tidspunkt.

Test i produktion giver følgende fordele:

  • Afspejler de faktiske arbejdsvilkår, herunder ekstra belastning, der er knyttet til håndtering af slutbrugeranmodninger.
  • Tager højde for faktorer, som ville være svære at simulere, f.eks. forbindelse til eksterne systemer.
  • Afspejler ændringer i arbejdsbelastningsbehovet over tid.

Hvad er typiske testscenarier for skift til højre?

Selvom den skift-højre-testmetode kan begrundes i mange scenarier, er der få, hvor den er egnet. Disse scenarier omfatter:

  • Microservices-udrulninger: Mikrotjenestearkitekturen består typisk af et stort antal komponenter, der er udviklet uafhængigt af hinanden. Et stort antal kombinationer af disse tjenester kan begrunde testen af skift til højre for at fokusere på de scenarier, der er mest relevante i det faktiske produktionsmiljø (i henhold til deres brug i det virkelige liv).

  • Evaluering af indvirkningen af netværksbåndbredden og ventetidsbetingelserne: Netværksbetingelser er ofte udfordrende at simulere, så hvis en arbejdsbelastnings ydeevne er meget ventetids- eller båndbreddeafhængig, kan testen af skift til højre være den mest passende løsning.

  • test af brugeraccept: Den faktiske feedback fra brugerne kan være afgørende for at validere arbejdsbelastningens ydeevne og anvendelighed.

  • Validering af failoverprocedurer i redundante konfigurationer: Test af fejlinjektion og it-katastrofeberedskab er beregnet til at vurdere robustheden af produktionsarbejdsbelastninger. Fejlinjektion omfatter bevidst indførelse af fejl i individuelle komponenter i en arbejdsbelastning under udførelsen for at identificere eventuelle svagheder og afhjælpe dem, hvilket øger den overordnede pålidelighed.

    Seddel

    Kaoskonstruktion er et andet koncept inden for DevOps-pålidelighedstest. Som med fejlinjektion indebærer det simulerede fejl (i dette tilfælde at skabe et kontrolleret kaos i det system, der testes). Omfanget er dog typisk bredere, så det er målrettet hele systemet i stedet for kun dets individuelle komponenter, og testscenarierne er som regel mere omfattende. Kaoskonstruktion er typisk begrænset til kanariske miljøer, der har meget begrænset eller ingen produktionseffekt.

    Seddel

    Du kan bruge Azure Chaos Studio til at implementere kaostekniske eksperimenter, der er målrettet løsninger, der hostes i Microsoft Azure. Du skal gennemgå et eksempel på sådanne eksperimenter i laboratoriet i dette modul.