PIANO DI PROVA: cos'è, come creare (con esempio)

Sommario:

Anonim

Piano di test

Un piano di test è un documento dettagliato che descrive la strategia di test, gli obiettivi, la pianificazione, la stima, i risultati finali e le risorse necessarie per eseguire i test per un prodotto software. Il piano di test ci aiuta a determinare lo sforzo necessario per convalidare la qualità dell'applicazione sottoposta a test. Il piano di test funge da modello per condurre attività di test del software come un processo definito, che è minuziosamente monitorato e controllato dal responsabile del test.

Secondo la definizione ISTQB: "Il piano di test è un documento che descrive l'ambito, l'approccio, le risorse e il programma delle attività di test previste".

Cominciamo con il seguente esempio / scenario del piano di test: in una riunione, vuoi discutere il piano di test con i membri del team, ma non sono interessati -.

In tal caso, cosa farai? Seleziona la tua risposta come nella figura seguente

A) Sono Manager, faccio tutto come ho detto
B) OK, lascia che ti spieghi perché abbiamo bisogno di un piano di test
errato
In qualità di responsabile del test, devi spiegare loro l'importanza del piano di test piuttosto che costringere il team a fare quello che vuoi.
Corretto
In qualità di responsabile del test, devi spiegare loro l'importanza del piano di test piuttosto che costringere il team a fare ciò che desideri.

Qual è l'importanza del piano di test?

La creazione di un documento del piano di test ha molteplici vantaggi

  • Aiuta le persone al di fuori del team di test come sviluppatori, manager aziendali, clienti a comprendere i dettagli del test.
  • Il piano di test guida il nostro pensiero. È come un libro di regole, che deve essere seguito.
  • Aspetti importanti come la stima del test, l'ambito del test, la strategia del test sono documentati nel Piano di test, quindi possono essere rivisti dal team di gestione e riutilizzati per altri progetti.

Come scrivere un piano di test

Sai già che fare un piano di test è il compito più importante del processo di gestione dei test. Seguire i sette passaggi seguenti per creare un piano di test secondo IEEE 829

  1. Analizza il prodotto
  2. Progettare la strategia di test
  3. Definisci gli obiettivi del test
  4. Definisci criteri di test
  5. Pianificazione delle risorse
  6. Pianificare l'ambiente di test
  7. Pianificazione e stima
  8. Determinare i risultati del test

Passaggio 1) Analizza il prodotto

Come puoi testare un prodotto senza alcuna informazione a riguardo? La risposta è impossibile. È necessario imparare a fondo un prodotto prima di provarlo.

Il prodotto in prova è il sito web bancario Guru99. È necessario ricercare i clienti e gli utenti finali per conoscere le loro esigenze e aspettative dall'applicazione

  • Chi utilizzerà il sito web?
  • A cosa serve?
  • Come funzionerà?
  • Quali sono i software / hardware utilizzati dal prodotto?

È possibile utilizzare il seguente approccio per analizzare il sito

Ora applichiamo la conoscenza di cui sopra a un prodotto reale: Analizza il sito web bancario http://demo.guru99.com/V4.

Dovresti dare un'occhiata a questo sito web e rivedere anche la documentazione del prodotto. La revisione della documentazione del prodotto aiuta a comprendere tutte le funzionalità del sito Web e come utilizzarlo. Se non sei chiaro su alcun elemento, potresti intervistare il cliente, lo sviluppatore, il designer per ottenere maggiori informazioni.

Passaggio 2) Sviluppare una strategia di test

La strategia di test è un passaggio fondamentale nella creazione di un piano di test nel test del software. Un documento di strategia di test, è un documento di alto livello, che di solito viene sviluppato da Test Manager. Questo documento definisce:

  • Gli obiettivi di verifica del progetto e i mezzi per raggiungerli
  • Determina lo sforzo e i costi dei test

Tornando al tuo progetto, devi sviluppare Test Strategy per testare quel sito web bancario. Dovresti seguire i passaggi seguenti

Passaggio 2.1) Definire l'ambito del test

