Test del software - QA, QC e test
Test, garanzia di qualità e controllo di qualità
La maggior parte delle persone si confonde quando si tratta di individuare le differenze tra garanzia di qualità, controllo di qualità e test. Sebbene siano correlati e in una certa misura, possono essere considerati come le stesse attività, ma esistono punti distintivi che li distinguono. La tabella seguente elenca i punti che differenziano QA, QC e Test.
Garanzia di qualità | Controllo di qualità | Test |
---|---|---|
La garanzia di qualità include attività che garantiscono l'implementazione di processi, procedure e standard nel contesto della verifica del software sviluppato e dei requisiti previsti. | Comprende attività che assicurano la verifica di un software sviluppato rispetto a requisiti documentati (o meno in alcuni casi). | Comprende attività che garantiscono l'identificazione di bug / errori / difetti in un software. |
Si concentra su processi e procedure piuttosto che condurre test effettivi sul sistema. | Si concentra sui test effettivi eseguendo il software con l'obiettivo di identificare bug / difetti attraverso l'implementazione di procedure e processi. | Si concentra sui test effettivi. |
Attività orientate al processo. | Attività orientate al prodotto. | Attività orientate al prodotto. |
Attività preventive. | È un processo correttivo. | È un processo preventivo. |
È un sottoinsieme di Software Test Life Cycle (STLC). | Il controllo di qualità può essere considerato come il sottoinsieme della garanzia di qualità. | Il test è il sottoinsieme del controllo di qualità. |
Audit e ispezione
Audit- È un processo sistematico per determinare come viene condotto il processo di test effettivo all'interno di un'organizzazione o di un team. In generale, è un esame indipendente dei processi coinvolti durante il test di un software. Secondo IEEE, è una revisione dei processi documentati che le organizzazioni implementano e seguono. I tipi di audit includono audit di conformità legale, audit interno e audit di sistema.
Inspection- È una tecnica formale che comporta revisioni tecniche formali o informali di qualsiasi artefatto identificando eventuali errori o lacune. Secondo IEEE94, l'ispezione è una tecnica di valutazione formale in cui i requisiti, i progetti oi codici del software vengono esaminati in dettaglio da una persona o un gruppo diverso dall'autore per rilevare errori, violazioni degli standard di sviluppo e altri problemi.
Le riunioni di ispezione formale possono includere i seguenti processi: pianificazione, preparazione della panoramica, riunione di ispezione, rilavorazione e follow-up.
Test e debug
Testing- Implica l'identificazione di bug / errori / difetti in un software senza correggerlo. Normalmente i professionisti con un background di garanzia della qualità sono coinvolti nell'identificazione dei bug. Il test viene eseguito nella fase di test.
Debugging- Implica l'identificazione, l'isolamento e la risoluzione dei problemi / bug. Gli sviluppatori che codificano il software eseguono il debug quando riscontrano un errore nel codice. Il debug fa parte del White Box Testing o Unit Testing. Il debug può essere eseguito nella fase di sviluppo durante lo svolgimento di unit test o in fasi durante la correzione dei bug segnalati.