static testing dynamic testing difference between these two important testing techniques
Il test è Verifica e validazione . Sappiamo tutti che ci vogliono 2 V per completare il test.
Nell'articolo di oggi, faremo un po 'di luce Test statici . Si chiama anche Verifica. Impareremo tutto su di esso e presteremo particolare attenzione a questo perché Test dinamici riceve spesso la massima attenzione e dispone di innumerevoli articoli che la descrivono in dettaglio.
Tuttavia, nessuna discussione sui test statici sarebbe completa senza una spiegazione del significato della sua controparte, il test dinamico. Il test dinamico è la convalida, l'altra 'V'.
Il test dinamico è quando si lavora con il sistema effettivo (non con un artefatto o un modello che rappresenta il sistema), fornendo un input, ricevendo un output e confrontando l'output con il comportamento previsto. È un lavoro pratico con il sistema con l'intento di trovare errori.
Durante questo processo, capiremo come le seguenti due idee sbagliate comuni sui test non siano vere:
- Il test è un'attività che arriva alla fine
- Viene eseguito solo dai tester e gli altri non hanno nulla a che fare
Cominciamo con un rapido riferimento al modello v :
- Sul lato sinistro del modello V, abbiamo attività che non vengono eseguite dal team QA.
- Sul lato destro , ne abbiamo alcuni che sono curati dal team di sviluppo, alcuni dai tester e altri dagli utenti.
Iniziamo con - Raccolta dei requisiti . Viene eseguito dall'analista aziendale e da altri dirigenti di livello superiore: il documento di output per questa fase è il documento dei requisiti aziendali, BRD.
miglior cloud storage per file di grandi dimensioni
La fase successiva è il Sistema di design . La progettazione del sistema è una fase in cui i requisiti aziendali vengono tradotti in Requisiti Funzionali, nel FRD (Functional requirements document).
Quando la traduzione è in corso, il team di sviluppo (che è l'attore principale in questo passaggio) esaminerà il documento BRD passo dopo passo, pagina per pagina e riga per riga. Anche se l'obiettivo principale è consumare i requisiti aziendali per il bene della traduzione, il documento BRD viene rivisto a turno.
Un esempio: Supponiamo che questo sia il BRD per un sito bancario che punta sulla sicurezza. C'è una sezione nel BRD che parla delle regole della password per i vari utenti che creano un account con il sito di online banking. Una delle regole è: Un utente non può utilizzare una password che utilizza per altri account.
Questo non è fattibile. Poiché un sito può semplicemente suggerire come l'utente deve impostare le credenziali di accesso, ma non è possibile, questa restrizione può essere imposta. Quindi, questo requisito non è fattibile, in altre parole, non può essere realizzato tramite il software.
Consideriamo ora i seguenti punti sulla base di questo esempio:
- Come si determina che questo requisito non è costruibile e quindi non può essere testato (in altre parole, non fattibile)? Abbiamo il sito della banca e quindi impostiamo il login e la password e poi ci rendiamo conto che ciò non è possibile? No, ci basiamo semplicemente sulla nostra revisione della BRD e, naturalmente, su un po 'di buon senso degli affari.
- Stiamo testando questo requisito? Certo, ma puramente basato sul senso teorico e concettuale ma non sull'autentico AUT (Application under Test).
- Qual è la forma fisica di questo test? -Una semplice lettura o una revisione formale della BRD o un'analisi di fattibilità ancora più formale dei requisiti aziendali.
Tornando alle nostre idee sbagliate:
- Chi esegue questa revisione della BRD? - Principalmente il team di sviluppo e altri team tecnici responsabili della creazione del prodotto. Non tester.
- Questa revisione è in corso alla fine della creazione del prodotto? No, nella fase iniziale dello sviluppo del progetto. Quindi, non solo la fine.
Tecniche di test statico:
Per riassumere, il test statico è la parte di verifica del test del software che segue i metodi di:
- Revisioni dei documenti
- Procedure dettagliate
- Ispezione
- Analisi di fattibilità o qualsiasi altra forma di analisi per determinare se il software è ciò che dovrebbe essere o meno
- Revisione del codice
Per citare il CSTE CBOK, 'La verifica risponde alla domanda:' Abbiamo creato il sistema giusto? ' mentre gli indirizzi di convalida, 'Abbiamo costruito il sistema giusto?'
Di seguito sono riportate tutte le attività di test statico che avvengono sul lato sinistro del modello V.
Stadio SDLC | Produzione | Verifica | Attori |
---|---|---|---|
Raccolta dei requisiti aziendali | BRD (documento sui requisiti aziendali) | Documento di ambito (se presente) | |
Progettazione dei requisiti di sistema | FRD (documento sui requisiti funzionali) | Rivede / verifica la BRD | Dev, team tecnici |
Progettazione dei requisiti tecnici | TDD (Documento di progettazione tecnica) | Rivede / verifica l'FRD | Dev, team tecnici |
Design (codice) | Codice | Rivede / verifica il TDD. Revisione del codice da parte del team di sviluppo per completezza, formato, ecc. | Dev, team tecnici |
Nota: Queste informazioni possono essere estrapolate per progetti seguendo qualsiasi metodologia di sviluppo poiché i passaggi saranno più o meno simili.
Sul lato destro del modello V c'è la convalida.
Tecniche di test dinamico:
- Test unitario
- Test d'integrazione
- Test di sistema
Le fasi Unità, integrazione, sistema e UAT riguardano la creazione di test da eseguire sull'AUT durante le varie fasi del suo sviluppo. Anche se i test mirano a convalidare diversi tipi di requisiti, sono tutti test uguali.
Quindi, qualsiasi forma di test in cui abbiamo un test che deve essere eseguito su un AUT e il suo output è richiesto per determinare il risultato del test (riuscito o meno) - è la convalida.
Ora, sarebbe giusto generalizzare che sul lato destro (RHS) del modello V non c'è alcuna verifica? La risposta è no.
Tutti i test che vengono creati in ogni fase dell'RHS vengono rivisti più volte durante la fase di creazione / finalizzazione del test. Il processo dettagliato di revisione della documentazione di prova è all'indirizzo https://www.softwaretestinghelp.com/test-documentation-reviews/
Sulla RHS:
- I test e il codice vengono esaminati nelle fasi di test di unità / integrazione dagli sviluppatori.
- I test di sistema vengono sottoposti a una revisione tra pari durante la documentazione e al completamento vengono sottoposti a una revisione da parte del team di sviluppo e dell'analista aziendale.
- I test UAT vengono sottoposti a una revisione da parte del team QA e degli utenti prima che inizi l'UAT.
Conclusione
In conclusione, il test statico è un'importante tecnica di test che assume la forma di revisione dei requisiti aziendali, revisione dei requisiti funzionali, revisioni della progettazione, procedure dettagliate del codice e revisione della documentazione di test. È un'attività continua e non svolta solo dai tester.
Convalida, la parte del test dinamico è più pratica e avviene sul prodotto stesso e non su un artefatto o una rappresentazione del prodotto. Un processo molto formale di identificazione di casi / condizioni di test, considerazioni sulla copertura, esecuzione e segnalazione di difetti caratterizzano tutti i metodi di test dinamici.
Circa l'autore: Questo articolo è stato scritto dal membro del team STH Swati S.
Si prega di condividere commenti, domande ed esperienze sull'argomento del test statico e dinamico.
Lettura consigliata
- Differenza tra desktop, test server client e test Web
- Tecniche di stima agile: una stima reale in un progetto agile
- Black Box Testing: un tutorial approfondito con esempi e tecniche
- Che cos'è il test di conformità (test di conformità)?
- Qual è la differenza tra i test SIT e UAT?
- Alpha test e beta test (una guida completa)
- Differenze chiave tra il test della scatola nera e il test della scatola bianca
- Le differenze tra test unitari, test di integrazione e test funzionali