TelefoniaPrugrammu

I metudi di prugrammi essai è li parauni. mètudu essai essai "scatula neri" è lu mètudu d "scatula bianco"

Prughjettu software (software) revela fiaschi, difetti è errori in u codice chì deve esse eliminatu. Pò esse ancu definitu cum'è u prucessu di valutà a funziunalità è a curretta di u software cù l'analisi. I mette principale di integrazione è prucessione di i pruduttu di software cumpurevule à a qualità di e appliaggiu è custruite à cuntrollà l'ispecificazioni, u disignu è u còdice, a valutazione di affidabilità, validazione è verificazione.

Metodi

L'obiettivu principali di u prucessu di software hè di cunfirmà a qualità di u prugramma di software per esse di scrupulebilamenti sottu scuperte applicazioni sottu cuncordatu currettamente cuncorsi, determinendu a so cumpletamente è a currettezza, è ancu dettagli errore hidden.

I metudi per i prucessi (prucessi) i prugrammi pò esse divisu in staticu è dinamica.

U primu include scuperte informale, di cuntrollu è tècnicu, scuperta, analisi passu à passu, verificazione, è l'analisi stataticu di u flussu di dati è a gestione.

I tecnichi dinamichi sò dinò:

  1. Pruduzzioni bianchissima. Questu hè un studiu dilettatu di a lògica interna è a struttura di u prugramma. Hè bisognu di cunniscenza di u còdice fonte.
  2. Prucessu di cascia negra. Sta tecnica ùn deve micca bisognu di cunniscenza di l'operazione interna di l'appiecu. Semu cunsidereghja solu l'aspettu principalu di u sistema chì ùn sò micca rilativi o pocu ligatu cù a so struttura logica interna.
  3. U metudu di a casella grisa. Combina l'avantaghji dui avantaghji. A depuggitura cun cunniscenza limitata di u funziunamentu internu di l'appiecu hè assuciatu cù cunniscenza di l'aspettu baschi di u sistema.

Pruvenzii trasparenti

U metudu di casu biancu usa l'urganisazione di teste per l'estruttura di cuntrollu di u prughjettu tramurale. Sta tècnica permette di identità l'errore di implementazione, cum'è a gestione di u codice impurtante, analizà l'internu di una pezzu di software. Queste prucessu mètudi appieghjanu à l'intrattenimentu, modulari è sistemu. U testaturi devi avè accessu à u còdice fonte è, usendu, scopri chì u bloque hè cumportatu in una manera impurtante.

Programmi testi cù u metudu di casu biancu tenenu e seguenti vantaghji:

  • Pè permette di dette un errore in u codice sceltu quandu sguassate fili innevativi;
  • A pussibilità di usà effetti effetti;
  • A cobertura massima si ponu scritta un scopu di teste.

I disgrazia:

  • Un prucessu d'altru qualità chì deve bisognu di u debugger qualificatu;
  • Parechje camini ùn sianu senza scuperte, postu chì un cuntrollu minuzia di tutti i pussibbili azzioni ammiati hè assai cumplicata;
  • Unipo di u codice manicheghjanu passà in casu nicu.

Pruduzzioni bianchina à casu hè adupirata ancu chjamata prucessa di casu transparente o aperta, pruduzioni strutturale, logica, provi basta à a basa, architettura è lòggica.

I varietà principali sò:

1) l 'assicuranza di cuntrollu di flussu hè una struttura strutturale chì usa u prugramma di cuntrollu di u prugramma cum'è un mudellu è dà preferenza à i camini più simplicati nantu à un nummu più nicu di più cumplessi;

2) A purità di debugging hè designatu per esaminà ogni opzione (veru o falu) di ogni operatore di cuntrollu, chì ancu include una solu suluzione cupulatta;

3) Pruvate a strada principale, chì permette à u testatore per stabilisce una misura di a cumplicità lòggica di u prughjettu tramurale per attribuisce un settore basu di e camini d'esekzione;

4) cuntrollà u flussu di dati - a struttura di ricerca di flussu di cuntrollu annuncia u gràficu per infurmazioni nantu à a dichjarazione è l'utilizatori di varià di u prugramma;

