Test av beslutstabell: Lär dig med exempel

Innehållsförteckning:

Anonim

Beslutstabell

En beslutstabell är en tabellåtergivning av ingångar kontra regler / fall / testvillkor. Det är ett mycket effektivt verktyg som används för både komplex programvarutestning och kravhantering. Beslutstabellen hjälper till att kontrollera alla möjliga kombinationer av villkor för testning och testare kan också enkelt identifiera missade förhållanden. Villkoren anges som sanna (T) och falska (F) värden.

Vad är beslutstabellprovning?

Beslutstabellstestning är en programvarutestningsteknik som används för att testa systembeteende för olika ingångskombinationer. Detta är ett systematiskt tillvägagångssätt där de olika ingångskombinationerna och deras motsvarande systembeteende (Output) fångas i tabellform. Det är därför det också kallas som en orsak-effekt- tabell där orsak och effekter fångas för bättre testtäckning.

Låt oss lära oss med ett exempel.

Exempel 1: Hur man gör beslutsunderlag för inloggningsskärmen

Låt oss skapa en beslutstabell för en inloggningsskärm.

Villkoret är enkelt om användaren anger rätt användarnamn och lösenord kommer användaren att omdirigeras till hemsidan. Om någon av ingångarna är fel visas ett felmeddelande.

Betingelser Regel 1 Regel 2 Regel 3 Regel 4
Användarnamn (T / F) F T F T
Lösenord (T / F) F F T T
Utgång (E / H) E E E H

Legend:

  • T - Rätt användarnamn / lösenord
  • F - Fel användarnamn / lösenord
  • E - Felmeddelande visas
  • H - Startskärmen visas

Tolkning:

  • Fall 1 - Användarnamn och lösenord var båda fel. Användaren visas ett felmeddelande.
  • Fall 2 - Användarnamnet var korrekt, men lösenordet var fel. Användaren visas ett felmeddelande.
  • Fall 3 - Användarnamnet var fel men lösenordet var korrekt. Användaren visas ett felmeddelande.
  • Fall 4 - Användarnamn och lösenord var båda korrekta och användaren navigerade till hemsidan

Medan vi konverterar detta till testfall kan vi skapa två scenarier,

  • Ange rätt användarnamn och rätt lösenord och klicka på inloggning, och det förväntade resultatet blir att användaren ska navigeras till hemsidan

Och en från nedanstående scenario

  • Ange fel användarnamn och fel lösenord och klicka på inloggning, och det förväntade resultatet blir att användaren får ett felmeddelande
  • Ange rätt användarnamn och fel lösenord och klicka på inloggning, och det förväntade resultatet blir att användaren får ett felmeddelande
  • Ange fel användarnamn och rätt lösenord och klicka på inloggning, och det förväntade resultatet blir att användaren får ett felmeddelande

Eftersom de i princip testar samma regel.

Exempel 2: Hur man gör beslutstabell för uppladdningsskärm

Tänk nu på en dialogruta som ber användaren att ladda upp foto med vissa villkor som -

  1. Du kan bara ladda upp bilden i formatet '.jpg.webp'
  2. filstorlek mindre än 32 kb
  3. upplösning 137 * 177.

Om något av villkoren misslyckas kommer systemet att kasta motsvarande felmeddelande om problemet och om alla villkor är uppfyllda kommer fotoet att uppdateras framgångsrikt

Låt oss skapa beslutstabellen för det här fallet.

Betingelser Fall 1 Fall 2 Fall 3 Fall 4 Fall 5 Fall 6 Fall 7 Fall 8
Formatera .jpg.webp .jpg.webp .jpg.webp .jpg.webp Inte .jpg.webp Inte .jpg.webp Inte .jpg.webp Inte .jpg.webp
Storlek Mindre än 32 kb Mindre än 32 kb > = 32 kb > = 32 kb Mindre än 32 kb Mindre än 32 kb > = 32 kb > = 32 kb
upplösning 137 * 177 Inte 137 * 177 137 * 177 Inte 137 * 177 137 * 177 Inte 137 * 177 137 * 177 Inte 137 * 177
Produktion Foto uppladdat Felmeddelande upplösning fel Felmeddelande med felmeddelande Felmeddelandets storlek och upplösningsfel Felmeddelande för formatmatchning Felmeddelandeformat och upplösningsfel Felmeddelande för format- och storleksfel Felmeddelande för format, storlek och upplösningsfel

