Software Testing. Esercizi proposti. Esercizi di Testing 1

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Software Testing. Esercizi proposti. Esercizi di Testing 1"

Transcript

1 Software Testing Esercizi proposti Esercizi di Testing 1

2 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 In alternativa, è preferibile la consegna via svn Esercizi di Testing 2

3 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

4 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

5 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

6 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

7 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

INGEGNERIA DEL SOFTWARE

INGEGNERIA DEL SOFTWARE DIPARTIMENTO DI INGEGNERIA ELETTRICA ELETTRONICA E INFORMATICA Corso di laurea magistrale in Ingegneria informatica Anno accademico 2016/2017-1 anno INGEGNERIA DEL SOFTWARE 9 CFU - 1 semestre Docente titolare

Dettagli

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

Informatica. Progettazione ed implementazione di un tool per il supporto al debug nella pratica di sviluppo Test Driven Tesi di laurea in Informatica Progettazione ed implementazione di un tool per il supporto al debug nella pratica di sviluppo Test Driven Relatore Ch.mo Prof. Giuseppe Trautteur Candidato Gioacchino Del

Dettagli

14. Verifica e Validazione

14. Verifica e Validazione 14. Verifica e Validazione Come assicurarsi che il software corrisponda alle necessità dell utente? Introdurremo i concetti di verifica e validazione Descriveremo le fasi del processo di testing Parleremo

Dettagli

Tecniche di Testing White Box

Tecniche di Testing White Box Tecniche di Testing White Box Riferimenti Ian Sommerville, Ingegneria del Software, capitoli - - (più dettagliato sui processi) Pressman, Principi di Ingegneria del Software, 5 edizione, Capitoli 5-6 Ghezzi,

Dettagli

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

PIANO DI LAVORO. Programmazione Didattica per Competenze. Indirizzo Informatica e Telecomunicazioni. Articolazione Informatica DOCENTE: PIANO DI LAVORO Programmazione Didattica per Competenze Indirizzo Informatica e Telecomunicazioni Articolazione Informatica DOCENTE: ITP: MATERIA: CLASSE: ORE SETTINALI: CANTARELLA ALFREDO NATALE LUIGI

Dettagli

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

Principi di Progettazione del Software a.a  Introduzione al corso! Prof. Luca Mainetti! Università del Salento! Principi di Progettazione del Software a.a. 2015-2016" Introduzione al corso! Prof. Luca Mainetti! Università del Salento! Il GSA Lab (www.gsalab.unisalento.it)" Laboratorio di ricerca in ingegneria del

Dettagli

Fondamenti VBA. Che cos è VBA

Fondamenti VBA. Che cos è VBA Fondamenti VBA Che cos è VBA VBA, Visual Basic for Application è un linguaggio di programmazione, inserito nelle applicazioni Office di Microsoft (Ms Word, Ms Excel, Ms PowerPoint, Visio). VBA è una implementazione

Dettagli

Verifica e Validazione del Software

Verifica e Validazione del Software Verifica e Validazione del Software Testing Black Box Ingegneria del Software 2 Testing Black Box 1 Riferimenti Ian Sommerville, Ingegneria del Software, capitoli 22-23-24 (più dettagliato sui processi)

Dettagli

MATERIALI PER LA DISCUSSIONE

MATERIALI PER LA DISCUSSIONE SETTORE TECNOLOGICO MATERIALI PER LA DISCUSSIONE ISTITUTO TECNICO INDIRIZZO ARTICOLAZIONE TELECOMUNICAZIONI INFORMATICA E TELECOMUNICAZIONI ESITI DI APPRENDIMENTO Regolamento, Art. 5 comma 1 Nota: Le Competenze,

Dettagli

Fasi di revisione del progetto

Fasi di revisione del progetto Fasi di revisione del progetto Revisione dei requisiti (comunicazione e pianificazione) Revisione della specifica architetturale Revisione della codifica e collaudo Accettazione (esame finale) Documentazione

Dettagli

FONDAMENTI DI INFORMATICA II