5) a prova di i cicli - hè tutta sana à l'eseguzione curretta di i prucessi ciclichi.

A debugging behaviorale

Prucessu in casu negra cunzidira u software da una "casella negra" - a infurmazione nantu à u travagliu internu di u prugramma ùn hè micca cunsideratu, è solu l'aspettu principalu di u sistema sò verificati. In questu casu, u testatu hà bisognu di cunnosce l'architettura di u sistema senza accessu à u còdice fonte.

Avanti di sta strada:

  • Efficiency per un gran segmentu di codice;
  • Simplicità di percepzioni da u testaturi;
  • A perspettiva di l'utilizatori hè chjaramente separata da a perspettiva di u sviluppatore (u programatore è u testatore sò indipendenti da l'altru);
  • Una creazione teste più veloce.

Programmi testi chì utilizanu u metudu di scatula negra tenu i seguenti persequitazioni:

  • In fattu, un sceltu chjave di scuperte testi sò realizati, risurtannu in una cobertura limitata;
  • A mancanza di una spiccificazione chjaru fa difficiuli di sviluppà i scenze di teste;
  • Low efficienza.

L'altri nomi di sta tecnica sò cuntrolli, opaca, prucessa funziunali, è debuggate da u metu box closed.

Sta catigurìa cuntene i seguenti mètudi di pruduzzioni software:

1) particeddi equivalenti, chì ponu reducià u settore di data di teste, perchè e l'input data di u modulu di u prugramma si sò spartuti in pezzi separati;

2) L'analisi cimi si cuncense à verificà e fruntiere o valuri di fruntieri estremi - minima, màxima, valuri errone è tipichi;

3) fuzzing - utilizzatu per truvà infurmazioni d'implementazione per ingressione distorted o semi-disgregated data in u modu automaticu o semi-automaticu;

4) gràfiche di relazioni cause-effect - una tecnica basata nantu à a creazione di graphichi è l'establimentu di una cunnessione entre l'azzione è i so causati: identità, negazione, logica O è logica È sò i quattru simboli basilichi chì esprimenu l'interdipendenza trà a causa è l'effettu;

5) verificazione di arrays ortogonali, appieghjatu à i prublemi cù una spaziu pocu à pocu pressu, chì supira a pussibilità di un studiu exhaustiviu;

6) Prucessioni di tutti i pariglii - Una tecnica chì u settore di i valori di teste includenu tutti i pussibuli cuncreti discretti di ogni paru di paràmetri di ingressu;

7) i transizzioni statali di debugging hè una tecnica utile per verificà a macchina statale, è ancu per navigazione per l' interfaccia gràfica di l'usu .

Pruduzzioni di u Box Black: exempli

A tecnulugia di casu Negru hè basatu nantu à specìfiche, documentazioni, è dinò scritte di l'interfaccia o di u sistema di sistema. In più, ponu utilizà mudeli (formale o informale) chì rapprisente u cumportamentu di u software.

Hè tìpica, stu metu di debugging hè utilizatu per l'interfaces d'usuali è dumandani l'interaccorsi cù l'applicazione intruduce e recullà i risultati - da a pantalla, da relazioni o stampati.

U testatore, in questa manera, interaccetta cù u prugrammu cù l'ingaghjamentu, funziona nantu à i switches, buttoni o altre interfaces. A scelta di l'infurmazioni di data, l'ordine di a so intruduzioni o a secunna di l'azzioni pò guidà à un numaru ghjigantescu tutale di cume, cum'è vistu in l'esempiu di seguente.

Quante pruvedii bisognu à rializà per verificà tutti i valori possi per i 4 casi di scatuli è un campo di dui posti chì specificanu u tempu in sicondi? À u primu sguizzamentu, u calculu hè simplice: 4 campi cù dui stati possibles - 24 = 16, chì deve esse multiplicate da u numeru di pusizzioni pussibbili da l'00 à l'99, quellu hè 1600 prucessi pussibuli.

In ogni modu, stu calculu hè erronimu: pudemu determinà chì u campu di dui pusizzioni pò ancu cuntene un voice, questu, hè cunsistenti di dui pusizioni alfanumèttici è ponu include simboli di l'alfabetu, simboli speciali, spazi, ecc. Per quessa, se U sistema hè un cumpagnu di 16-pocu, aghjustemu 216 = 65.536 varianti per ogni pusizzioni rizultat in 4,294,967,296 casi di teste chì ci vole à multiplicate da 16 combinazioni per i bandieri, chì dà un total de 68,719,476,736.Jekk inti ejecuti À un ritmu di 1 testu per u sicondu, u settore A durazione di testate serà 2 177.5 anni. Per sistemi di 32 o 64-bit, a durazione hè ancu più grande.

Dunque, ci hè bisognu di reducià questu tempu per un valido acceptable. Cusì, i tecniche sò deve esse usatu per riduce u nùmeru di casu di teste senza reduzzione di a cobertura di e teste.

Una particione equivalenti

Partitioning equivalente hè un metudu simplice chì hè appiecatu à qualsiasi variàbili attuale in u software, cumu valutate di input o output, simbulicu, numericu, etc. Hè basatu nantu à u principiu chì tutti i dati di una particione equivalente seranu trattatu da a stessa manera da quelli Stissi indicazioni.

Duranti a prova, un representante hè sceltu per ogni particione equivalente definita. Questu permette di riducerà sistematiche u numuru di prucessi pussibule cuncessu senza perde u scopu di i cumandamenti è funzioni.

Una altra cunseguenza di stu particimentu hè a riduzzione di l'espansione combinatoriu trà e variate variàbili è a reducione in i prucessi in a prova.

Per esempiu, in (1 / x) 1/2 3 sequenze di sequestri di dati si usanu, trè particioni equivalenti:

1. Tutte i numeri pusitivi seranu tramutati da u listessu modu è devenu i risultati correcti.

2. Tutti i numeri negattivi seranu trattati a stessa manera, cù u stessu risultatu. Questu hè micca veru, postu chì a radica di un numaru negativu hè imaginariu.

3. Zero serà prugatu per separatamente è dà un errore "division by zero". Questa hè una retazione cun un valore.

Cusì, vemu trè sizzioni differenti, una di quale hè ridutta à un valore unicu. Ci hè una una sección "curretta", dannu risultati fiable, è dui "sbagliati", cù risultati incorregi.

L 'analisi cunfinanti

U trasfurmazioni di u dati à i frontiere di una particione equivalente pò esse realizatu di manera distinta di l'esperta. U studiu di i valori di u cunferenze hè un modu ben cunnisciutu di analisi di u cumpurtamentu di software in questi spazii. A nostra tecnica permette di identificà iddi errori:

  • U utilizazione ħażia di l'operatore relilale (<,>, =, ≠, ≥, ≤);
  • Semplici erruri;
  • I prublemi in ciclichi è i iterazioni,
  • Tipi incorrecte o dimensione di variàbili utilizati per almacenà l'infurmazioni;
  • Limitazioni artificiali assuciati à e dati è u tipu di variàbili.

Pruduzioni semi-trasparenti

U furmatu di casu grisa aumenta u scopu di a verificazione, chì permettenu di centru in tutti i livelli di un sistema cumplessu cù i tecnichi bianchi è neri.

Aduprà sta tècnica, un testatore per u sviluppu di i valori di a prova deve esse cunniscenze di e struccazzioni internu di dati è l'algoritmi. Esempii di metudi di prucessu per un casu grecu sò:

  • Mudellu architectuali;
  • Unificatu di Modellaje Linguisticu (UML);
  • Mudellu di Statu (finita).

In u metudu di casu grisu per u sviluppu casu di teste, i codici di codice biancu sò stati analizati, è a prupone attuale hè realizatu nantu à l'interfaces di u prugramma tecnulugia negra.

Tali metudi di pruduzzioni anu avutu l'avant vantaghji:

  • Cumpidenza di vantaghji di tecniche di caseddi bianchi è negri;
  • U testatore si basa in l'interfaccia è l'specificazioni funziona, in quantu à u codice fonte;
  • U pruclatu pò creà scripte testi excelente;
  • A verificazione hè fatta da u puntu di vista di l'utilizatori, è micca di u prugrammu di u prugrammu;
  • Creazione di sviluppu di testi apposta;
  • Objettività.