Prima dell'inizio di qualsiasi attività di test, è necessario conoscere l'ambito del test. Devi pensarci bene.

  • I componenti del sistema da testare (hardware, software, middleware, ecc.) Sono definiti " nell'ambito "
  • Anche i componenti del sistema che non saranno testati devono essere chiaramente definiti come " fuori campo ".

Definire l'ambito del progetto di test è molto importante per tutte le parti interessate. Un mirino preciso ti aiuta

  • Dai a tutti una fiducia e informazioni accurate sui test che stai facendo
  • Tutti i membri del progetto avranno una chiara comprensione di ciò che viene testato e di ciò che non lo è

Come determini l'ambito del tuo progetto?

Per determinare l'ambito, è necessario:

  • Preciso requisito del cliente
  • Budget del progetto
  • Specifiche di prodotto
  • Competenze e talento del tuo team di test

Ora dovrebbe definire chiaramente "nell'ambito" e "fuori ambito" del test.

  • Come le specifiche dei requisiti software, il progetto Guru99 Bank si concentra solo sul test di tutte le funzioni e l'interfaccia esterna del sito Web Guru99 Bank ( in ambito di test)
  • I test non funzionali come lo stress , le prestazioni o il database logico attualmente non verranno testati. ( fuori campo)

Scenario problematico

Il cliente vuole che tu provi la sua API. Ma il budget del progetto non lo consente. In tal caso cosa farai?

Bene, in tal caso è necessario convincere il cliente che Api Testing è un lavoro extra e consumerà risorse significative. Dagli dati a sostegno dei tuoi fatti. Digli che se il test API è incluso nell'ambito, il budget aumenterà di XYZ.

Il cliente accetta e di conseguenza i nuovi ambiti, gli elementi fuori ambito sono

  • Elementi nell'ambito: test funzionali, test API
  • Elementi fuori ambito: test del database, hardware e qualsiasi altra interfaccia esterna

Passaggio 2.2) Identificare il tipo di test

Un tipo di test è una procedura di test standard che fornisce un risultato di test previsto.

Ogni tipo di test è formulato per identificare un tipo specifico di bug del prodotto. Tuttavia, tutti i tipi di test mirano a raggiungere un obiettivo comune " Rilevamento precoce di tutti i difetti prima di rilasciare il prodotto al cliente"

I tipi di test comunemente usati sono descritti nella figura seguente

Tipi di test comunemente usati

Ci sono tonnellate di tipi di test per testare il prodotto software. Il tuo team non può avere abbastanza sforzi per gestire tutti i tipi di test. In qualità di Test Manager, è necessario impostare la priorità dei tipi di test

  • Quali tipi di test dovrebbero essere focalizzati per il test delle applicazioni web?
  • Quali tipi di test dovrebbero essere ignorati per risparmiare sui costi?
Ora facciamo pratica con il tuo progetto. Il prodotto che vuoi testare è un sito web bancario.
Quali tipi di test dovresti concentrarti in questo caso?
Seleziona Tutto ciò che si applica
A) Test unitario B) Test API C) Test di integrazione D) Test di sistema E) Installa / Disinstalla Test F) Test Agile Selezioniamo solo B) Test API C) Test di integrazione D) Test di sistema per il progetto Guru99




Passaggio 2.3) Rischi e problemi del documento

Il rischio è un evento incerto del futuro con una probabilità di accadimento e un potenziale di perdita. Quando il rischio si verifica effettivamente, diventa il " problema".

Nell'articolo Analisi e soluzione dei rischi, hai già appreso in dettaglio l'analisi dei "rischi" e hai identificato i potenziali rischi nel progetto.

Nel piano di test QA documenterai questi rischi

Rischio Mitigazione
Ai membri del team mancano le competenze richieste per il test del sito web. Pianifica un corso di formazione per potenziare i tuoi membri
Il programma del progetto è troppo stretto; è difficile completare questo progetto in tempo Imposta la priorità del test per ciascuna attività di test.
Test Manager ha scarse capacità di gestione Pianificare la formazione alla leadership per il manager
Una mancanza di collaborazione influisce negativamente sulla produttività dei tuoi dipendenti Incoraggia ogni membro del team nel suo compito e ispiralo a maggiori sforzi.
Stima del budget errata e superamento dei costi Stabilire l' ambito prima di iniziare il lavoro, prestare molta attenzione alla pianificazione del progetto e monitorare e misurare costantemente i progressi

Passaggio 2.4) Creare la logistica del test

In Test Logistics, il Test Manager dovrebbe rispondere alle seguenti domande:

  • Chi metterà alla prova?
  • Quando avverrà il test?

Chi metterà alla prova?

Potresti non conoscere i nomi esatti del tester che eseguirà il test, ma è possibile definire il tipo di tester .

Per selezionare il membro giusto per l'attività specificata, è necessario considerare se la sua abilità è qualificata per l'attività o meno, stimare anche il budget del progetto. La selezione di un membro sbagliato per l'attività può causare il fallimento o il ritardo del progetto .

La persona che possiede le seguenti abilità è l'ideale per eseguire test del software:

  • Capacità di comprendere il punto di vista dei clienti
  • Forte desiderio di qualità
  • Attenzione ai dettagli
  • Buona collaborazione

Nel tuo progetto, il membro che si farà carico dell'esecuzione del test è il tester. In base al budget del progetto, puoi scegliere un membro in-source o in outsourcing come tester.

Quando avverrà il test?

Le attività di test devono essere abbinate alle attività di sviluppo associate.

Inizierai a testare quando avrai tutti gli elementi richiesti mostrati nella figura seguente

Passaggio 3) Definire l'obiettivo del test

L'obiettivo del test è l'obiettivo generale e il raggiungimento dell'esecuzione del test. L'obiettivo del test è trovare il maggior numero possibile di difetti del software; assicurarsi che il software in prova sia privo di bug prima del rilascio.

Per definire gli obiettivi del test, è necessario eseguire i 2 passaggi seguenti

  1. Elenca tutte le caratteristiche del software (funzionalità, prestazioni, GUI ...) che potrebbe essere necessario testare.
  2. Definisci l' obiettivo o l' obiettivo del test in base alle funzionalità di cui sopra

Applichiamo questi passaggi per trovare l'obiettivo del test del tuo progetto di test Guru99 Bank

È possibile scegliere il metodo " TOP-DOWN" per trovare le funzionalità del sito Web che potrebbe essere necessario testare. In questo metodo, si suddivide l'applicazione sottoposta a test in componente e sottocomponente .

Nell'argomento precedente, hai già analizzato le specifiche dei requisiti e attraversato il sito Web, in modo da poter creare una mappa mentale per trovare le funzionalità del sito Web come segue

Questa figura mostra tutte le funzionalità che il sito Web Guru99 potrebbe avere.

Sulla base delle caratteristiche di cui sopra, è possibile definire l'obiettivo del test del progetto Guru99 come segue

  • Verificare che la funzionalità del sito Web Guru99 (account, deposito ...) funzioni come previsto senza errori o bug nell'ambiente aziendale reale
  • Verificare che l'interfaccia esterna del sito Web, ad esempio l' interfaccia utente, funzioni come previsto e e soddisfi le esigenze del cliente
  • Verifica l' usabilità del sito web. Queste funzionalità sono convenienti per l'utente o no?

Passaggio 4) Definire i criteri di test

I criteri di prova sono uno standard o una regola su cui può essere basata una procedura di prova o un giudizio di prova. Esistono 2 tipi di criteri di test come segue

Criteri di sospensione

Specificare i criteri di sospensione critici per un test. Se i criteri di sospensione vengono soddisfatti durante il test, il ciclo di test attivo verrà sospeso fino a quando i criteri non saranno risolti .

Esempio di piano di test: se i membri del team segnalano che il 40% dei casi di test non è riuscito, è necessario sospendere i test finché il team di sviluppo non risolve tutti i casi non riusciti.

Criteri di uscita

Specifica i criteri che denotano il completamento con successo di una fase di test. I criteri di uscita sono i risultati mirati del test e sono necessari prima di procedere alla fase successiva di sviluppo. Esempio: il 95% di tutti i casi di test critici deve superare.

Alcuni metodi per definire i criteri di uscita sono specificando una velocità di esecuzione e una velocità di passaggio mirate .

  • La velocità di esecuzione è il rapporto tra il numero di casi di test eseguiti / casi di test totali della specifica di test. Ad esempio, la specifica del test ha un totale di 120 TC, ma il tester ha eseguito solo 100 TC, quindi la velocità di esecuzione è 100/120 = 0,83 (83%)
  • Il tasso di successo è il rapporto tra i numeri di casi di test superati / casi di test eseguiti . Ad esempio, in oltre 100 TC eseguiti, ci sono 80 TC che hanno superato, quindi il tasso di passaggio è 80/100 = 0,8 (80%)

Questi dati possono essere recuperati nei documenti Test Metric.

  • La velocità di esecuzione è obbligatoriamente del 100% a meno che non venga fornita una ragione chiara.
  • Il tasso di superamento dipende dall'ambito del progetto, ma il raggiungimento di un tasso di superamento elevato è un obiettivo.

Esempio di piano di test: il tuo team ha già eseguito le esecuzioni di test. Ti segnalano il risultato del test e vogliono che tu confermi i criteri di uscita.

Nel caso precedente, il tasso di esecuzione è obbligatorio del 100%, ma il team di test ha completato solo il 90% dei casi di test. Significa che il tasso di esecuzione non è soddisfatto, quindi NON confermare i criteri di uscita

Passaggio 5) Pianificazione delle risorse

Il piano delle risorse è un riepilogo dettagliato di tutti i tipi di risorse necessari per completare l'attività del progetto. La risorsa potrebbe essere umana, attrezzature e materiali necessari per completare un progetto

La pianificazione delle risorse è un fattore importante della pianificazione del test perché aiuta a determinare il numero di risorse (dipendenti, attrezzature ...) da utilizzare per il progetto. Pertanto, il Responsabile del test può effettuare la pianificazione e la stima corrette per il progetto.

Questa sezione rappresenta le risorse consigliate per il tuo progetto.

Risorse umane

La tabella seguente rappresenta i vari membri del team di progetto

No.

Membro

Compiti

1.

Responsabile del test

Gestisci l'intero progetto

Definisci le direzioni del progetto

Acquisisci risorse adeguate

2.

Tester

Identificare e descrivere tecniche di test / strumenti / architettura di automazione appropriati

Verificare e valutare l'approccio al test

Esegui i test, registro risultati, relazione i difetti.

Il tester potrebbe essere membri in-sourced o in outsourcing, in base al budget del progetto

Per l'attività che richiedeva poche competenze, ti consiglio di scegliere membri esternalizzati per risparmiare sui costi del progetto.

3.

Sviluppatore in test

Implementa i casi di test, il programma di test, la suite di test ecc.

4.

Amministratore del test

Crea e garantisce la gestione e la manutenzione dell'ambiente e delle risorse di test

Supportare Tester per utilizzare l'ambiente di test per l'esecuzione del test

5.

Membri SQA

Assumi il controllo della qualità

Controllare per confermare se il processo di test soddisfa i requisiti specificati

Risorsa di sistema

Per il test, un'applicazione Web, è necessario pianificare le risorse come nelle tabelle seguenti:

No.

Risorse

Descrizioni

1.

server

Installa l'applicazione web sotto test

Ciò include un server Web separato, un server database e un server applicazioni, se applicabile

2.

Strumento di test

Lo strumento di test serve ad automatizzare il test, simulare l'operazione dell'utente, generare i risultati del test

Ci sono tantissimi strumenti di test che puoi usare per questo progetto come Selenium, QTP ... ecc.

3.

Rete

È necessaria una rete che includa LAN e Internet per simulare il business reale e l'ambiente dell'utente