FONDAMENTI DI INFORMATICA II Università degli Studi di Ferrara Facoltà di Ingegneria APPUNTI DEL CORSO DI FONDAMENTI DI INFORMATICA II Obiettivi del corso: Approfondire l uso del linguaggio C rispetto a quanto noto dal corso di Fondamenti

Dettagli

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

Principi di Progettazione del Software a.a Introduzione al corso Prof. Luca Mainetti Università del Salento Principi di Progettazione del Software a.a. 2016-2017 Prof. Università del Salento Il GSA Lab (www.gsalab.unisalento.it) Laboratorio di ricerca in ingegneria del software e sistemi interattivi La mission

Dettagli

Programmazione Orientata agli Oggetti

Programmazione Orientata agli Oggetti Programmazione Orientata agli Oggetti a.a. 2012-2013 Presentazione del corso Informazioni generali Docente: Paolo Merialdo [email protected] http://merialdo.dia.uniroma3.it Sito del corso: https://sites.google.com/site/roma3poo

Dettagli

Ingegneria del Software L-A

Ingegneria del Software L-A Ingegneria del Software L-A Corso di Laurea Triennale in Ingegneria Informatica III anno A.A. 2009/2010 Docente: Giuseppe Bellavia Collaboratore: Gabriele Zannoni Premessa Una domanda fondamentale Che

Dettagli

Correttezza (prima parte)

Correttezza (prima parte) Fondamenti di informatica Oggetti e Java (prima parte) Capitolo 16 ottobre 2015 1 Contenuti Introduzione alla correttezza dei programmi specifica di un programma correttezza di un programma verifica di

Dettagli

Ingegneria del Software

Ingegneria del Software Ingegneria del Software Introduzione e Concetti Fondamentali Porfirio Tramontana, 2009 Corso di Ingegneria del Software Slide 1 Riferimenti Ian Sommerville, Ingegneria del Software, Capitolo 1 Porfirio

Dettagli

Il PROCESSO UNIFICATO

Il PROCESSO UNIFICATO Corsi di laurea triennale in Ingegneria Informatica Corso di Ingegneria del software Il PROCESSO UNIFICATO Modellazione ed Implementazione di un Sistema Software per la gestione informatizzata di un ristorante

Dettagli

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

Strumenti per l automazione del testing di applicazioni web Javascript-based tesi di laurea Strumenti per l automazione del testing di applicazioni web Javascript-based Anno Accademico 2005/2006 relatore Ch.mo prof. Porfirio Tramontana 1 candidato Salvatore Agnello Matr. 41/2612

Dettagli

Materiale didattico. Sommario

Materiale didattico. Sommario Diploma Universitario in Ingegneria Informatica Corso di Ingegneria del Software Docente: ing. Anna Rita Fasolino Dipartimento di Informatica e Sistemistica Università degli Studi di Napoli Federico II

Dettagli

Programma didattico. Sviluppare Applicazioni Distribuite in ambiente. Spring MVC

Programma didattico. Sviluppare Applicazioni Distribuite in ambiente. Spring MVC Programma didattico Sviluppare Applicazioni Distribuite in ambiente Spring MVC Programma del corso 1.Progettazione e Sviluppo Database Relazionali Questa competenza permette di Progettare e Sviluppare

Dettagli

Piano dei Test e Collaudo del software Titolo Documento

Piano dei Test e Collaudo del software Titolo Documento Controllo delle copie Il presente documento, se non preceduto dalla pagina di controllo identificata con il numero della copia, il destinatario, la data e la firma autografa del Responsabile della Documentazione,

Dettagli

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

Dipartimento di INFORMATICA TC - TTRG. Anno Scolastico Piano di Lavoro Disciplinare. INFORMATICA Articolazione: INFORMATICA Classe IV Dipartimento di INFORMATICA TC - TTRG Anno Scolastico 2015-2016 Piano di Lavoro Disciplinare INFORMATICA Articolazione: INFORMATICA Classe IV Docenti del Dipartimento: Maculotti Marina (IV A i ) Mazzucchelli

Dettagli

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