I disgrazia:

  • A Cubertura di testi hè limitata, chì ùn ci hè micca accessu à u còdice fonte;
  • A cumplessità di i detti difetti in l'appruvazioni distribbuti;
  • Parechji maneri ùn sò micca spustate;
  • Se u sustegnu di software hà digià iniziatu a prova, dopu una ricerca maiò pò esse redundant.

Un altru nome per a tècnica di casu grisa hè una debugging semi-trasparenti.

Sta catigurìa includenu i metudi di prucessu:

1) matriciala ortogonale - utilizazione di un settimane di tutti i cummineri pussibuli;

2) matriciala debugging using data statistika di u prugramma;

3) un cuntrollu di regressione realizatu durante l'intruduzioni di novi cambiamenti in u software;

4) una prova di mudellu chì analice u disignu è l'architettura di una soluzione solitaria.

A comparazione di metudi di pruduzzioni di software

L'usu di tutti i metudi dinamichi porta à una splutazione combinatòria di a quantità di prucessi chì deve esse sviluppati, implementati è purtati. Ogni tecnica deve esse usata pragmaticamente, piglià in contu di e so limitazione.

L'unicu modu veru ùn esiste micca, ci sò solu quelli chì sò più adattati per un cuntestu specificu. I tecnicuti strutturali permettenu truvà un còdanu inutile o malizu, ma sò cumpiicati è inapplicabule à i grandi prugrammi. I mètti basati in l'specificazioni sò l'unichi chì anu pussutu identifying the missing code, ma ùn pò micca identificà un strangulu. Certi tecniche sò più adattate per un nivellu di pruduzzioni particulari, cum'è l'errore o u cuntestu, da l'altri.

Questa sottu sò e differenzi principale trà e trè tecnulugia dinamichi di pruvucatoria - dati una tavola di compara trà e trè formi di software di debugging.

Aspettu

U metudu Black Box

Metu Culore grezzo

U metudu di Casma bianca

A dispunibilità di infurmazione nantu à a cumpusizioni di u prugramma

Sò analizati only aspects basic

Cunnizzioni parziale di u prugrammu internu

Acceso completo à u còdice fonte

Grade di fragmentazione di u prugramma

Low

Mediu

Altìssimu

Quale chì faci a debugging?

Ultimi utenti, testatori è sviluppatori

Ultimi utenti, depressivi è sviluppatori

Sviluppatori è testatori

Base

Prucessioni sò basati in situazione autonumia fora.

Diagramma di DB, diagrammi di flussu di dati, stati internas, cunniscenza di l'algoritmu è l'architettura

U arranzu internu hè cunnisciutu solu

Titulu di cobertura

Pè menu escevuli è esige un minimu di tempu

Mediu

Potenzalmentu u più cumpletu. Ci hè parechje persone

Dati è cunfini interni

Depressu simplice per prucessu è errore

Ponu esse verificatu l domini dati e fruntiere interna, si sò cunnisciuti

U megliu domini dati test di e fruntiere interna

algutitimu essai adattazione

No

No

plantes

metudi automatica di essai prugrammu hè assai simplificà lu prucessu di biancu pirmittennu, a priscinniri di l 'ambienti tecnicu è u cuntestu di u. Iddi sunnu usati in dui casi:

1) à automate l 'affari stage, repetitive o travaddu com'è paragunà u schedariu di parechji mila filari in ordine di liberallu tempu di cuncintrazzioni di u linear punti di più impurtante;

2) per davanu duma o affari chì ùn si pò facirmenti svorgi da ghjente cum'è verification curà o tempu risposta analisi chì ponu esse misurata in hundredths di una seconda.

