Computeren, Software
Methode vum Testen Software an vergläichen hinnen. Testen Method vun "schwaarz Box" Testen an der Method vum "wäiss Box"
Testen Software (stellare) z'identifizéieren thematiséieren, Defiziter a Feeler am Code datt gin Adress brauchen. Et kann och de Prozess vun Evaluéieren der Funktionalitéit an Richtegkeet vun der Software mat der Hëllef vun der Analyse definéiert ginn. Basis Methode vun Integratioun an Fahrt vu Software Uwendungen a garantéieren Qualitéit ass de Spezifizéierung, Design an coding, Zouverlässegkeet Foussgänger, publizéieren an kënnen ze Test.
Methode
D'Haaptrei Zweck vun Software Testen - Bestätegung vun der Qualitéit vun Software System duerch systematesch Debugging Uwendungen ënner virsiichteg kontrolléiert haten Konditiounen hir Vollständegkeet a Genauegkeet, wéi och d'Detectioun vun verstoppt Feeler ze bestëmmen.
De Methode vun kënnen (Testen) Programmer kann an statesch an dynamesch ënnerdeelt ginn.
Der fréierer och informelle, Iwwerwachung an technesch Iwwerpréiwung, Inspektioun, Schrëtt fir Schrëtt Analyse, Auditen, wéi och statesch Daten Flux Analyse an Gestioun.
Dynamic Techniken sinn:
- White Këscht Testen. Dëst ass eng detailléiert Etude vun der intern Logik a Struktur vun der Programm. Et ass néideg fir Wëssen vun der Source Code.
- Black Box Testen. Dës Technik brauchen net all Wëssen iwwert d'Aarbecht vun der Applikatioun. Mir betruecht nëmmen déi elementar Aspekter vum System, net am Zesummenhang mat oder mat e puer vu senge intern logesch Struktur assoziéiert.
- Gro Box Method. Si kombinéiert zwee virdrun Approche. Debugging mat limitéiert Wëssen vun der intern Fonctionnement vun der Applikatioun ass mat Wëssen vun der Basis Aspekter vun de System kombinéiert.
transparent Testen
Déi wäiss Këscht Method benotzt Test Scripten Kontroll Struktur vun der procédural Design. Dës Technik erlaabt vun analyséiert en Deel vun der Aarbecht vun der Software Ëmsetzung Feeler, wéi schlecht Gestioun Code System ze opzeweisen. Dës Test Methoden uwendbar fir d'Integratioun, Modul a System Niveauen. D'tester mussen Zougang zu der Source Code hunn a benotzen et inappropriately déi Eenheet ze fannen eraus doruechter.
Testen Programmer vun wäiss-Box huet folgend Virdeeler:
- Et erlaabt vun Stoppen onnéideg Linnen en Fehler am verstoppt Code ze entdecken;
- der Notzung vun Säit-Effekter;
- maximal duerginn ass duerch Schreiwen engem Test Schrëft erreecht.
Nodeeler:
- héich-Käschten Prozess, Retouchen kompetente Debugger;
- vill Avenuen bleiwen onerfuerschten well grëndlech kuckt vun all méiglech verstoppt Feeler ganz komplex ass;
- e puer vun de Code gëtt begeeschteren den ginn.
White Këscht Testen ass heiansdo Éieren vun engem transparent oder oppen Këscht Testen, strukturell, logesch Testen, baséiert op der Source Code, a Logik Architektur.
D'Haaptrei Zorten:
1) Testen de Flux Kontroll - strukturell Strategie Programm Kontroll Flux Modell mat an als méi einfach Weeër ze manner méi komplex Ëmtausch;
2) D'Agence ass entworf all Méiglechkeet ze studéieren Debugging (richteg oder falsch) vun all Kontroll Bedreiwer, deen och eng kombinéiert Léisung gehéieren;
3) Testen vun der Haaptrei Wee, deen d'tester erlaabt fir Isoléierschaum engem huel Formatioun vun Ausféierung Weeër logesch Komplexitéit Moossnam procédural Projet gedoe;
4) Check der Daten bäiginn - de Flux Kontroll Strategie vu Recherche vun der configuréieren Informatiounen iwwert d'Reklamm Grof an de Programm Verännerlechen benotzen;
5) kreesleef vun Testen - voll do op déi richteg Operatioun vun cyclic Prozesser.
Verhale Debugging
Black Box Testen Schneekereien der Software als "schwaarz Box" - Informatiounen iwwert d'Aarbecht vun de Programm sinn net gezielt, an als eenzeg déi fundamental Aspekter vun de System. An dësem Fall, brauch d'tester de System Architektur ouni Zougang zu der Source Code wëssen.
Virdeeler vun dëser Approche:
- Effizienz fir grouss Code Segment;
- Liichtegkeet vun Perceptioun tester;
- Benotzer Perspektiv ass aus dem Entwéckler Perspektiven (Programméierer an tester sinn onofhängeg vun all aner) kloer getrennt;
- méi rapid Kreatioun vun Test.
Testen Software schwaarz Këscht Method huet den folgenden Nodeeler:
- jo gesuergt engem wielt Zuel vun Test Fäll, an limitéiert duerginn doraus;
- opgepasst eng kloer Spezifizéierung schwéier Test Scripten ze entwéckelen;
- niddereg Effizienz.
Aner Nimm fir dës Technik - Verhale, Net-transparent, funktionell Testen an Debugging Method vun engem zougemaach Linn drécke misst.
Dës Kategorie kann de folgende Software Testen Techniken och:
1) gläichwäerteg ze Partitur, déi der Formatioun vun Test Daten reduzéieren kann als Input Software Modul Daten ass an getrennten Deeler gebrach erof;
2) Grenz Wäert Analyse axéiert op d'Kontrollen vun Grenze oder extrem limitéiert Wäerter - de Mindestloun, maximal, an typesch Wäerter vun Feeler;
3) fuzzing - benotzt fir der Sich Ëmsetzen vun Feeler oder hues Daten poluiskazhennyh an automatesch oder semi-automatesch Modus Daten;
4) zielt vun causality - eng Technik baséiert op der Schafung vun Grafike an Bestëmmung vun der Relatioun tëscht der Aktioun a seng Grënn: Identitéit, Negatioun, logesch ODER a logesch AN - déi véier Haaptgrënn Personnagen, ausdrécken der Relatioun tëscht Ursaach an Effekt;
5) Préifen vun orthogonal flamenden Ofgrond applizéiert zu Problemer mat enger relativ klenger Input Beräich d'Méiglechkeet vun ustrengend Fuerschung Iwwerschreiden;
6) Testen all Puer - eng Technik wou eng Formatioun vun Test Wäerter all méiglech Duebelstäresystem Kombinatioune vun all hien huet misse vum Input Parameteren regruppéiert;
7) Debugging Staat Transitioun - eng Technik nëtzlech fir de Status vun der Maschinn Check, wéi och duerch d'zu navigéiert GUI Benotzer.
Black Box Testen: Beispiller
schwaarz-Këscht Technik ass op de Spezifikatioune baséiert, Dokumentatioun, an Beschreiwunge vun der Software Interface oder System. Zousätzlech, kënnt Dir Modeller (formell oder informelle) benotzt, déi erwaart Behuele vun der Software representéiert.
Typesch, ass dës Method fir Debugging User Interface benotzt a verlaangt Interaktioun mat der Applikatioun vun enger Daten Kollektioun a Resultater Aféierung - vum Écran, aus de Rapporten oder Ausdréck.
D'tester, also, openee mat der Software vun Daten, déi op der Wiesselt handele, Knäppercher oder aneren hëllefen. Tromp vun Input Daten, kann d'Commande vun Administratioun oder Haaptrei vun Aktiounen zu engem grousse Ganzen Zuel vun Kombinatioune nodeems wéi am folgenden Beispill gewisen.
Wéivill Tester brauchen fir ze maachen all méiglech Wäerter fir déi 4 Fënsteren Fändel ze kontrolléieren an eent-ugefaangen Terrain, Formatioun der Zäit zu Sekonnen? Um éischte Vue Berechnung ass einfach: 4 Felder mat zwee méiglech Staaten - 24 = 16, déi duerch d'Zuel vun de méigleche Positiounen vun 00 bis 99, i.e. 1600 méiglechen Test'er Raum ze ginn muss.
Allerdéngs ass dat Berechnung falsch: mir kënnen festzestellen, datt déi zwee-Punkt Terrain och e Raum enthalen kann, heescht et vun zwee alphanumeric Positiounen besteet a kann alphanumeric Personnagen och, speziell Personnagen, Plazen, etc. Sou, wann .... System ass eng 16-bëssen Computer béid 216 = 65536 eent fir all Positioun am entstoent 4294967296 Test Fäll dass vun 16 Kombinatioune vun Fändelen Raum ze sinn ginn datt am Ganzen 68.719.476 736. gëtt Wann se Leeschtunge um 1 Test pro zweet, den Total cont olzhitelnost Testen ass 2 177.5 Joer. Fir 32 oder 64-bëssen Systemer, d'Dauer nach méi.
Dofir do ass e brauchen dës Period op eng akzeptabel Niveau ze reduzéieren. Also, sollen d'Techniken applizéiert ginn d'Zuel vun Test Fäll ze reduzéieren, ouni de Kader vum Testen reduzéieren.
Relatioun tëschent der Raumopdeelung
Der zoustänneger Partitur ass eng einfach Method, datt fir all Verännerlechen applicabel ass, dass an der Software präsent sinn, ob Input oder Wasserstoff Wäerter, symbolesch, da stellt, an anerer. Et iwwert de Prinzip baséiert ass, dass all d'Donnéeë vu ee géigeniwwer vun der Partitur gëtt déi selwecht Aart a Weis an déi behandelt ginn selwecht kritt.
Während Testen, ausgewielt ee Vertrieder vun all besonnesch Relatioun Partitur. Dëst erlaabt Iech ze systematesch d'Zuel vun méiglech Test Fäll ouni Verloscht vun duerginn vun commandéiert an Funktiounen reduzéieren.
Aner Konsequenz vun dësem Raumopdeelung ass de combinatorial Explosioun tëscht de verschiddene Verännerlechen an der verbonne Reduktioun vun Test Fäll ze reduzéieren.
Zum Beispill, an (1 / x) 1/2 mat dräi Donnéeën e Message, dräi gläichwäerteg Partitur:
1. All positiv Zuelen gëtt an déi selwecht Aart a Weis behandelt ginn a soll richteg Resultater ginn.
2. All negativ Zuelen sinn an déi selwecht Art a Weis mat de selwechte Resultat déviéiert. Dat ass falsch, well d'Wuerzel vun enger negativer Zuel imaginär ass.
3. Zero ginn getrennt a ginn de Fehler "Divisioun vun null" déviéiert. Dëst ass eng Rubrik mat engem eenzege Wäert.
Sou, gesinn mir dräi verschidde Sektiounen, ee vun deenen zu engem eenzege Wäert reduzéiert ass. Et ass eng "richteg" Rubrik, déi verléisslech Resultater gëtt, an zwee "falsch" mat Guichet Resultater.
Grenz Wäert Analyse
Veraarbechtung op de Grenze vun der zoustänneger Raumopdeelung kënnen anescht gemaach ginn ewéi erwaart. Enquête vun Limite Wäerter - eng gutt-bekannt Method vun der Behuele vun der Software an esou Beräicher analyséiert. Dës Technik mécht et méiglech esou Feeler ze identifizéieren:
- Messstänn Gebrauch vun relational Opérateuren (<,>, =, ≠, ≥, ≤);
- eenzege Feeler;
- Problemer zu Monaco a Ben huet
- falsch Zorte oder Gréisst vun Verännerlechen fir raumen Informatiounen benotzt;
- kënschtlech Aschränkungen verbonne mat Daten Zorte an Verännerlechen.
translucent Testen
gro Box Method geet den Test duerginn, kënnt dir op all de schwéier Niveau vun de System duerch eng Kombinatioun vu schwaarz a wäiss Techniken duerchbriechen.
Mat dëser Technik, soll d'tester fir d'Entwécklung vun Test Wäerter hunn Wëssen vun intern Daten Strukturen an algorithms. Beispiller vun gro-Këscht Testen Methode sinn wéi follegt:
- architektonescht Modell;
- Vereenegt mosselen Sprooch (UML);
- Staat Modell (Haapt Staat Maschinn).
An der Method vun der gro Box Test Fäll ze entwéckelen studéiert Moduler am wäissen Déifbau Coden, an Test ass op der Schnëttplazen vun der schwaarz Technologie Programmer gesuergt.
Dës Testen Methoden hunn déi folgend Virdeeler:
- Kombinatioun vun Virdeeler Techniker wäiss an schwaarz Këschte;
- Tester baséiert op der Interface a funktionell Spezifizéierung, an net d'Source Code;
- Debugger kann groussen Test Fäll maachen;
- kontrolléieren ass aus der Siicht vun de Benotzer, net d'Designer vun der Programm gemaach;
- schafen Mooss Test Entwécklung;
- wollt léiwer.
Nodeeler:
- Test duerginn ass limitéiert well et keen Zougank zu der Source Code ass;
- der Komplexitéit vun der Mängel an verdeelt Uwendungen;
- vill Manéiere bleiwen onerfuerschten;
- wann d'Software- Entwéckler den Test lancéiert huet, da weider Enquête kann iwwerdriwwe ginn.
Aneren Numm fir déi gro Këschtchen Techniken - translucent Debugging.
Dës Kategorie gehéieren sou Methoden vun Testen:
1) orthogonal vill - de Gebrauch vun engem Ziel vun all méiglech Kombinatioune;
2) Matrixentgasung Debugging de Staat vun der Programm Daten benotzt;
3) regressive Inspektioun an der neier Ännerung vun der Software gehaal;
4) Skelett Test datt den Design an Architektur vun enger gutt Applikatioun analyséiert.
Verglach vu Software Testen Techniken
D'Benotzung vun dynamesch Methoden féiert zu engem combinatorial Explosioun vun der Zuel vun Tester, déi aus entwéckelt, ëmgesat an duerchgefouert muss ginn. All Technik soll pragmatesch benotzt ginn, huelen hir Aschränkungen Rechnung.
Déi eenzeg richteg Method gëtt et net, ass et déi eenzeg, déi besser un déi spezifesch Kontext ugepasst sinn. Strukturell Déifbau erlaben eis e Schiermer oder béisaarteg Code ze fannen, mä si komplex a sinn ze grouss Programmer net benotzbar. Methode baséiert op de Spezifikatioune - déi eenzeg déi dat kënnen si d'vermësst Code ze identifizéieren, mä se kann net en heieren z'identifizéieren. Puer Techniken si méi gëeegent fir eng bestëmmte Test Niveau, Feeler Typ oder Kontext wéi anerer.
Drënner sinn d'Haaptgrënn Differenzen tëscht den dräi dynamesch Testen Techniken - e Verglach Dësch tëscht den dräi Forme vun Debugging Software ginn ass.
Aspekt | Déi schwaarz Këscht Method | Gro Box Method | Wäiss-Këscht Method |
Disponibilitéit vun Informatiounen iwwert d'Zesummesetzung vun der Programm | Wullt nëmmen d'Basis Aspekter vun | Partiell Wëssen iwwer d'intern Struktur vun de Programm | Voll Zougang zu der Source Code |
Ofschloss vun véiermol vum Programm | niddreg | Zentralbank | héich |
Wien produzéiert Debugging? | Enn Benotzer, gedopt an Entwéckler | Enn Benotzer, Entwéckler an debuggers | Entwéckler an gedopt |
huel | Testen ass op den externen Noutsituatiounen baséiert. | Diagrammer Datebank, Daten Flux Diagrammer, Staat intern Wëssen vun der Algorithmus an Architektur | Déi intern Apparat ass voll bewosst |
D'Ausmooss vun duerginn | Manner ëmfaassend an engem Minimum vun Zäit verlaangt | Zentralbank | Potentiel déi iwwergräifend. Zäit-Konsuméiere |
Daten an intern Grenzen | Debug nëmmen duerch Prozess an Feeler |
Kann de Daten Beräicher an intern Grenzen iwwerpréift ginn, wa se bekannt ginn | Déi bescht Test Daten Beräicher an intern Grenzen |
Suitability Testen Algorithmus | nee | nee | Jo |
Bekannte
Automatesch Methoden vu Software Testen ass einfach vill Prozess vun Inspektioun, onofhängeg vun der technesch Ëmwelt an de Kontext vun der. Si sinn an zwee Fäll benotzt:
1) de tedious, repetitive oder unzeleeën Aufgaben wéi Fichier Verglach zu e puer dausend Zeile fir ze automatiséieren Zäit fir Konzentratioun vun der tester méi wichteg Punkten ze release;
2) fir leeschtungsfäheg Tracking oder Aufgaben dass net einfach vun Leit wéi performant kënnen oder Analyse Äntwert Zäit gesuergt ginn, datt an nach d vun enger zweeter gemooss ginn.
Test Handwierksgeschir kann op verschidde Manéiere séiert ginn. Déi nächst Divisioun ass op der Aufgaben baséiert se ënnerstëtzen:
- Test Gestioun, déi Projet Gestioun ënnerstëtzen, Versiounen, Konstellatioun, Risiko Analyse, Test Tracking, Feeler, Mängel, an deemno Handwierksgeschir gehéieren;
- Ufuerderunge Gestioun, déi Stockage Ufuerderunge an Spezifikatioune ëmfaasst, kucken se fir Vollständegkeet a gewëssen Zuel, hir Prioritéit an d'Entstoe vun all Test;
- kritiséiert an statesch Analyse, Flux Iwwerwachung dorënner, an Aufgaben, Enregistrements- an Stockage vun Kommentaren, Mängel Detectioun an geplangt Verbesserungen Gestioun Linken op checklists a Regelen, Kommunikatioun Quell Dokumenter an Code statesch Analyse Tracking Mängel ze entdecken, mat de Standarden vun Schreiwen Code assuréieren Anhale, Analyse vu Strukturen an dependencies, Berechnung vun der Tonne Parameteren vum Code an Architektur. Zousätzlech, benotzen compilers, Stroossen, Generatoren a Relatiounen vun Kräiz-Referenze;
- haut kennt, déi Instrumenter fir haut kennt Affär gelooss an Test de Modeller gehéieren;
- Test Entwécklung garantéiert der Generatioun vun Donnéeën op der Basis vun Konditiounen an Benotzer Interface Modeller a Code erwaart, verwalten Fichieren an Datenbanken, Messagerie, Daten Confirmatioun op der Basis vun de Regele vun Gestioun, statistesch Analyse vun de Konditiounen a Risiken ze schafen oder änneren;
- enger kritescher Vue vun den Daten duerch e grapheschen Interface Benotzer, API, Kommando Linn Begoe comparators mat Erfolleg an Mëssgléckt Tester ze hëllefen z'identifizéieren;
- Ënnerstëtzung Debugging Ëmwelt dass Dir de vermësst Hardware oder Software, an färdeg ze schounen erlaabt. h. Simulatiouns Equipement baséiert op der alles Wasserstoff Ziel, Opluedstatioun emulators, Handyen a Reseau Equipement, d'Ëmwelt fir Sproochen, Betribssystemer a Check Hardware vum vermësst Komponente Chauffer z'ersetzen, Konten awer Moduler, etc., wéi och Instrumenter fir aus an der OS verbidden Demanden der CPU Simulatioun begrenzten Dauer, RAM, Rom, oder Reseau .;
- .. A Verglach vun Daten Fichieren, Datenbanken, kontrolléiert d'erwaart Resultater während an no der Test ass komplett, inkl dynamesch an Konte gefouert Verglach, Automatesch "Oracles";
- Moosse kann een fir d'Lokalisatioun vun Erënnerung Rëss an Guichet hir Kontroll gelooss ënner surfen opbauen generéieren opbauen Uwendungen, Datenbanken, Netzwierker oder Serveren an engem realistesch Szenario vun Wuesstem fir Moosse, Analyse an Kontrollen vun System Ressourcen Rapport estimating System;
- Sécherheet;
- Leeschtung Testen, opbauen an dynamesch Analyse;
- aner Instrumenter, an färdeg. h. d 'Schreifweis a Siwebiergen, ze kontrolléieren Reseau Sécherheet, d'Disponibilitéit vun all Site Säiten an aner.
Perspektiv
Mat dem Zaïtgeescht Trends an der Software Industrie, ass de Prozess vun Debugging och ofzesécheren Sujet. Et ginn nei Methode vun Software Testen, wéi e Service-orientirovannae Architektur (SOA), ouni Kabel Technologien, Handy Servicer, a sou op. E., Hutt nei Weeër vun Testen Software opgemaach huet. Verschiddener vun den Ännerungen déi an der Industrie iwwer déi nächst puer Joer erwaart gi sinn heiënnen opgezielt:
- gedopt gëtt eng liicht Modell fir datt Entwéckler wäert kënnen Äre Code ze kontrolléieren;
- Entwécklung vun Testen Methoden, dorënner ukuckt a Programmer op eng fréi Etapp haut kennt, wäert vill vun der contradictions Mietsgesetz;
- Präsenz vun MÉI interceptions Test gëtt der Zäit vun Fehler erkennen kuerz;
- Statesch Organer an erkennen heescht méi oft benotzt gin;
- der Notzung vun Quelle matrices, wéi duerginn vun der Spezifizéierung, d'Ausmooss vum Modell a Code duerginn wäert der Entwécklung vu Projeten bestëmmen;
- combinatorial Handwierksgeschir erlaben gedopt d'Prioritéit Beräicher fir Debugging ze bestëmmen;
- gedopt gëtt eng méi maniabel a wäertvoll Servicer uechter d'Software Entwécklung Prozess gëtt;
- debuggers kann Geschir a Software Testen Methoden geschriwwen an a proposéiert mat enger Rei vun programméiere Sproochen schafen;
- Debugging Experten wäert méi professionell trainéiert ginn.
Gëtt vun engem neie Betrib-konzentréiert Software Testen Methoden ersat ginn, de Wee vun Interaktioun mat der Systemer ze änneren an d'Informatiounen déi si während Risiken reduzéieren an d'Virdeeler vun der Entreprise Ännerungen waarden.
Similar articles
Trending Now