MANAGEMENT DELLA QUALITA CONTROLLO STATISTICO DELLA QUALITA ORDINAMENTO 509. Prof. Maria Francesca Renzi Prof. Paola Vicard MANAGEMENT DELLA QUALITA CONTROLLO STATISTICO DELLA QUALITA ORDINAMENTO 509 Prof. Maria Francesca Renzi Prof. Paola Vicard A.A. 2009/2010 Obiettivi formativi Il corso si pone l obiettivo di preparare gli

Dettagli

Stato dell arte sulle tecniche di testing di Sistemi Embedded

Stato dell arte sulle tecniche di testing di Sistemi Embedded tesi di laurea Anno Accademico 2011/2012 relatore Ch.mo prof. Porfirio Tramontana candidato Alfonso Cutolo Matr. 041/3068 Obiettivi Facoltà di Ingegneria Obiettivi Ordinare e descrivere in maniera metodologica

Dettagli

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

PIANO DI LAVORO ANNUALE DELLA DISCIPLINA. Classe 3 ATI A.S. 2015/2016 Istituto di Istruzione Secondaria Superiore Ettore Majorana 24068 SERIATE (BG) Via Partigiani 1 Tel 035 297612 Fax 035301672 Cod. Mecc. BGISO1700A Cod.Fisc. 95028420164 Md CDC 49_1 - Piano di Lavoro Annuale

Dettagli

Ingegneria del Software II

Ingegneria del Software II Ingegneria del Software II Prof. Evelina Lamma Anno accademico 2017-16 Obiettivi del corso l Illustrare modelli, tecniche e strumenti disponibili nelle varie attività/fasi del processo di sviluppo software:

Dettagli

Programmazione di INFORMATICA e Laboratorio

Programmazione di INFORMATICA e Laboratorio ISIUO ECNICO SAALE settore ECNOLOGICO ad indirizzo: Elettronica ed Elettrotecnica - Informatica e elecomunicazioni Meccanica, Meccatronica ed Energia "VIORIO EMANUELE III" Via Duca della Verdura, 48-90143

Dettagli

Lo sviluppo del progetto informatico

Lo sviluppo del progetto informatico Lo sviluppo del progetto informatico Il progetto Il controllo di qualità Le qualità per i prodotti di software Le figure professionali La metodologia La conoscenza degli obiettivi L analisi La progettazione

Dettagli

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

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011. Benvenuti al Corso! Fondamenti di Informatica 1 Prof. B.Buttarazzi A.A. 2010/2011 Benvenuti al Corso! Sommario Contenuti del Corso Riferimenti Regole del Corso Materiale Didattico Scheduling Esami Strumenti Software 02/03/2011

Dettagli

Fondamenti di Informatica modulo B

Fondamenti di Informatica modulo B Università degli Studi di Ferrara Dipartimento di Ingegneria Fondamenti di Informatica modulo B Corso di Laurea triennale in Ingegneria Elettronica e Informatica Prof. Evelina Lamma Anno Accademico 2015-16

Dettagli

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

