Operazione: Esecuzione dei test dello sviluppatore
Questo compito illustra come eseguire e valutare una serie di test progettati per confermare che un componente stia lavorando in modo corretto prima di effettuare dei test più formali.
Discipline: Implementazione
Scopo
  • Verifica della specifica di una unità.
  • Verifica della struttura interna di un'unità.
Relazioni
Passi
Avvio
Scopo Preparazione all'implementazione del test. 

L'implementazione e la modifica dei componenti avviene durante la gestione della configurazione del progetto. Gli implementatori hanno uno spazio di lavoro di sviluppo personale (consultare  Compito: Creazione spazio di lavoro di sviluppo) in cui eseguono il proprio lavoro, come indicato in Prodotto di lavoro: Ordine del lavoro. In questo spazio di lavoro gli elementi di origine vengono creati ed inseriti nella gestione configurazione, oppure modificati tramite il ciclo classico di check out, modifica, build, test dell'unità e check in (consultare  Compito: Apporta modifiche). Seguendo il completamento di un insieme di componenti, così come definito da uno o più Ordini di lavoro e richiesto dal successivo build, l'implementatore produrrà (consultare  Compito: Produzione modifiche) i relativi componenti nuovi e modificati nello spazio di lavoro di integrazione del sottosistema, perché si integrino con il lavoro di altri implementatori. Infine, l'implementatore potrà aggiornare, ridefinire la linea di base, dello spazio di lavoro di sviluppo privato così da renderlo coerente con lo spazio di lavoro di integrazione del sottosistema (consultare  Compito: Aggiornamento spazio di lavoro).

Per Unità si intende non solo una classe di un linguaggio ad oggetti, ma anche i programmi secondari liberi, quali le funzioni in C++.

Per eseguire il test di ciascuna unità (classe implementata), procedere come segue:

Esecuzione del test dell'unità
Scopo Esecuzione di procedure di test o di script di test in caso di un test automatizzato. 

Per eseguire il test di un'unità procedere come segue:

  1. Impostare l'ambiente di test per accertarsi che tutti gli elementi necessari, quali hardware, software, tool, dati e così via, siano stati implementati.
  2. Inizializzare l'ambiente di test per accertarsi che tutti i componenti siano nello stato iniziale corretto per l'avvio del test.
  3. Eseguire le procedure di test.

Nota: L'esecuzione delle procedure di test varierà a seconda che il test sia manuale o automatizzato, e se sono necessari componenti di test quali programmi di controllo o stub.  

  • Test automatizzato: Vengono eseguiti gli script di test creati durante la fase di test dell'implementazione.
  • Esecuzione manuale: Vengono utilizzate le procedure di test strutturato sviluppate durante il compito Procedure di test strutturato per eseguire il test manualmente.
Valutazione dell'esecuzione del test
Scopo Determinare se i test sono stati completati con esito positivo e come desiderato.
Determinare le azioni correttive richieste. 

L'esecuzione dei test termina con una delle seguenti due condizioni:

  • Normale: tutte le procedure di test (o gli script) eseguite come previsto.

Se il test termina in modo normale, proseguire con la fase Verifica dei risultati del test.

  • Anomala o prematura: le procedure di test, o gli script, non sono stati eseguiti completamente o come previsto. Quando la fase di test termina in questa condizione i suoi risultati non sono affidabili. La causa dell'arresto della procedura deve essere identificata, corretta, ed il test deve essere eseguito nuovamente prima di procedere con ulteriori compiti di test.

Se il test si blocca in modo anomalo, procedere con la fase Recupero da test bloccati.

Verifica dei risultati del test
Scopo Determinare se i risultati del test sono affidabili.
Identificare le azioni correttive adeguate se i risultati del test indicano la presenza di falle nell'impegno del test o nei prodotti di lavoro. 

Una volta terminati i test, esaminarne i risultati per accertarsi che siano affidabili e che gli errori, le avvertenze o i risultati inattesi riportati non siano stati causati da influenze esterne (allo scopo del test), quali impostazioni o dati errati.

Se gli errori riportati sono dovuti a malfunzionamenti del prodotto di lavoro sottoposto a verifica o a problemi nell'ambiente di test, prendere le azioni correttive adeguate per recuperare da un test bloccato ed eseguirlo nuovamente.

Se i risultati del test indicano che gli errori sono nell'ambito dello scopo del test, questo compito si può ritenere sostanzialmente completata e solitamente si devono eseguire l'Compito: Inoltro richiesta di modifica oppure l'Compito: Analisi del comportamento di runtime.

Recupero da test bloccati
Scopo Determinare le azioni correttive adeguate per recuperare da un test bloccato.
Correggere il problema, recuperare ed eseguire nuovamente i test. 

Esistono due tipo principali di test bloccati:

  • Errori irreversibili-errori di sistema; ad esempio, errori di rete, interruzione hardware e simili.
  • Errori dei comandi degli script di test-specifici dei test automatizzati, questi avvengono quando lo script di test non riesce ad eseguire un comando o una riga di codice.

Entrambi i tipi di fine anomala dei test possono evidenziare gli stessi sintomi:

  • Si manifestano azioni, pannelli o eventi non previsti durante l'esecuzione dello script del test.
  • L'ambiente di test non risponde o si trova in uno stato non previsto, quale un blocco o un'interruzione del sistema.

Per recuperare da una test bloccato, procedere come segue:

  1. Determinare la causa effettiva del problema.
  2. Correggere il problema.
  3. Impostare nuovamente l'ambiente di test.
  4. Inizializzare nuovamente l'ambiente di test.
  5. Eseguire nuovamente i test.
Ulteriori informazioni