pairwise testing all pairs testing tutorial with tools
Wat is paarsgewijs testen en hoe het een effectieve testontwerptechniek is om defecten op te sporen:
In dit artikel gaan we leren over een ‘ Combinatorische testen ’Techniek genaamd‘ Paarsgewijs testen ' ook gekend als ' All-pair testen
Slim testen is de noodzaak van het uur. 90% van de tijd dat het systeemtestteam werkt met strakke schema's. Testontwerptechnieken zouden dus zeer effectief moeten zijn voor maximale testdekking en hoge defectopbrengst.
Wat je leert:
- Definitie: wat is paarsgewijs testen?
- Paarsgewijs testvoorbeeld
- Paarsgewijze testtools:
- Gevolgtrekking:
- Aanbevolen literatuur
Definitie: wat is paarsgewijs testen?
Paarsgewijs testen is een test ontwerp techniek die honderd procent testdekking oplevert.
ISTQB definieert All-Pairs Testing (of Pairwise Testing) als Een black-box testontwerptechniek waarin testgevallen zijn ontworpen om alle mogelijke discrete combinaties van elk paar invoerparameters uit te voeren.
De output van een softwareapplicatie is afhankelijk van vele factoren, b.v. invoerparameters, toestandsvariabelen en omgevingsconfiguraties. Technieken zoals grenswaardeanalyse en equivalentiepartitionering kan nuttig zijn om de mogelijke waarden voor individuele factoren te identificeren. Maar het is onpraktisch om alle mogelijke combinaties van waarden voor al die factoren te testen. Dus in plaats daarvan er wordt een subset van combinaties gegenereerd om aan alle factoren te voldoen.
De All-Pairs-techniek is erg handig voor het ontwerpen van tests voor toepassingen met meerdere parameters. Tests zijn zo ontworpen dat er voor elk paar invoerparameters naar een systeem alle mogelijke discrete combinaties van die parameters zijn. De testsuite omvat alle combinaties; daarom is het niet uitputtend maar toch erg effectief in bugs vinden
Laten we leren hoe we kunnen solliciteren All-pair testen door dit voorbeeld.
Paarsgewijs testvoorbeeld
Auto bestellen applicatie:
hoe u een bugrapport indient
- Met de applicatie voor het bestellen van auto's kunnen auto's worden gekocht en verkocht. Het moet de handel in Delhi en Mumbai ondersteunen.
- De aanvraag moet registratienummers hebben, kan geldig of ongeldig zijn. Het zou de handel van de volgende auto's mogelijk moeten maken: BMW, Audi en Mercedes.
- Er zijn twee soorten boekingen mogelijk: E-boeking en In Store.
- Bestellingen kunnen alleen tijdens beursuren worden geplaatst.
Stap 1: Laten we de betrokken variabelen opsommen.
1) Bestel categorie
een. Kopen
b. Verkopen
twee) Plaats
een. Delhi
b. Mumbai
3) Automerk
een. BMW
b. Audi
c. Mercedes
4) Registratienummers
een. Geldig (5000)
b. Ongeldig
5) Order type
een. E-boeking
b. In de winkel
6) Bestellingstijd
een. Werkuren
b. Niet-werkuren
Als we alle mogelijke geldige combinaties willen testen:
= 2 X 2 X 3 X 5000 X 2 X 2
= 240000 Geldige combinaties van testgevallen :(
Er is ook een oneindig aantal ongeldige combinaties.
Stap 2: Laten we het vereenvoudigen
- Gebruik een slim representatief monster.
- Gebruik groepen en grenzen, zelfs als de gegevens niet discreet zijn.
- Verlaag het registratienummer tot twee
- Geldig registratienummer
- Ongeldig registratienummer
Laten we nu het aantal mogelijke combinaties berekenen
= 2 X 2 X 3 X 2 X 2 X 2
= 96
Stap 3: Betrokken variabelen en waarden rangschikken.
Als we de betrokken variabelen en waarden rangschikken, ziet het er ongeveer zo uit.
Bestel nu de variabelen zodat degene met het meeste aantal waarden de eerste is en de minste de laatste.
Stap 4: Variabelen rangschikken om een testsuite te maken
Laten we beginnen de tabel kolom voor kolom in te vullen. In eerste instantie zou de tafel er ongeveer zo uit moeten zien. De drie waarden van Product (variabele met het hoogste aantal waarden) moet elk twee keer worden geschreven (twee is het aantal waarden van de volgende hoogste variabele, d.w.z. Bestel categorie
De kolom Ordercategorie heeft twee waarden. Dat is hoe vaak we de waarden van de eerste kolom, Product, moeten invoegen.
Voor elke set waarden in kolom 1 plaatsen we beide waarden van kolom 2. Herhaal hetzelfde voor kolom 3.
We hebben een Buy en Delhi, maar wacht - er is geen Buy en Mumbai. We hebben een Sell en Mumbai, maar geen Sell en Delhi. Laten we de waarden in de tweede set in de derde kolom omwisselen.
Dit ziet er veel beter uit!
We herhalen dezelfde stappen voor kolom 3 en 4.
Wanneer kolommen 3 en 4 worden vergeleken, heeft elke waarde in kolom 3 beide waarden van kolom 4. Maar als u de 2nden 4thkolom, we hebben Buy en Valid & Sell en Invalid .i.e. Kopen heeft niet ‘Ongeldig’ en Verkopen heeft niet ‘Geldig’. Daarom moeten we de laatste reeks waarden in de 4 uitwisselenthkolom.
Kolom 6 (Besteltijd) is problematisch. We missen de koop- / niet-werktijden en de verkoop- / werktijden. We kunnen onze ontbrekende paren niet passen door waarden om te wisselen, aangezien we al alle rijen hebben verwisseld. Als we nu ruilen, missen we mogelijk andere mogelijke paren die al zijn gesorteerd. Daarom voegen we nog twee testgevallen toe die deze paren bevatten. Vandaar de lege rijen!
Nu vullen we de lege cellen in zoals we willen, omdat de andere variabelewaarden puur willekeurig zijn (of Don't Cares ~).
Hoera! Alle paren in 8 gevallen, in plaats van alle combinaties in 96!
Daarom zagen we hoe efficiënt de All-pair-techniek van testontwerp is. Er is een goede kans om bugs te vinden en het is leuk en krachtig.
De paarsgewijze testtechniek heeft ook enkele beperkingen.
- Het mislukt als de voor het testen geselecteerde waarden onjuist zijn.
- Het mislukt als zeer waarschijnlijke combinaties te weinig aandacht krijgen.
- Het mislukt als de interacties tussen de variabelen niet goed worden begrepen.
Paarsgewijze testtools:
Er zijn tools beschikbaar die de testtechniek van alle paren toepassen die ons in staat stelt om het testcase-ontwerpproces effectief te automatiseren door een compacte set parameterwaardekeuzes te genereren als de gewenste testcases. Enkele bekende tools uit de industrie zijn:
- PICT ‘Pairwise Independent Combinatorial Testing’, geleverd door Microsoft Corp.
- IBM FoCuS ‘Functional Coverage Unified Solution’, geleverd door IBM.
- HANDELINGEN ‘Advanced Combinatorial Testing System’, geleverd door NIST, een agentschap van de Amerikaanse overheid.
- Hexawise
- Jenny
- Paarsgewijs door Inductive AS
- VP-dag gratis testtool voor alle paren
Gevolgtrekking:
De paarsgewijze testtechniek kan het aantal te dekken combinaties drastisch verminderen, maar blijft zeer effectief in termen van foutdetectie. Het is inderdaad een slimme testontwerptechniek die een win-winsituatie garandeert voor zowel testinspanning als testeffectiviteit.
Tijdens de testplanningsfase van softwaretests moet altijd rekening worden gehouden met de paarsgewijze testtechniek. Ofwel doen we het handmatig of gebruiken we een tool om testcases te genereren, het wordt een noodzakelijk onderdeel van het testplan omdat het op zijn beurt de testschatting beïnvloedt.
Aanbevolen literatuur
- Beste softwaretesttools 2021 (QA Test Automation Tools)
- Zelfstudie over het testen van volumes: voorbeelden en tools voor het testen van volumes
- Functioneel testen versus niet-functioneel testen
- Tutorial voor het testen van configuraties met voorbeelden
- Primer eBook downloaden testen
- Diepgaande Eclipse-zelfstudies voor beginners
- Tutorial over destructief testen en niet-destructief testen
- Black Box-testen: een diepgaande zelfstudie met voorbeelden en technieken