Testing for Testers - Corso Aziendale


Il test del software e' una attivita' critica per il rilascio di applicazioni di qualita'. E' anche una attivita' ampiamente studiata nell'ingegneria del software, ed esistono tecniche sistematiche per affrontare sia l'identificazione dei casi di test necessari, sia la riduzione "ottimale" dei casi di test, al fine di sfruttare al meglio il tempo (spesso ridotto) destinato a questa fase dello sviluppo.
Nonostante cio', in molte aziende il test e' sottostimato, affidato agli stessi programmatori che hanno scritto il codice, ad un capo progetto gia' impegnato in molte altre attivita', oppure a figure dedicate, alle quali tuttavia non e' stata fornita l'adeguata formazione. Questo e' particolarmente vero nelle aziende che stanno gradualmente transitando verso l'informatica (ad esempio, le aziende nate in settore meccanico / elettronico), ma anche in molte software house la fase di test e' ancora situata ad uno stadio artigianale
Il corso Testing for Testers nasce proprio con l'intenzione di colmare questo gap. Obiettivo del corso e' insegnare tutte le fasi del test: Pianificazione, Ottimizzazione del piano, Esecuzione e Reporting. Il corso affronta anche argomenti importanti come la stima del tempo necessario ad eseguire il test, l'analisi del trend dei bug riscontrati e la stima dei bug residui.
Come sempre, essendo basato da un lato sulla teoria, ma dall'altro sulla pratica continua, non mancano i riferimenti a problematiche reali. E' inoltre possibile (anzi, caldamente suggerito) dedicare parte delle due giornate ad esaminare alcune porzioni dei prodotti aziendali nell'ottica del test, derivando in modo sistematico i relativi test plan. Non mancheranno comunque gli esercizi, sempre molto realistici, da svolgere durante il corso per mettere alla prova le diverse tecniche apprese.
Il corso non richiede conoscenze "da programmatore", anche se e' stato spesso frequentato anche da programmatori. E' peraltro possibile richiedere una versione specifica per sviluppatori ("Testing for Developers") che rivede alcuni temi in ottica piu' vicina al codice, ed affronta in profondita' alcuni aspetti di testing White Box qui solo accennati, incluso l'utilizzo di strumenti per il test di unita'.

Dettagli sul corso

Durata: 2 giorni

Partecipanti: massimo 15

Prerequisiti: E' richiesta una mentalita' di tipo tecnico/analitico, ed una certa familiarita' con l'utilizzo delle applicazioni informatiche, ma non sono necessarie conoscenze di programmazione.

Programma del corso:

Software Testing: Introduction
Software Testing
Who Tests the Software?
Testing Principles
Lifetime of Software
Test Case and Test Case Design
Testing Models

Software Testing Process
Testing lifecycle
When to Start Planning
When to Start Testing
Validation and Verification Testing
Test Planning
Test Planning: using a Checklist
Test Plan Minimization
Running a Test Case
Analyzing and Cleaning a Defect
Reporting a Defect
Defects Lifecycle
Verifying a Fix
Planning Vs Randomness

Black Box Testing Techniques
Black Box Methods
Equivalence Partitioning
Boundary Values Analysis
Special Uniques
State-Based Analysis
Decision-Table Testing

Test Plan Minimization
Test Reduction: Risk-Based Selection
Test Reduction: Coverage-Based Selection
Test Reduction: All-Pairs Selection (and tools)

More Testing Techniques
Syntax Testing
Random Testing
Timing Testing
Performance Testing
Stress Testing
GUI Testing

Regression Testing
Regression Testing
Test Automation
Test Automation Issues

Metrics
Test Case Effectiveness
TCE + Coverage
Coverage
Residual Bug Estimation
Other interesting measures

Some White Box Concepts
White Box Testing for Testers??
Coverage Testing
Branch and Path Testing
Statements Vs Branch Testing
Branch and Path Testing
Cyclomatic Complexity

Bibliography



Se siete interessati a questo seminario aziendale, potete compilare la seguente richiesta di contatto per fissare un possibile incontro.


  torna alla pagina dei corsi