Tekniker för mjukvarutestning med exempel på testfall
Vad är mjukvarutestteknik?
Programvarutesttekniker hjälper dig att designa bättre testfall. Eftersom uttömmande testning inte är möjlig; Manuella testtekniker hjälper till att minska antalet testfall som ska utföras samtidigt som testtäckningen ökar. De hjälper till att identifiera testförhållanden som annars är svåra att känna igen.
Gränsvärdesanalys (BVA)
Gränsvärdesanalys baseras på testning vid gränserna mellan skiljeväggar. Det inkluderar maximala, minimum, innanför eller utanför gränser, typiska värden och felvärden.
Det är allmänt sett att ett stort antal fel uppstår vid gränserna för de definierade ingångsvärdena snarare än mitten. Det är också känt som BVA och ger ett urval av testfall som utövar gränsvärden.
Denna svarta låda-testteknik kompletterar ekvivalenspartitionering. Denna mjukvarutestteknik bygger på principen att om ett system fungerar bra för dessa specifika värden så kommer det att fungera perfekt för alla värden som kommer mellan de två gränsvärdena.
Riktlinjer för gränsvärdesanalys
- Om ett ingångsvillkor är begränsat mellan värdena x och y, bör testfallen utformas med värden x och y samt värden som ligger över och under x och y.
- Om ett ingångsvillkor är ett stort antal värden, bör testfallet utvecklas som måste utöva minimi- och maximitalen. Här testas även värden över och under minimi- och maxvärdena.
- Tillämpa riktlinjerna 1 och 2 för utdataförhållanden. Den ger en utdata som återspeglar de förväntade minimi- och maxvärdena. Den testar även värdena under eller ovan.
Exempelvis:
Input condition is valid between 1 to 10 Boundary values 0,1,2 and 9,10,11
Ekvivalensklassuppdelning
Ekvivalent klasspartitionering låter dig dela upp testvillkoren i en partition som bör anses vara densamma. Denna mjukvarutestmetod delar in indatadomänen för ett program i klasser av data från vilka testfall bör utformas.
Konceptet bakom denna testfallsdesignteknik är att testfall med ett representativt värde för varje klass är lika med ett test av något annat värde av samma klass. Det låter dig identifiera såväl giltiga som ogiltiga ekvivalensklasser.
Exempelvis:
Inmatningsvillkor är giltiga mellan
1 to 10 and 20 to 30
Därför finns det fem ekvivalensklasser
--- to 0 (invalid) 1 to 10 (valid) 11 to 19 (invalid) 20 to 30 (valid) 31 to --- (invalid)
Du väljer värden från varje klass, dvs.
-2, 3, 15, 25, 45
Läs även mer om – Gränsvärdesanalys och ekvivalensfördelningstestning
Beslutstabellbaserad testning
En beslutstabell är också känd som orsak-effekttabell. Denna mjukvarutestteknik används för funktioner som svarar på en kombination av indata eller händelser. Till exempel bör en skicka-knapp vara aktiverad om användaren har angett alla obligatoriska fält.
Den första uppgiften är att identifiera funktioner där utgången beror på en kombination av ingångar. Om det finns en stor ingångsuppsättning av kombinationer, dela upp den i mindre delmängder som är till hjälp för att hantera en beslutstabell.
För varje funktion måste du skapa en tabell och lista ner alla typer av kombinationer av ingångar och dess respektive utgångar. Detta hjälper till att identifiera ett tillstånd som förbises av testaren.
Följande är steg för att skapa en beslutstabell:- Ange ingångarna i rader
- Ange alla regler i kolumnen
- Fyll tabellen med olika kombinationer av ingångar
- I den sista raden, notera utdata mot ingångskombinationen.
Exempelvis: En skicka-knapp i ett kontaktformulär är endast aktiverad när alla inmatningar har skrivits in av slutanvändaren.
Statsövergång
I tillståndsövergångsteknik ändrar förändringar i ingångsförhållanden tillståndet för Application Under Test (AUT). Denna testteknik tillåter testaren att testa beteendet hos en AUT. Testaren kan utföra denna åtgärd genom att ange olika inmatningsvillkor i en sekvens. I tillståndsövergångsteknik tillhandahåller testteamet positiva såväl som negativa indatatestvärden för att utvärdera systemets beteende.
Riktlinjer för statsövergång:
- Tillståndsövergång bör användas när ett testteam testar applikationen för en begränsad uppsättning indatavärden.
- Testfallsdesigntekniken bör användas när testteamet vill testa sekvensen av händelser som inträffar i applikationen som testas.
Exempelvis:
I följande exempel, om användaren anger ett giltigt lösenord i något av de tre första försöken, kommer användaren att kunna logga in. Om användaren anger det ogiltiga lösenordet vid första eller andra försöket kommer användaren att uppmanas att ange lösenordet igen. När användaren anger fel lösenord 3rd tid har åtgärden vidtagits och kontot kommer att blockeras.
Tillståndsövergångsdiagram
När användaren i det här diagrammet anger rätt PIN-nummer flyttas han eller hon till tillstånd beviljad åtkomst. Följande tabell skapas baserat på diagrammet ovan-
Tillståndsövergångstabell
Rätt PIN-kod | Fel PIN-kod | |
---|---|---|
S1) Starta | S5 | S2 |
S2) 1st försök | S5 | S3 |
S3) 2nd försök | S5 | S4 |
S4) 3rd försök | S5 | S6 |
S5) Tillträde beviljad | - | - |
S6) Kontot spärrat | - | - |
När användaren anger rätt PIN-kod i ovanstående tabell övergår tillståndet till Beviljad åtkomst. Och om användaren anger ett felaktigt lösenord flyttas han eller hon till nästa tillstånd. Om han gör detsamma 3rd tid, kommer han att nå kontot blockerat tillstånd.
Fel vid gissning
Fel vid gissning är en mjukvarutestteknik baserad på att gissa felet som kan råda i koden. Tekniken är starkt baserad på erfarenheten där testanalytikerna använder sin erfarenhet för att gissa den problematiska delen av testapplikationen. Därför måste testanalytikerna vara skickliga och erfarna för bättre felgissning.
Tekniken räknar en lista över möjliga fel eller felbenägna situationer. Sedan skriver testare en testfall att avslöja dessa fel. För att utforma testfall baserat på denna mjukvarutestteknik kan analytikern använda tidigare erfarenheter för att identifiera tillstånden.
Riktlinjer för felgissning:
- Testet bör använda tidigare erfarenhet av att testa liknande applikationer
- Förståelse av systemet som testas
- Kunskap om typiska implementeringsfel
- Kom ihåg tidigare oroliga områden
- Utvärdera historiska data & testresultat
Slutsats
- Test Case Design Technique låter dig designa bättre fall. Det finns fem huvudsakligen använda tekniker.
- Gränsvärdesanalys testar vid gränserna mellan partitioner.
- Ekvivalent klasspartitionering låter dig dela upp testvillkoren i en partition som bör anses vara densamma.
- Decision Table mjukvarutestteknik används för funktioner som svarar på en kombination av indata eller händelser.
- I tillståndsövergångsteknik ändrar förändringar i ingångsförhållanden tillståndet för Application Under Test (AUT)
- Felgissning är en mjukvarutestteknik som bygger på att gissa felet som kan råda i koden.