För detta tillstånd kan vi skapa åtta olika testfall och säkerställa fullständig täckning baserat på ovanstående tabell.

  1. Ladda upp ett foto med formatet '.jpg.webp', storlek mindre än 32 kb och upplösning 137 * 177 och klicka på uppladdning. Förväntat resultat är att Foto ska laddas upp
  2. Ladda upp ett foto med formatet '.jpg.webp', storlek mindre än 32 kb och upplösning inte 137 * 177 och klicka på uppladdning. Förväntat resultat är felmeddelande om upplösningsfel ska visas
  3. Ladda upp ett foto med formatet '.jpg.webp', storlek mer än 32 kb och upplösning 137 * 177 och klicka på uppladdning. Förväntat resultat är felmeddelande storlek ska inte visas
  4. Ladda upp ett foto med formatet '.jpg.webp', storlek mer än lika med 32 kb och upplösning inte 137 * 177 och klicka på uppladdning. Förväntat resultat är Felmeddelandestorlek och upplösningsfel ska visas
  5. Ladda upp ett foto med ett annat format än '.jpg.webp', storlek mindre än 32 kb och upplösning 137 * 177 och klicka på uppladdning. Förväntat resultat är Felmeddelande om formatmatchning ska visas
  6. Ladda upp ett foto med annat format än '.jpg.webp', storlek mindre än 32 kb och upplösning inte 137 * 177 och klicka på uppladdning. Förväntat resultat är felmeddelandeformat och upplösningsfel ska visas
  7. Ladda upp ett foto med ett annat format än '.jpg.webp', storlek mer än 32 kb och upplösning 137 * 177 och klicka på uppladdning. Förväntat resultat är Felmeddelande för format och storleksöverensstämmelse ska visas
  8. Ladda upp ett foto med ett annat format än '.jpg.webp', storlek mer än 32 kb och upplösning inte 137 * 177 och klicka på uppladdning. Förväntat resultat är Felmeddelande för att format, storlek och upplösning inte ska visas

Varför är det viktigt att testa beslutstabeller?

Beslutstabeltestning är viktigt eftersom det hjälper till att testa olika kombinationer av villkor och ger bättre testtäckning för komplex affärslogik. När man testar beteendet hos en stor uppsättning ingångar där systembeteendet skiljer sig från varje uppsättning ingångar, ger beslutstabellstestning bra täckning och representationen är enkel så det är lätt att tolka och använda.

Inom mjukvaruteknik är gränsvärde och motsvarande partition andra liknande tekniker som används för att säkerställa bättre täckning. De används om systemet visar samma beteende för en stor uppsättning ingångar. Men i ett system där för varje uppsättning ingångsvärden systemets beteende är annorlunda är gränsvärde och motsvarande partitionsteknik inte effektiva för att säkerställa god testtäckning.

I det här fallet är beslutstabellstest ett bra alternativ. Denna teknik kan säkerställa god täckning och representationen är enkel så att den är lätt att tolka och använda.

Denna tabell kan användas som referens för kravet och för funktionalitetsutveckling eftersom det är lätt att förstå och täcka alla kombinationer.

Betydelsen av denna teknik blir omedelbart tydlig när antalet ingångar ökar. Antalet möjliga kombinationer ges av 2 n, där n är antalet ingångar. För n = 10, vilket är mycket vanligt vid webbaserad testning, med stora inmatningsformulär, kommer antalet kombinationer att vara 1024. Uppenbarligen kan du inte testa alla men du väljer en rik underuppsättning av möjliga kombinationer med hjälp av beslutsbaserade testteknik.

Fördelar med beslutstabeltestning

  • När systembeteendet är annorlunda för olika ingångar och inte samma för en rad ingångar, hjälper inte lika ekvivalent partitionering och gränsvärdesanalys, men beslutstabellen kan användas.
  • Representationen är enkel så att den lätt kan tolkas och används för utveckling och affärer också.
  • Denna tabell hjälper till att skapa effektiva kombinationer och kan säkerställa en bättre täckning för testning
  • Alla komplexa affärsförhållanden kan enkelt förvandlas till beslutstabeller
  • I det fall vi går till 100% täckning, vanligtvis när ingångskombinationerna är låga, kan denna teknik säkerställa täckningen.

Nackdelar med att testa beslutstabeller

Den största nackdelen är att när antalet ingångar ökar kommer tabellen att bli mer komplex

Klicka här om videon inte är tillgänglig