Hvad er parallel testning? Metode, tilgang og eksempel

⚡ Smart opsummering

Parallel testning kører et ældre system og et nyudviklet system mod det samme input på samme tid, så testere kan bekræfte, at migrerede data, beregninger og forretningsflow stadig giver identiske resultater.

  • 🎯 Formål: Bevis at den nye version opfører sig på samme måde som den gamle, eller bedre.
  • ️ Trigger: Systemudskiftninger, datamigreringer og synkroniseringsvinduer for to systemer.
  • 🚪 Kriterier: Indgangskriterier åbner cyklussen; udgangskriterier lukker den.
  • 🔍 Metode: Sammenlign begge output linje for linje, og klassificer alle forskelle.
  • ⚠️ Omkostninger: Fuld produktkendskab og fuldstændig dækning af resultater er påkrævet.

Definition, tilgang og eksempel på parallel testning

Hvad er parallel test?

Parallel test er en type softwaretest, hvor flere versioner eller underkomponenter af en applikation testes med det samme input på forskellige systemer samtidigt for at reducere testudførelsestiden. Formålet med parallel testning er at finde ud af, om den ældre version og den nye version opfører sig ens eller forskelligt, og at fastslå, om den nye version er mere effektiv.

Billedet nedenfor viser parallel testning.

Parallel testproces med gammelt og nyt system, der deler én indgang

Eksempel på parallel test

Når en organisation skifter til et nyt system, er ældre data en vigtig del af overgangen, og overførslen af ​​dem er kompleks.

I softwaretestning verificeres kompatibiliteten mellem det nyudviklede system og det gamle system gennem parallel testning, som diagrammet nedenfor viser.

Eksempel på parallel testning, der sammenligner output fra et ældre system med output fra et nyt system

Hvorfor skal man lave parallel test

Parallel testning udføres af disse årsager.

  • For at sikre, at den nye version af applikationen fungerer korrekt
  • For at sikre, at resultaterne er konsistente mellem den nye og den gamle version
  • For at kontrollere om dataformatet mellem de to versioner er ændret
  • For at kontrollere integriteten af ​​den nye applikation

For eksempel er brugerne i øjeblikket på version 1.0 af en applikation, og fra marts vil de skifte til version 1.1, som illustreret nedenfor.

Version 1.0 og version 1.1 blev testet side om side under migreringen

I sådanne tilfælde kører testere parallelle tests for at bekræfte, at datamigreringen er gennemført, og at ændringerne i den nye version hverken påvirker systemfunktionen eller det output, brugeren forventer.

Hvornår skal man udføre parallel test

Parallel testning anvendes i vid udstrækning når:

  • Virksomheden går fra et gammelt system til et nyt system
  • SyncHronisering udføres mellem to systemer
  • Ældre data importeres fra ét system til et andet
  • Alle resultater skal defineres præcist — for eksempel inden for finans eller forsikring, hvor beregning er en vigtig funktion i systemet.

Sådan laver du parallel test: komplet tilgang

Til parallel testning opretter du flere projekter, der hver tester en forskellig del af applikationen (slaveprojekter), og ét projekt (masterprojektet), der kører dem.

Parallel testning har to niveauer af kriterier.

  1. Kriterier for adgang til parallelle prøver — definere de opgaver, der skal opfyldes, før parallel testning kan udføres effektivt.
  2. Kriterier for udgang af parallelle tests — definere den vellykkede afslutning af den parallelle testfase.

Et par forudsætninger skal først være opfyldt.

  • Parallel testning kan ikke begynde, før testmiljø opsætningen er færdig
  • Alle forudsætninger og scenarier bør defineres først
  • Ældre data og nye data skal migreres med succes
  • Parallel testning er ikke afsluttet, før alle slutkriterier er opfyldt

Udfør parallel testning i fem trin.

  1. Kør det gamle system op mod det nyudviklede system.
  2. Forstå forskellene mellem de to systemer.
  3. Gennemgå en komplet cyklus med det samme input.
  4. Mål outputtet fra det nyudviklede system mod outputtet fra det gamle system.
  5. Rapportér årsagen til enhver funden fejl.

God praksis for parallel test

Her er et par nyttige tips.

Typiske fejl identificeret i Parallel Test

  • Intern logik er ændret
  • Produktets flow ændres
  • Vigtigste funktioner er ændret

Hvor mange cyklusser skal der kræves

Antallet af testcyklusser afhænger af modulets kompleksitet. Kør flere scenariecyklusser ved hjælp af foruddefinerede testdata der videreførte det tidligere system.

Kategorisering af forskelle

Resultaterne af det nye og det gamle system bør måles linje for linje med fremhævede forskelle, og hver forskel klassificeret efter fejltype.

Type fejl opstod under cyklusser

For hver forskel skal testeren notere, hvilken der gælder.

  • Indtastningsfejl
  • Fejl forårsaget af det gamle system
  • Forklarlig eller acceptabel forskel
  • Uforventet fejl

Hvad er ikke en parallel test

Tabellen tegner grænsen.

Det er Parallel Test Det er ikke parallel test
Test af den opdaterede applikation mod den tidligere applikation. Tester kun én software.
Kørsel af det gamle scenarie med den nye software under de samme inputbetingelser. Testning på tværs af browsere eller platforme.
Målet er at finde ud af resultatet i henhold til det tidligere system. Målet er at afdække et designproblem.
Kendskab til både det gamle og det nyudviklede system er påkrævet. Kendskab til forskellen er ikke påkrævet.

Udfordringer ved parallel test

  • Fuldstændig produktkendskab er påkrævet
  • Hvert resultat bør testes
  • Datainput og produktflow kræver konstant opmærksomhed

Ofte Stillede Spørgsmål

Regressionstest sammenligner et build med dets egne forventede resultater. Parallel testning sammenligner to separate systemer, hvor det ældre system bruges som reference.

Modeller kan differentiere to resultatsæt og klynge uoverensstemmelser, og adskille forklarlige afrundingsforskelle fra ægte defekter. Denne triage er den langsomste manuelle del af hver cyklus.

Ja. Sammenligning af poster og formatering af rapporter er gentagende kode, som en assistent håndterer godt. Toleranceregler kræver stadig et menneske, fordi en acceptabel forskel er et forretningsmæssigt valg.

Testere udfører cyklusserne; erhvervsbrugere vurderer forskellene. Inden for finans og forsikring afgør domæneeksperten, hvilke uoverensstemmelser der er acceptable.

Reelle produktionsdata fra det ældre system, maskeret hvor det er nødvendigt. Syntetiske data skjuler de historiske kanttilfælde, som migrering oftest bryder.

Udtrykket bruges på begge måder. At køre mange automatiseret Suiter på én gang på et gitter forkorter udførelsestiden, men sammenligner intet mellem to systemer.

Når alle exitkriterier er opfyldt: alle cyklusser er udført, alle forskelle er klassificeret, ingen uforklarlig uoverensstemmelse er åben. Sign-off går normalt forud. test af brugeraccept.

To live-miljøer, duplikerede data og personale, der kender begge systemer. Omkostningerne accepteres, hvor en forkert beregning har lovgivningsmæssige konsekvenser.

Opsummer dette indlæg med: