validation testing ultimate guide
Esplora l'importanza dei test di convalida:
Cosa imparerai:
- Che cos'è il test di convalida?
- Differenza tra verifica e convalida
- Fasi coinvolte
- Protocollo o casi di test di convalida del campione
- Conclusione
- Lettura consigliata
Che cos'è il test di convalida?
Il test di convalida è il processo per garantire che il software testato e sviluppato soddisfi le esigenze del cliente / utente. La logica o gli scenari dei requisiti aziendali devono essere testati in dettaglio. Tutte le funzionalità critiche di un'applicazione devono essere testate qui.
In qualità di tester, è sempre importante sapere come verificare la logica di business o gli scenari che ti vengono forniti. Uno di questi metodi che aiuta nella valutazione dettagliata delle funzionalità è il processo di convalida.
Ogni volta che ti viene chiesto di eseguire un test di convalida, ci vuole una grande responsabilità in quanto è necessario testare tutti i requisiti aziendali critici in base alle esigenze dell'utente. Non dovrebbe esserci nemmeno una singola mancanza sui requisiti richiesti dall'utente. Quindi una conoscenza approfondita dei test di convalida è molto importante.
In qualità di tester, è necessario valutare se i risultati dell'esecuzione del test sono conformi a quanto indicato nel documento dei requisiti. Qualsiasi deviazione dovrebbe essere segnalata immediatamente e quella deviazione è quindi chiamata bug.
Strumenti come HP Quality Center, Selenium, Appium, ecc. Vengono utilizzati per eseguire il test di convalida e possiamo memorizzare i risultati del test lì. Un piano di test adeguato, esecuzioni di test, report sui difetti, report e metriche sono i risultati importanti da inviare.
Dal punto di vista aziendale, il test di validazione in simple si svolge nei seguenti passaggi:
- Raccogli i requisiti aziendali per i test di convalida dall'utente finale.
- Preparare il piano aziendale e inviarlo per l'approvazione in loco / alle parti interessate coinvolte.
- Dopo l'approvazione del piano, inizi a scrivere i casi di test necessari e li invii per l'approvazione.
- Una volta approvato, si inizia a completare il test con il software, l'ambiente richiesto e si inviano i risultati come richiesto dal cliente.
- Dopo l'approvazione dei risultati finali, il test UAT viene eseguito dal cliente.
- Dopodiché, il software va in produzione.
domande e risposte dell'intervista di test del software per 2 anni di esperienza
Esploriamo ora di più in dettaglio la convalida.
Differenza tra verifica e convalida
Cerchiamo di capirli con un esempio in modo semplice.
Esempio:
Requisiti del cliente:
L'iniezione proposta non dovrebbe pesare più di 2 cm.
Test di verifica:
- Verificare se l'iniezione è l'iniezione che non pesa oltre 2 cm utilizzando l'elenco di controllo, la revisione e il design.
Test di convalida:
- Verificare se l'iniezione non supera i 2 cm utilizzando test manuali o automatizzati.
- È necessario verificare ogni possibile scenario relativo al peso di iniezione utilizzando qualsiasi metodo di test idoneo (metodi funzionali e non funzionali).
- Verificare la presenza di misure inferiori a 2 cm e superiori a 2 cm.
Verifica | Validazione |
---|---|
Il processo controlla solo il design, il codice e il programma. | Dovrebbe valutare l'intero prodotto compreso il codice. |
Revisioni, procedure dettagliate, ispezioni e controlli a tavolino coinvolti. | Sono coinvolti metodi di test funzionali e non funzionali. Viene effettuato un controllo approfondito del prodotto. |
Controlla il software con le specifiche. | Controlla se il software soddisfa le esigenze dell'utente. |
Fasi coinvolte
- Qualifica di progettazione: Ciò include la creazione del piano di test in base ai requisiti aziendali. Tutte le specifiche devono essere menzionate chiaramente.
- Qualificazione dell'installazione: Ciò include l'installazione del software in base ai requisiti.
- Qualifica operativa: Ciò include la fase di test basata sulla specifica dei requisiti dell'utente.
Questo può includere Test di funzionalità:
-
- Test unitario - Scatola nera, scatola bianca, scatola grigia.
- Test d'integrazione - Dall'alto al basso, dal basso verso l'alto, Big bang.
- Test di sistema - Sanità, fumo e test di regressione.
- Qualificazione delle prestazioni: UAT (test di accettazione dell'utente) - Alpha e Beta testing.
- Produzione
Qualificazione del progetto
Qualificazione del progetto significa semplicemente che devi preparare il design del software in modo tale che soddisfi le specifiche dell'utente. In primo luogo è necessario ottenere il file Documento URS (User Requirements Specification) dal cliente per procedere con la progettazione.
Strategia di test:
Questo documento costituisce la base per la preparazione del piano di test. Di solito è preparato dal responsabile del team o dal manager del progetto. Descrive come procederemo per testare e raggiungere l'obiettivo desiderato.
Per incorporare tutte le procedure dovrebbe essere progettato un piano adeguato e approvato dalle parti interessate. Quindi facci sapere i componenti del piano di test.
In alcuni progetti, il piano di test e la strategia di test possono essere incorporati come un unico documento. Vengono inoltre preparati documenti di strategia separati per un progetto complesso (principalmente nella tecnica di automazione).
Componenti del piano di test di convalida:
- Descrizione del progetto
- Capire i requisiti
- Scopo del test
- Livelli di test e programma di test
- Esegui la creazione del piano
- Requisiti hardware-software e di personale
- Ruoli e responsabilità
- Presupposti e dipendenze
- Rischi e mitigazione
- Report e metriche
Descrizione del progetto: Qui è necessario chiarire tutta la descrizione dell'applicazione che ti è stata assegnata per il test. Dovrebbe includere tutte le funzionalità dell'app.
Comprensione dei requisiti: Dopo aver ottenuto l'USR, è necessario menzionare i requisiti compresi da parte tua. Puoi anche sollevare chiarimenti se ce ne sono. Questo è il criterio di base o di test per il test.
Scopo del test: Lo scopo deve includere i moduli in dettaglio insieme alle funzionalità di alto livello. Devi dire al cliente quali requisiti copriresti durante il test.
Da una prospettiva aziendale, potrebbe essere richiesto di eseguire test di convalida per i requisiti critici di un'applicazione. Significa semplicemente che dici cosa sarà coperto e cosa no .
Livelli di prova e programma di prova: È necessario menzionare quanti round di test devono essere condotti. Lo sforzo complessivo per il progetto di test viene stimato utilizzando le tecniche di stima standard come la stima Test Case Point (TCP) ecc.
Come il nome suggerisce programma di test descrive come verranno eseguiti i test. Dovrebbe anche indicare come e quando verranno condotte l'approvazione e le revisioni.
Esempio:
La progettazione di una pagina web è il progetto considerato.
I livelli di test includono:
Livello 1: Test del fumo
Livello 2: Test unitario
Livello 3: Test d'integrazione
Livello 3: Test di sistema
Livello 3: Test di accettazione
Programma dei test:
- Presentazione del piano - Giorno 1
- Progettazione di casi di test - Giorno 2
- Corsa a secco e correzione dei bug - 4 ° giorno
- Revisione- 5 ° giorno
- Corsa formale - 6 ° giorno
- Deliverable inviati per approvazione - 8 ° giorno
- Rapporti - 10 ° giorno
Eseguire la creazione del piano: Il piano di esecuzione indica il numero di esecuzioni richieste per il test. Ogni corsa eseguita fuori sede verrà annotata dal team in loco.
Per esempio, quando usi l'estensione Strumento HP Quick Test Professional per l'esecuzione, il numero di esecuzioni verrà mostrato nella scheda Esecuzioni del piano di test.
Requisiti hardware-software e di personale:
- Requisiti hardware e software come i dispositivi, le versioni del browser, IOS, gli strumenti di test richiesti per il progetto.
- Assumere personale significa nominare le persone necessarie per il test. Puoi menzionare il conteggio della squadra qui.
- Se hai bisogno di membri extra per il test, puoi richiedere in loco a seconda dell'ambito del test. Semplicemente quando il numero di casi di test aumenta, significa che sono necessari più membri del team per eseguirli.
Ruoli e responsabilità: Ciò implica l'assegnazione di compiti ai relativi ruoli responsabili dello svolgimento dei vari livelli di test.
Per esempio,
sistemi operativi open source per pc
Un'app deve essere testata da un team composto da 4 membri per eseguire 4 protocolli di convalida e puoi delegare le responsabilità come segue:
- Cavo di prova: Progettazione del piano di prova
- Membro del team 1: Progettazione ed esecuzione dei protocolli 1,2.
- Membro del team 2: Progettazione ed esecuzione dei protocolli 3,4.
- Membro della squadra: Preparazione di report, revisione e metriche.
Presupposti e dipendenze: Ciò significa che le ipotesi fatte durante la progettazione e le dipendenze identificate per il test verranno incluse qui.
Rischi e mitigazione: Rischi relativi alla pianificazione del test come la disponibilità degli ambienti desiderati, build, ecc insieme a piani di mitigazione e di emergenza.
Report e metriche: I fattori che sono stati utilizzati per i test e le relazioni agli stakeholder devono essere menzionati qui.
Di seguito viene fornito un esempio di app mobile:
Qualificazione dell'installazione
- La qualifica di installazione contiene dettagli come quali e quanti ambienti di test verrebbero utilizzati, quale livello di accesso è richiesto per i tester in ogni ambiente insieme ai dati di test richiesti. Può includere la compatibilità del browser, gli strumenti necessari per l'esecuzione, i dispositivi necessari per il test, ecc. Il sistema in fase di sviluppo deve essere installato in base ai requisiti dell'utente.
- I dati di test possono essere richiesti per testare alcune applicazioni e devono essere forniti dalla persona appropriata. È un prerequisito fondamentale.
- Alcune applicazioni potrebbero richiedere un database. Dobbiamo mantenere tutti i dati richiesti per i test pronti in un database per convalidare le specifiche.
Per esempio, Una nuova app dice che 'abc' deve essere testata su dispositivi mobili (Android 4.3.1) e browser (Chrome 54), in tal caso, dobbiamo tenere traccia di quanto segue:
- Verificare se è stata data la corretta autorizzazione per controllare il sito dell'app “abc”.
- Verifica se sono disponibili i dispositivi utilizzati per testare l'app come mobile (Android / ios), browser-Chrome, Internet Explorer con la versione richiesta.
- Controlla se sono installati correttamente con le versioni specificate (Es: Chrome 54, Android versione 4.3.1).
- Assicurati che l'app sia accessibile sia dal browser che dal dispositivo mobile.
Qualificazione operativa
La qualificazione operativa garantisce che ogni modulo e sottomodulo progettato per l'applicazione sotto test funzioni correttamente come previsto nell'ambiente desiderato.
Un test di convalida, in generale, viene eseguito nella seguente gerarchia.
I test funzionali svolgono un ruolo importante nei test di convalida. Significa semplicemente che devi convalidare la funzionalità dell'applicazione in base a ogni requisito critico menzionato. Ciò apre la strada alla mappatura dei requisiti menzionati nel documento delle specifiche funzionali e garantisce che il prodotto soddisfi tutti i requisiti menzionati.
Test funzionali e suoi tipi
Come suggerisce il nome, il test funzionale sta testando le funzioni, ovvero cosa deve fare il software. Le funzionalità del software saranno definite nel documento di specifica dei requisiti.
Diamo una rapida occhiata ai suoi tipi.
# 1) Test unitario:
Il test unitario sta testando le singole unità / moduli / componenti / metodi di un dato sistema. La convalida del campo, il controllo del layout, il design, ecc. Vengono testati con diversi input dopo la codifica. Ogni riga del codice deve essere convalidata per i singoli casi di unit test.
Il test di unità viene eseguito dagli stessi sviluppatori. Il costo della correzione dei bug è inferiore qui rispetto agli altri livelli di test.
Esempio:
Valutando un ciclo del codice per una funzione, si dice che la scelta di genere è un esempio di test unitario.
# 2) Test della scatola nera:
Il test del comportamento di un'applicazione per le funzionalità desiderate rispetto ai requisiti senza focalizzare i dettagli interni del sistema è chiamato test della scatola nera. Di solito viene eseguito da un team di test indipendente o dagli utenti finali dell'applicazione.
L'applicazione viene testata con gli input pertinenti e viene testata per convalidare se il sistema si comporta come desiderato. Questo può essere utilizzato per testare i requisiti sia funzionali che non funzionali.
# 3) Test della scatola bianca:
Test della scatola bianca non è altro che un controllo dettagliato del codice del programma tramite codice. L'intero funzionamento dell'applicazione dipende dal codice scritto, quindi è necessario testare il codice con molta attenzione. È necessario controllare ogni unità e la sua integrazione come un intero modulo in modo graduale.
Un tester con conoscenze di programmazione è un criterio indispensabile qui. Questo rileva chiaramente se c'è qualche deviazione nel flusso di lavoro dell'applicazione. È utile sia per gli sviluppatori che per i tester.
# 4) Test della scatola grigia:
Il test della scatola grigia è una combinazione di test della scatola bianca e della scatola nera. Qui si conosce una conoscenza parziale della struttura o del codice dell'unità da testare.
Test di integrazione e suoi tipi
I singoli componenti del software che sono già testati in unit test vengono integrati e testati insieme per testare le loro funzionalità nel loro complesso, al fine di garantire il flusso di dati attraverso i moduli.
Questo viene fatto dagli stessi sviluppatori o da un team di test indipendente. Questo può essere fatto dopo che due o più unità sono state testate.
Approccio dall 'alto verso il basso:
In questo approccio, le unità superiori vengono testate per prime, quindi le unità di livello inferiore vengono testate una alla volta in modo graduale. Gli stub di test che possono essere utilizzati sono necessari per simulare le unità di livello inferiore che potrebbero non essere disponibili durante le fasi iniziali.
Approccio bottom-up:
In questo approccio, le unità inferiori vengono prima testate, integrate e quindi vengono testate le unità di livello superiore. Gli stub di test che possono essere utilizzati sono necessari per simulare le unità di livello superiore che potrebbero non essere disponibili durante le fasi iniziali.
Test di sistema e suoi tipi
Il test dell'intero sistema / software viene chiamato test del sistema. Il sistema è completamente testato rispetto alle specifiche dei requisiti funzionali. Il test del sistema viene eseguito rispetto ai requisiti funzionali e non funzionali. Il test della scatola nera è generalmente preferito per questo tipo di test.
# 1) Test del fumo:
Quando i costruttori danno la build da testare inizialmente, dobbiamo testare la build a fondo. Questo si chiama test del fumo. Dobbiamo stabilire se la build è in grado di eseguire ulteriori test o meno.
Per eseguire la convalida, è necessaria una build adeguata. Quindi il test del fumo viene eseguito in primo luogo dal team di test. Il flusso di lavoro dell'applicazione testata deve essere testato con i casi di test o senza di esso. Il caso di test che copre l'intero flusso è utile per questo test.
# 2) Test di sanità mentale:
Nel test di integrità, vengono testate le principali funzionalità dei moduli dell'applicazione sotto test. Durante il test di un sito Web che ha 3 schede, ovvero creazione del profilo, istruzione, accesso, ecc., In IRCTC , le principali funzionalità di tutte queste schede devono essere verificate senza andare molto in profondità.
I menu, i sottomenu, le schede devono essere testati in tutti i moduli. È un sottoinsieme del test di regressione poiché il test viene eseguito solo sul flusso principale e non in profondità.
# 3) Test di regressione:
Per ogni versione del progetto, il team di sviluppo può introdurre alcune modifiche. La convalida se le nuove modifiche introdotte non hanno influenzato il flusso di lavoro del sistema è chiamata test di regressione. Solo alcuni casi di test relativi ai nuovi requisiti devono essere testati qui.
Qualificazione delle prestazioni
UAT (User Acceptance Testing):
Questa è l'ultima fase del test che viene eseguita per garantire che il sistema si comporti come richiesto in base ai requisiti specificati. Questo viene fatto dal cliente. Una volta che il client ha certificato e autorizzato i test di sistema, il prodotto può essere distribuito.
Alpha e beta test:
Il test alpha viene eseguito dagli sviluppatori sull'applicazione prima del rilascio sul sito di sviluppo del software. Implica il test della scatola in bianco e nero. Il beta test viene eseguito presso il cliente dopo che il prodotto è stato sviluppato e distribuito.
Protocollo o casi di test di convalida del campione
Con la mia esperienza, ho scritto questo protocollo per l'accesso a Gmail.
Il controllo approfondito della funzionalità di accesso coperta è ciò che è effettivamente la convalida. Ma vorrei menzionare che lo stile delle colonne delle frasi utilizzate può differire completamente e dipendere dai requisiti del cliente.
=> Scarica i casi di test di convalida di esempio: Caso di test dell'accesso a Gmail
Conclusione
Bene, la convalida consiste nell'analizzare in dettaglio le funzionalità di un prodotto. In qualità di tester di convalida, è necessario ricordarsi sempre di segnalare le deviazioni in quel momento per ottenere risultati ottimali nei test.
quali sono le basi della programmazione del computer
Ogni test case che viene scritto dovrebbe essere nitido, conciso e comprensibile anche all'uomo comune. Il tester di convalida dovrebbe garantire che il prodotto giusto venga sviluppato in base ai requisiti specificati.
Come guida per i test di convalida, ho coperto il processo associato alla convalida.
Qualifica di progetto che coinvolge il piano di validazione, Qualifica di installazione che parla della rata hardware-software, una Qualifica operativa che coinvolge il collaudo dell'intero sistema, Qualifica di prestazione che prevede il test di accettazione dell'utente che fornisce l'autorizzazione alla produzione.
Spero che questo articolo abbia arricchito le tue conoscenze sul concetto di test di convalida !!
Lettura consigliata
- Migliori strumenti di test del software 2021 (Strumenti di automazione del test QA)
- Alpha test e beta test (una guida completa)
- Differenze chiave tra il test della scatola nera e il test della scatola bianca
- Test funzionale vs test non funzionale
- Download dell'eBook Testing Primer
- Guida completa al test di verifica della costruzione (test BVT)
- Che cos'è il test di sistema: una guida definitiva per principianti
- Guida al test di sicurezza delle applicazioni Web