Traccia delle soluzioni. Si consideri il seguente enunciato: Spett Ditta, Corso di Ingegneria del software Primo appello 8 gennaio 2008 V. Ambriola, L. Semini Dipartimento di Informatica, Università di Pisa a.a. 2007/08 La prova si svolge a libri chiusi (non è permessa la consultazione

Dettagli

Introduzione ai casi d uso

Introduzione ai casi d uso Introduzione ai casi d uso versione 16 marzo 2009 http://www.analisi-disegno.com Introduzione ai casi d uso Pag. 1 Obiettivo di questa introduzione fornire elementi di base sui casi d uso fornire indicazioni

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Introduzione al corso di Algoritmi e Strutture Dati Luigi Pontieri Il nome del corso: Algoritmi e Strutture Dati Algoritmo: metodo per la risoluzione di problemi di elaborazione di informazioni, espresso

Dettagli

Basi di dati I

Basi di dati I Docente Paolo Atzeni Basi di dati I 2015-2016 [email protected] http://www.dia.uniroma3.it/~atzeni/ Calendario: 1/10/2015 al 22/01/2016 con interruzione dal 23/12 al 6/01 inclusi Orario: lun-gio ore

Dettagli

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

IL VHDL. Perché si usa un linguaggio di descrizione dell'hardware? Permette di formalizzare il progetto di sistemi digitali complessi IL VHDL Cosa è il VHDL? NON è un linguaggio di programmazione! E' uno standard IEEE per la descrizione dell'hardware VHDL: VHSIC Hardware Description Language VHSIC: Very High Speed Integrated Circuit

Dettagli

Programmazione ad Oggetti

Programmazione ad Oggetti Programmazione ad Oggetti Informazioni generali Docente Giacomo Cabri Come contattarmi Via email (consigliato) [email protected] Telefono 059/2058320 Ricevimento Lunedì dalle 15 alle 17 presso Matematica,

Dettagli

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

BASI DI DATI. basi di dati - introduzione ai sistemi informativi 1 BASI DI DATI basi di dati - introduzione ai sistemi informativi 1 Sistema Informativo Insieme degli strumenti, risorse e procedure che consentono la gestione delle informazioni aziendali e' essenziale

Dettagli

Lab 01 Introduzione a Codelite

Lab 01 Introduzione a Codelite Fondamenti di Informatica e Laboratorio T-AB e Fondamenti di Informatica T1 Ingegneria Elettronica e Telecomunicazioni e Ingegneria dell Automazione a.a. 2011/2012 Lab 01 Introduzione a Codelite Lab01

Dettagli

La tolleranza ai guasti. Concetti generali

La tolleranza ai guasti. Concetti generali Politecnico di Milano La tolleranza ai guasti Concetti generali Docente: William Fornaciari Politecnico di Milano [email protected] www.elet.polimi.it/~fornacia Sommario Storia Concetti fondamentali

Dettagli

13. Verifica e Validazione del Software

13. Verifica e Validazione del Software 13. Verifica e Validazione del Software Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 13. Verifica e Validazione del Software 1 / 13 Verifica e Validazione

Dettagli

TECNICO PER L?AUTOMAZIONE INDUSTRIALE

TECNICO PER L?AUTOMAZIONE INDUSTRIALE Denominazione Figura / Profilo / Obiettivo Professioni NUP/ISTAT correlate TECNICO PER L AUTOMAZIONE INDUSTRIALE 6. - Artigiani, operai specializzati e agricoltori 6.2.3 - Meccanici artigianali, montatori,

Dettagli

DISPENSE DI PROGRAMMAZIONE

DISPENSE DI PROGRAMMAZIONE DISPENSE DI PROGRAMMAZIONE Modulo 1 Risolvere problemi con l elaboratore: dal problema all algoritmo (Parte II) I Linguaggi di descrizione degli algoritmi - Notazioni grafiche (parte 1) Il linguaggio dei

Dettagli

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

A1.2 - Utilizzare programmi applicativi per il monitoraggio ed il collaudo di sistemi elettronici. Programma effettivamente svolto Sez.D COMPETENZE (da linee guida DPR 15/03/2010, art. 8 comma 3 e direttiva 4 del 16 gennaio 2012) K1 - utilizzare la strumentazione di laboratorio e di settore e applicare

Dettagli

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

UML. Il linguaggio UML e ArgoUML. Ingegneria dei sistemi software 2009/ /09/2009 UML Il linguaggio UML e ArgoUML 30/09/2009 Ingegneria dei sistemi software 2009/2010 [email protected] UML Unified Modeling Language una famiglia di notazioni grafiche standardizzate* orientata

Dettagli

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

Introduzione. Fondamenti di Informatica 1. Dispensa 1 Gennaio Contenuti. Alfonso Miola. K Corso di Fondamenti di Informatica 1 Alfonso Miola Dispensa 1 Gennaio 2001 1 Contenuti K Corso di K Programma del corso K Materiale didattico K Organizzazione didattica K Attività di laboratorio K Prove di valutazione ed esami 2 Corso di

Dettagli