Strumenta testu pò esse classificatu in modu differente. U gruppu dopu hè basatu nantu à l 'affari si pussede:

  • établissement testu, chi include sustegnu sanu gestisce, versioni, cunfigurazioni, castiat cun prìculu, duma testu, sbagli, difetti, è arnesi Reegan;
  • établissement esigenze, chi include esigenze pruvista è di carichi, li cuntrolla di completeness è ambiguità, i so priurità è i traceability di ogni testu;
  • revue de critica e anàlisi fermu, cumpresi surviglianza flussu è fatti, n'hè, è a pruvista di missaghji, dittizzioni kvar è previstu ligami établissement currezzione à checklists e regule, duminiu ducumenti surghjente di cumunicazioni è analisi fermu codice di detect difetti, assicurendu u rispettu incù u mudellu di u corsu scrittu, analisi di strutture è dependencies, calculu di i paràmetri di metrichi di u codice è architettura. In più, aduprà compilers, analyzers, generators e li rilazzioni di cross-referenze;
  • artificiali, chi include arnesi di cumpurtamentu los artificiali è pruvà i mudelli;
  • u sviluppu testu cura i ginirazioni di dati spetta à u mezu di e cundizioni è mudelli interfaccia di me e codice, gestisce à creà o mudificà i schedari è base, messageria, a cunvalidazione di dati nant'à a basa di i reguli di gestione, analisi di statìstiche di i cundizioni è risichi;
  • una vista criticu da lentà i dati à traversu una interfaccia di me, API, linia cumannu gràfica cù comparators à aiutà identificà i testi di successu e happi;
  • ambiente debugging sustegnu chì permette à voi a fari sustituiri la vulcanizing manca, o prugrammi, in Vol. h. usato Simulation basatu supra l 'subset decisa pruduzzioni, emulators tirminali, tilatica mubili è usate reta, l' ambienti di cuntrollà lingue, sistema upirativu e vulcanizing da sustituì u cunduttore cumpunenti manca, fictitious moduli, etc., oltri arnesi di clientella è mudificà u OS cherenu limitazzioni Simulazioni CPU, RAM, ROM, o di a reta .;
  • .. A paraguni di schedari di dati, base, verificà i risultati spetta duranti è dopu à u testu hè cumpleta, incl dinamichi è paragunà mixer, Luca Dirisio "oraculi";
  • lattice misura di l 'localisation di Noter memoria di e sistemu estimating u so cumpurtamentu di cuntrollu sgarratu sottu simulate appiicazioni unità chì dani un carricu, base, rete, o servore, in una situazione modu realistu di crescita di misura, anàlisi è verification di rapportu risorsi sistemu;
  • sicurizza;
  • essai spettaculu, carricu e anàlisi cumuna;
  • arnesi, in Vol. h. à verificà i ortografia è sintassa, di sicurità reta, u dispunibilità di tutte e pagine situ è altri.

pruspittiva

Cù u multilinguismo cambià in la filiera prugrammu, u prucessu di debugging hè dinù sughjettu a canciari. Ci sò novu i metudi di essai prugrammu, cum'è un 'architittura serviziu-orientirovannae (SOA), ticnoluggìa dâ puri, servizii tilatica, è cetara è cetara. E., Ti apertu novi modi di prugrammi essai. Certi di i cambiamenti chì sò sicuru in u nnustria supra lu prossimu picca anni sò élève sottu:

  • testate vi derà un mudellu di metalli chi sviluppori sarà capaci di verificà u vostru còdice;
  • u sviluppu di i metudi, essai, cumpresi inaugurazioni e ppâ prugrammi in un parcu principiu, vi eliminari parechji di i cuntraddizzioni;
  • A prisenza di testu parechje interceptions vi shorten u tempu di dittizzioni errore;
  • calciumbisulfate Static è dittizzioni significa à esse di più anchiamènti usatu;
  • l 'usu di matrices minirali, comu animali di u spicifichi, u duminiu di l'animali mudellu è u corsu hà da definisce u sviluppu di prugetti;
  • Strumenta cumbinatoria permette testate à definisce i spazii priurità di debugging;
  • testate vi derà una servizii di più intuitive è priziosu longu u prucessu di sviluppu prugrammu;
  • debuggers pò creà i mezi è i metudi essai prugrammu scritte in e interazzione incù una varietà di linguagi di prugrammazione;
  • sperti Debugging hà da esse di più pari veru.

Seranu rimpiazzati da una nova metudi essai prugrammu los-orientatu, a canciari lu modu di azioni incù u sistema è i infurmazioni è vuluntarii, mentri riducendu risichi e fa crìsciri la prestazione di i cambiamenti los.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 co.atomiyme.com. Theme powered by WordPress.