Estratto del documento

appuntiDiIngegneria

Testing

Argomenti: Verifica e Validazione, Black Box, White

Box e Grey Box testing, Test di Unità, Test di

Integrazione, Test di Accettazione e Validazione, Test

di Sistema, Test di regressione, Test Strutturale e

Funzionale, Test di Robustezza 1

1.1. Testing

Il Testing è qualcosa che inizia ancora prima di vincere una gara per un progetto e continua finché

il SW non viene dismesso. Il termine Testing è legato al SW ma per sistemi complessi si parla di

verifica e validazione V&V:

o Validazione: si riferisce ai requisiti informali di utente, si occupa di esaminare se il sistema

risolve il problema applicativo per cui è stato prodotto, cioè di dimostrare all’utente che il

prodotto fa quello che egli si aspettava. Sarebbe ciò che in altri contesti è chiamato

collaudo, si fa insieme al cliente;

o Verifica: si occupa di stabilire se il SW è corretto rispetto alle specifiche dell’analista, cioè

rispetto ai diagrammi UML o ai documenti di progetto.

Per effettuare la verifica occorrono 2 tecniche: Analisi e Testing:

 Analisi: non verifica il singolo stato del sistema, ma che una singola proprietà sia garantita

in tutti i possibili stati (es: una variabile x non deve essere mai < 0 in tutta l’esecuzione).

L’analisi consiste nella valutazione di una proprietà su tutto lo spazio di stato. Siccome

vengono coperti tutti gli stati è più costoso ed efficiente del Testing, per cui lo si applica

solo laddove ci sono delle criticità. L’analisi può essere statica se viene ispezionato il codice

o il progetto, o dinamica se viene esaminata l’esecuzione del programma;

 Testing: è puntuale rispetto all’analisi, cioè deve verificare che dato un input preciso il

sistema dia un output preciso, cioè che il sistema si porti allo stato finale che atteso. Il

Testing permette di rilevare dei fault ma non è esaustivo, se un test case dà errore non è

indicativo della qualità del SW, un test case che dà pochi errori potrebbe essere inefficace.

Quindi facendo n test individuali (che richiedono l’esecuzione del codice), sarà esaminato il

sistema in n possibili stati, più test vengono fatti e più stati saranno coperti, tuttavia non

sarà mai possibile coprire tutti gli stati. È apparentemente meno costoso dell’analisi ma

meno efficiente, perché se ad un certo punto si decide di fermarsi lo si può fare

tranquillamente, quanto si và avanti con il Testing dipende da quanto l’azienda ha deciso di

pagare per il Testing.

Diamo alcune definizioni:

o Il Testing è un processo di esecuzione del SW allo scopo di rilevare i failure, mentre il

Debugging è un processo che parte dal failure (cioè dall’output del Testing), ed ha come

scopo di risalire al fault che ha generato quel failure.

o Test case è un caso di prova del test, cioè l’insieme di input e condizioni di esecuzione con

il quale eseguiamo un singolo test. Invece la Test Suite è l’insieme dei casi di test, per

essere buono deve avere al suo interno almeno un test case che riesce a rilevare un failure

del sistema. Nei test case devo specificare anche l’Oracolo, cioè la descrizione del

2

comportamento atteso del programma, perché devo osservare se il comportamento

osservato coincide con quello atteso;

o Dijkstra nella sua tesi di laurea dimostrò matematicamente che il Testing non può mai

dimostrare l’assenza di difetti, ma solo la loro presenza, qualsiasi sia la tecnica che

useremo. Perciò non posso certificare il SW se non ho u

Anteprima
Vedrai una selezione di 3 pagine su 7
Testing Sotware Pag. 1 Testing Sotware Pag. 2
Anteprima di 3 pagg. su 7.
Scarica il documento per vederlo tutto.
Testing Sotware Pag. 6
1 su 7
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher appuntiDiIngegneria94 di informazioni apprese con la frequenza delle lezioni di Ingegneria del Software e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli studi della Campania "Luigi Vanvitelli" o del prof Ficco Massimo.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community