Software Testing. Esercizi proposti. Esercizi di Testing 1

Documenti analoghi
INGEGNERIA DEL SOFTWARE

Informatica. Progettazione ed implementazione di un tool per il supporto al debug nella pratica di sviluppo Test Driven

14. Verifica e Validazione

Tecniche di Testing White Box

PIANO DI LAVORO. Programmazione Didattica per Competenze. Indirizzo Informatica e Telecomunicazioni. Articolazione Informatica DOCENTE:

Principi di Progettazione del Software a.a " Introduzione al corso! Prof. Luca Mainetti! Università del Salento!

Fondamenti VBA. Che cos è VBA

Verifica e Validazione del Software

MATERIALI PER LA DISCUSSIONE

Fasi di revisione del progetto

FONDAMENTI DI INFORMATICA II

Principi di Progettazione del Software a.a Introduzione al corso Prof. Luca Mainetti Università del Salento

Programmazione Orientata agli Oggetti

Ingegneria del Software L-A

Correttezza (prima parte)

Ingegneria del Software

Il PROCESSO UNIFICATO

Strumenti per l automazione del testing di applicazioni web Javascript-based

Materiale didattico. Sommario

Programma didattico. Sviluppare Applicazioni Distribuite in ambiente. Spring MVC

Piano dei Test e Collaudo del software Titolo Documento

Dipartimento di INFORMATICA TC - TTRG. Anno Scolastico Piano di Lavoro Disciplinare. INFORMATICA Articolazione: INFORMATICA Classe IV

MANAGEMENT DELLA QUALITA CONTROLLO STATISTICO DELLA QUALITA ORDINAMENTO 509. Prof. Maria Francesca Renzi Prof. Paola Vicard

Stato dell arte sulle tecniche di testing di Sistemi Embedded

PIANO DI LAVORO ANNUALE DELLA DISCIPLINA. Classe 3 ATI A.S. 2015/2016

Ingegneria del Software II

Programmazione di INFORMATICA e Laboratorio

Lo sviluppo del progetto informatico

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011. Benvenuti al Corso!

Fondamenti di Informatica modulo B

Traccia delle soluzioni. Si consideri il seguente enunciato: Spett Ditta,

Introduzione ai casi d uso

Algoritmi e Strutture Dati

Basi di dati I

IL VHDL. Perché si usa un linguaggio di descrizione dell'hardware? Permette di formalizzare il progetto di sistemi digitali complessi

Programmazione ad Oggetti

BASI DI DATI. basi di dati - introduzione ai sistemi informativi 1

Lab 01 Introduzione a Codelite

La tolleranza ai guasti. Concetti generali

13. Verifica e Validazione del Software

TECNICO PER L?AUTOMAZIONE INDUSTRIALE

DISPENSE DI PROGRAMMAZIONE

A1.2 - Utilizzare programmi applicativi per il monitoraggio ed il collaudo di sistemi elettronici.

UML. Il linguaggio UML e ArgoUML. Ingegneria dei sistemi software 2009/ /09/2009

Introduzione. Fondamenti di Informatica 1. Dispensa 1 Gennaio Contenuti. Alfonso Miola. K Corso di Fondamenti di Informatica 1

Transcript:

Software Testing Esercizi proposti Esercizi di Testing 1

Esercizi proposti Una delle prove obbligatorie per sostenere l esame di Ingegneria del Software 2 è lo svolgimento di un esercizio pratico di testing Da svolgere a casa In gruppi al più di 3 persone Da consegnare al più due giorni prima dell esame, via e-mail In alternativa, è preferibile la consegna via svn Esercizi di Testing 2

Tracce proposte Sono proposte alcune applicazioni da testare, tra le quali scegliere Gruppi da 3 persone: BlackJack Sudoku PacMan (applet) SudokuGame (altra versione di sudoku) Gruppi da 2 persone: Gioco del 15 Reversi (applet) VideoPoker Quiz Gruppi singoli: Gioco dell'impiccato Ricorda Password, applicazione per salvare e ritrovare elenchi di password Esercizi di Testing 3

Tracce proposte Tutte le applicazioni sono realizzate in Java Tutte le applicazioni hanno un interfaccia utente grafica realizzata con AWT o Swing (in un caso si tratta di una applet) Nessuna applicazione ha bisogno di librerie supplementari, oltre quelle della sdk In ogni applicazione sono stati iniettati 3 difetti Ulteriori difetti insiti nelle applicazioni possono essere ulteriormente trovati Esercizi di Testing 4

Strumenti utilizzabili Junit per la programmazione dei casi di test Tobias Per la generazione combinatoria di casi di test Eclipse (o altre IDE) per lo svolgimento del debugging CodeCover Per la misura della copertura white box Structure Analysis Per la valutazione del grafo delle dipendenze CFG generator Per la valutazione del Control Flow Graph Qualunque altro strumento presentato al corso Eventuali altri strumenti reperibili in rete, in particolare per l automazione del testing delle interfacce utente Per questi altri strumenti, un paragrafo descrittivo del loro funzionamento deve essere allegato al documento consegnato Esercizi di Testing 5

Tecniche di testing Implementare tre o più delle seguenti strategie: Testing funzionale black box Descrivere le funzionalità dell'applicazione in termini di input, output, precondizioni, progettare e realizzare casi di test secondo una delle strategie proposte per il testing black box Testing della GUI Descrivere la struttura e il comportamento della GUI tramite diagrammi (ad esempio statechart), poi progettare e realizzare test secondo una delle strategie di copertura degli stati e delle transizioni relative alla GUI Testing strutturale Per ogni classe/metodo, progettare e realizzare casi di test allo scopo di massimizzare una delle funzioni di coeprtura white box del codice Testing d'integrazione Descrivere l'applicazione in termini di grafo delle dipendenze. Progettare e realizzare casi di test per testare uno o più componenti indipendentemente dal resto del software, applicando eventualmente una strategia d'integrazione top-down o bottom-up Debugging e testing di regressione Trovare i difetti iniettati con i test case delle strategie precedenti, descrivere la strategia di debugging utilizzata per localizzare il difetto, correggerlo e rieseguire i test per verificare che esso sia stato corretto e che non si siano manifestati ulteriori malfunzionamenti (regressioni) Esercizi di Testing 6

Documentazione da produrre Per ognuna delle strategie di testing descritte nella slide precedente, bisogna produrre: Documento descrittivo della strategia seguito Elenco di tutti i casi di test svolti e del loro esito Codice di tutti i casi di test Da distribuire possibilmente sotto forma di progetto Eclipse Il docente deve poterli rieseguire prima dell'esame Report di copertura Generabile automaticamente da CodeCover Report dei difetti rilevati e delle modifiche apportate al software Non è obbligatorio, ai fini della consegna dell esercizio, riuscire a ritrovare tutti i difetti, ma è fondamentale documentare tutti i test effettuati e i criteri seguiti nel progettarli Esercizi di Testing 7