4.

Computer

Il PC che gli utenti utilizzano spesso per connettersi al server web

Passaggio 6) Pianificare l'ambiente di test

Cos'è l'ambiente di test

Un ambiente di test è una configurazione di software e hardware su cui il team di test eseguirà i casi di test. L'ambiente di test è costituito da un ambiente aziendale e utente reale, nonché da ambienti fisici, come server, ambiente di esecuzione front-end.

Come configurare l'ambiente di test

Tornando al tuo progetto, come imposti l' ambiente di test per questo sito web bancario?

Per completare questa attività, è necessaria una forte collaborazione tra il team di test e il team di sviluppo

È necessario porre alcune domande allo sviluppatore per comprendere chiaramente l' applicazione Web sottoposta a test . Ecco alcune domande consigliate. Ovviamente puoi fare le altre domande se ne hai bisogno.

  • Qual è la connessione utente massima che questo sito Web può gestire contemporaneamente?
  • Quali sono i requisiti hardware / software per installare questo sito Web?
  • Il computer dell'utente necessita di impostazioni particolari per navigare nel sito?

La figura seguente descrive l'ambiente di prova del sito web bancario www.demo.guru99.com/V4

Passaggio 7) Pianificazione e stima

Nell'articolo Stima del test, hai già utilizzato alcune tecniche per stimare lo sforzo per completare il progetto. Ora dovresti includere tale stima e la pianificazione nella pianificazione del test

Nella fase di stima del test, supponi di suddividere l'intero progetto in piccole attività e aggiungere la stima per ciascuna attività come di seguito

Compito

Membri

Stima lo sforzo

Crea la specifica del test

Progettista di test

170 ore uomo

Eseguire l'esecuzione del test

Tester, amministratore del test

80 ore uomo

Rapporto di prova

Tester

10 ore uomo

Consegna di prova

20 ore uomo

Totale

280 ore uomo

Quindi crei la pianificazione per completare queste attività.

La pianificazione è un termine comune nella gestione dei progetti. Creando una solida pianificazione nella pianificazione del test, il responsabile del test può utilizzarla come strumento per monitorare lo stato di avanzamento del progetto, controllare gli sforamenti dei costi.

Per creare la schedulazione del progetto, il Test Manager necessita di diversi tipi di input come di seguito:

  • Dipendente e scadenza del progetto : i giorni lavorativi, la scadenza del progetto, la disponibilità delle risorse sono i fattori che hanno influenzato la pianificazione
  • Stima del progetto : in base alla stima, il Test Manager sa quanto tempo ci vuole per completare il progetto. Così può fare il programma appropriato del progetto
  • Rischio di progetto : la comprensione del rischio consente a Test Manager di aggiungere abbastanza tempo extra alla pianificazione del progetto per affrontare i rischi

Facciamo pratica con un esempio:

Supponiamo che il capo voglia completare il progetto Guru99 in un mese, hai già stimato lo sforzo per ogni attività in Test Estimation. È possibile creare la pianificazione come di seguito

Passaggio 8) Test dei risultati finali

Test Deliverables è un elenco di tutti i documenti, strumenti e altri componenti che devono essere sviluppati e mantenuti a supporto dello sforzo di test.

Esistono diversi risultati dei test in ogni fase del ciclo di vita dello sviluppo del software.

I risultati del test vengono forniti prima della fase di test.

  • Documento dei piani di prova.
  • Documenti dei casi di test
  • Specifiche del progetto di prova.

I risultati del test vengono forniti durante il test

  • Script di test
  • Simulatori.
  • Dati di test
  • Matrice di tracciabilità del test
  • Log degli errori e log di esecuzione.

I risultati dei test vengono forniti al termine dei cicli di test.

  • Risultati / rapporti dei test
  • Rapporto sui difetti
  • Linee guida per procedure di installazione / test
  • Note di rilascio

Risorse

Scarica un modello di piano di test di esempio

Scarica il piano di test del sistema di esempio del sito web Guru99 Bank