Orthogonale array-testen
Orthogonal Array Testing (OAT) is een softwaretesttechniek die orthogonale arrays gebruikt om testcases te maken. Het is een statistische testbenadering die vooral handig is wanneer het te testen systeem enorme gegevensinvoer heeft. Orthogonale array-testen helpen om de testdekking te maximaliseren door de inputs te koppelen en te combineren en het systeem te testen met relatief minder testcases voor tijdwinst.
Wanneer een treinkaartje bijvoorbeeld moet worden geverifieerd, moeten factoren zoals - het aantal passagiers, ticketnummer, stoelnummers en treinnummers worden getest. Het één voor één testen van elke factor / input is omslachtig. Het is efficiënter als de QA-engineer meer inputs combineert en tests uitvoert. In dergelijke gevallen kunnen we de Orthogonal Array-testmethode gebruiken.
Deze manier van koppelen of combineren van ingangen en het testen van het systeem om tijd te besparen, wordt paarsgewijs testen genoemd. OATS-techniek wordt gebruikt voor paarsgewijs testen.
In deze tutorial leer je-
- Wat is OAT (Orthogonal Array Testing)?
- Waarom OAT (Orthogonal Array Testing)?
- Hoe OAT's wordt weergegeven
- Hoe orthogonale array-tests te doen: voorbeelden
- OAT's voordelen
- OAT Nadelen
- Fouten of fouten tijdens het uitvoeren van OAT
Waarom OAT (Orthogonal Array Testing)?
In het huidige scenario is het leveren van een kwaliteitssoftwareproduct aan de klant een uitdaging geworden vanwege de complexiteit van de code.
In de conventionele methode bevatten testsuites testcases die zijn afgeleid van alle combinaties van invoerwaarden en randvoorwaarden. Als gevolg hiervan moet n aantal testgevallen worden gedekt.
Maar in een echt scenario zullen de testers niet de tijd hebben om alle testcases uit te voeren om de defecten aan het licht te brengen, aangezien er andere processen zijn, zoals documentatie, suggesties en feedback van de klant waarmee tijdens de test rekening moet worden gehouden. testfase.
Daarom wilden de testmanagers het aantal en de kwaliteit van de testcases optimaliseren om met minimale inspanning een maximale testdekking te garanderen. Deze inspanning wordt Test Case Optimization genoemd.
- Systematische en statistische manier om paarsgewijze interacties te testen
- Interacties en integratiepunten zijn een belangrijke bron van defecten.
- Voer een goed gedefinieerde, beknopte testcases uit die waarschijnlijk de meeste (niet alle) bugs zullen ontdekken.
- Orthogonale benadering garandeert de paarsgewijze dekking van alle variabelen.
Hoe OAT's wordt weergegeven
De formule om OAT te berekenen
- Runs (N) - Aantal rijen in de array, wat zich vertaalt in een aantal testcases die worden gegenereerd.
- Factoren (K) - Aantal kolommen in de array, wat zich vertaalt in een maximaal aantal variabelen dat kan worden afgehandeld.
- Niveaus (V) - Maximaal aantal waarden dat op een enkele factor kan worden gebruikt.
Een enkele factor heeft 2 tot 3 ingangen om te testen. Dat maximale aantal ingangen bepaalt de niveaus.
Hoe orthogonale array-tests te doen: voorbeelden
- Identificeer de onafhankelijke variabele voor het scenario.
- Zoek de kleinste array met het aantal runs.
- Wijs de factoren toe aan de array.
- Kies de waarden voor eventuele "overgebleven" niveaus.
- Transcribeer de runs in testcases en voeg eventuele bijzonder verdachte combinaties toe die niet worden gegenereerd.
voorbeeld 1
Een webpagina heeft drie verschillende secties (boven, midden, onder) die afzonderlijk kunnen worden weergegeven of verborgen voor een gebruiker
- Aantal factoren = 3 (boven, midden, onder)
- Aantal niveaus (zichtbaarheid) = 2 (verborgen of weergegeven)
- Type array = L4 (23)
(4 is het aantal runs dat is binnengekomen na het maken van de OAT-array)
Als we voor conventionele testtechnieken gaan, hebben we testcases nodig zoals 2 x 3 = 6 testcases
Testgevallen | Scenario's | Waarden om te testen |
---|---|---|
Test # 1 | VERBORGEN | Top |
Test # 2 | GETOOND | Top |
Test # 3 | VERBORGEN | Bodem |
Test # 4 | GETOOND | Bodem |
Test # 5 | VERBORGEN | Midden |
Test # 6 | GETOOND | Midden |
Als we voor OAT-testen gaan, hebben we 4 testcases nodig, zoals hieronder weergegeven:
Testgevallen | TOP | Midden | Bodem |
---|---|---|---|
Test # 1 | Verborgen | Verborgen | Verborgen |
Test # 2 | Verborgen | Zichtbaar | Zichtbaar |
Test # 3 | Zichtbaar | Verborgen | Zichtbaar |
Test # 4 | Zichtbaar | Zichtbaar | Verborgen |
Voorbeeld 2:
De functionaliteit van een microprocessor moet worden getest:
- Temperatuur: 100C, 150C en 200C.
- Druk: 2 psi, 5 psi en 8 psi
- Dopingbedrag: 4%, 6% en 8%
- Afzettingssnelheid: 0,1 mg / s, 0,2 mg / s en 0,3 mg / s
Door de conventionele methode te gebruiken, hebben we = 81 testcases nodig om alle inputs te dekken. Laten we werken met de OATS-methode:
Aantal factoren = 4 (temperatuur, druk, dopinghoeveelheid en afzettingssnelheid)
Niveaus = 3 niveaus per factor (temperatuur heeft 3 niveaus - 100C, 150C en 200C en ook andere factoren hebben niveaus)
Maak een array zoals hieronder:
1. Kolommen met het aantal factoren
Testgeval # | Temperatuur | Druk | Dopingbedrag | Afzettingssnelheid |
---|---|---|---|---|
2. Voer het aantal rijen in dat gelijk is aan niveaus per factor. dwz temperatuur heeft 3 niveaus. Voeg daarom 3 rijen in voor elk niveau voor temperatuur,
Testgeval # | Temperatuur | Druk | Dopingbedrag | Afzettingssnelheid |
---|---|---|---|---|
1 | 100C | |||
2 | 100C | |||
3 | 100C | |||
4 | 150C | |||
5 | 150C | |||
6 | 150C | |||
7 | 200C | |||
8 | 200C | |||
9 | 200C |
3. Splits nu de druk, de doteringshoeveelheid en de afzettingssnelheden op in de kolommen.
Bijvoorbeeld: voer 2 psi in bij temperaturen van 100 ° C, 150 ° C en 200 ° C en voer eveneens een dopinghoeveelheid van 4% in voor 100 ° C, 150 ° C en 200 ° C enzovoort.
Testgeval # | Temperatuur | Druk | Dopingbedrag | Afzettingssnelheid |
---|---|---|---|---|
1 | 100C | 2 psi | 4% | 0,1 mg / s |
2 | 100C | 5 psi | 6% | 0,2 mg / s |
3 | 100C | 8 psi | 8% | 0,3 mg / s |
4 | 150C | 2 psi | 4% | 0,1 mg / s |
5 | 150C | 5 psi | 6% | 0,2 mg / s |
6 | 150C | 8 psi | 8% | 0,3 mg / s |
7 | 200C | 2 psi | 4% | 0,1 mg / s |
8 | 200C | 5 psi | 6% | 0,2 mg / s |
9 | 200C | 8 psi | 8% | 0,3 mg / s |
Daarom hebben we in OA 9 testcases nodig om te dekken.
OAT-voordelen
- Garandeert het testen van de paarsgewijze combinaties van alle geselecteerde variabelen.
- Vermindert het aantal testgevallen
- Creëert minder testcases die het testen van alle combinaties van alle variabelen omvatten.
- Een complexe combinatie van de variabelen is mogelijk.
- Is eenvoudiger te genereren en minder foutgevoelig dan met de hand gemaakte testsets.
- Het is handig voor integratietests.
- Het verbetert de productiviteit dankzij kortere testcycli en testtijden.
OAT Nadelen
- Naarmate de gegevensinvoer toeneemt, neemt de complexiteit van de testcase toe. Als gevolg hiervan neemt de handmatige inspanning en de bestede tijd toe. Daarom moeten de testers voor Automation Testing gaan.
- Handig voor het testen van integratietesten van softwarecomponenten.
Fouten of fouten tijdens het uitvoeren van OAT
- De testinspanning mag niet gericht zijn op het verkeerde gebied van de applicatie.
- Kies niet de verkeerde parameters om te combineren
- Gebruik geen orthogonale array-tests voor minimale testinspanningen.
- Handmatig orthogonale array-tests toepassen
- Orthogonale array-tests toepassen voor toepassingen met een hoog risico
Gevolgtrekking:
Hier hebben we gezien hoe OAT (Orthogonal Array Testing) kan worden gebruikt om de testinspanningen te verminderen en hoe testcase-optimalisatie kan worden bereikt.
Dit artikel is bijgedragen door Madhumitha.