Ottimizzazione del Processo di Software Testing: Strategie e Best Practice

Classificato in Matematica

Scritto il in italiano con una dimensione di 3,59 KB

Aspetti essenziali del processo di test

La qualità del processo di test determina il successo dello sforzo di test: il test ha un proprio ciclo, che inizia con la fase dei requisiti software e da lì procede in parallelo con il processo di sviluppo software. Per ogni fase del processo di sviluppo, vi è un compito importante di test.

Prevenzione della migrazione dei difetti

Prevenzione della migrazione dei difetti utilizzando tecniche di test all'inizio del ciclo di vita: più della metà dei difetti viene di solito introdotta nella fase dei requisiti, e il costo è ridotto al minimo se i difetti vengono rilevati nella stessa fase della loro introduzione. Le ispezioni e i controlli periodici sono uno strumento altamente efficace ed economico.

Strumenti di test

Il momento di scegliere gli strumenti di test è adesso: c'è una vasta gamma di prodotti tra cui scegliere, alcuni più opportuni o più facili da usare rispetto ad altri per piattaforme diverse. Per determinare la copertura strutturale (structural coverage), è importante avere una strategia per acquisire gli strumenti e procedure di selezione che, pur essendo basate sul buon senso, dovrebbero essere applicate in modo coerente.

Responsabilità e miglioramento

Una persona vera e propria dovrebbe essere responsabile del miglioramento del processo di test: buone specifiche, revisioni e ispezioni influenzano positivamente la qualità dei test. Il suo miglioramento non è concettualmente difficile, ma richiede impegno e tempo, il che richiede una chiara responsabilità per pianificare e gestire i progressi.

Professionalità nel testing

Il testing è una disciplina professionale che ha bisogno di persone qualificate e competenti: affrontarlo con successo richiede professionisti qualificati e addestrati, con il supporto adeguato dell'alta dirigenza. Non deve essere considerato come un livello d'ingresso o un semplice trampolino di lancio; deve essere indipendente, imparziale e strutturato in modo da riconoscere il giusto contributo alla qualità del prodotto.

La distruzione creativa

È necessario coltivare un atteggiamento positivo per il team di distruzione creativa: ci vuole una notevole creatività al fine di distruggere qualcosa in modo controllato e sistematico. Un buon tester smonta metodicamente un prodotto, ne trova le debolezze e va oltre i limiti.

Aspetti economici del software

La maggior parte dei costi del software serve a coprire i costi dei difetti: la progettazione dei test per scoprirli, l'esecuzione di tali test, il rilevamento dei difetti e la loro correzione.

Il processo di test

  • Pianificazione: All'inizio dello sviluppo, stabilisce le linee guida, i metodi e i livelli di ambizione (se sarà automatico o manuale), la stima delle risorse necessarie e le norme coinvolte.
  • Identificazione (ID): Stime dettagliate delle risorse necessarie.
  • Specifica: Descrizione dei test a livello funzionale (scopo) e a livello dettagliato (passi da seguire).
  • Attuazione: Sviluppo di test sia automatizzati che manuali e registrazione dei risultati.
  • Analisi dei difetti: Identificazione del difetto, delle sue cause e delle relative azioni correttive.
  • Completamento: Preparazione dell'ambiente, delle attrezzature e dei casi di test per un utilizzo successivo, e archiviazione della documentazione.

Voci correlate: