Che cos'è il test di sistema? Tipi & Definizione con esempio

Sommario:

Anonim

Che cos'è il test di sistema?

SYSTEM TESTING è un livello di test che convalida il prodotto software completo e completamente integrato. Lo scopo di un test di sistema è valutare le specifiche del sistema end-to-end. Di solito, il software è solo un elemento di un più ampio sistema basato su computer. Infine, il software è interfacciato con altri sistemi software / hardware. Il test di sistema è in realtà una serie di diversi test il cui unico scopo è quello di esercitare il sistema completo basato su computer.

In questo tutorial impareremo

  • Il test di sistema è Blackbox
  • Cosa verifichi in System Testing?
  • Gerarchia di test del software
  • Diversi tipi di test di sistema
  • Quali tipi di test di sistema dovrebbero utilizzare i tester?

Il test di sistema è Blackbox

Due categorie di test del software

  • Test della scatola nera
  • Test della scatola bianca

Il test di sistema rientra nella categoria di test della scatola nera dei test del software.

Il white box testing è il test del funzionamento interno o del codice di un'applicazione software. Al contrario, la scatola nera o il test di sistema è l'opposto. Il test di sistema coinvolge il funzionamento esterno del software dal punto di vista dell'utente.

Fare clic qui se il video non è accessibile

Cosa verifichi in System Testing?

Il test di sistema implica il test del codice software per quanto segue

  • Testare le applicazioni completamente integrate, comprese le periferiche esterne, al fine di verificare come i componenti interagiscono tra loro e con il sistema nel suo complesso. Questo è anche chiamato scenario di test End to End.
  • Verificare il test approfondito di ogni input nell'applicazione per controllare gli output desiderati.
  • Test dell'esperienza dell'utente con l'applicazione.

Questa è una descrizione molto semplice di ciò che è coinvolto nel test del sistema. È necessario creare casi di test dettagliati e suite di test che testino ogni aspetto dell'applicazione come visto dall'esterno senza guardare il codice sorgente effettivo.

Gerarchia di test del software

Come con quasi tutti i processi di ingegneria del software, il test del software ha un ordine prestabilito in cui le cose dovrebbero essere fatte. Di seguito è riportato un elenco di categorie di test del software disposte in ordine cronologico. Questi sono i passaggi necessari per testare completamente il nuovo software in preparazione per la sua commercializzazione:

  • Test di unità eseguiti su ogni modulo o blocco di codice durante lo sviluppo. Lo Unit Testing viene normalmente eseguito dal programmatore che scrive il codice.
  • Test di integrazione eseguito prima, durante e dopo l'integrazione di un nuovo modulo nel pacchetto software principale. Ciò implica il test di ogni singolo modulo di codice. Un pezzo di software può contenere diversi moduli che sono spesso creati da diversi programmatori diversi. È fondamentale testare l'effetto di ogni modulo sull'intero modello di programma.
  • Test del sistema eseguito da un agente di test professionale sul prodotto software completato prima che venga introdotto sul mercato.
  • Test di accettazione: beta test del prodotto eseguito dagli utenti finali effettivi.

Diversi tipi di test di sistema

Esistono più di 50 tipi di test di sistema. Per un elenco completo dei tipi di test del software, fare clic qui. Di seguito abbiamo elencato i tipi di test di sistema che una grande azienda di sviluppo software normalmente utilizza

  1. Usability Testing - si concentra principalmente sulla facilità d'uso dell'applicazione da parte dell'utente, flessibilità nella gestione dei controlli e capacità del sistema di soddisfare i propri obiettivi
  2. Test di carico: è necessario sapere che una soluzione software funzionerà con carichi reali.
  3. Test di regressione: implica test eseguiti per assicurarsi che nessuna delle modifiche apportate nel corso del processo di sviluppo abbia causato nuovi bug. Inoltre, garantisce che nel tempo non compaiano vecchi bug dall'aggiunta di nuovi moduli software.
  4. Test di ripristino: viene eseguito per dimostrare che una soluzione software è affidabile, affidabile e può recuperare con successo da possibili arresti anomali.
  5. Test di migrazione: viene eseguito per garantire che il software possa essere spostato dalle infrastrutture di sistema più vecchie alle infrastrutture di sistema attuali senza problemi.
  6. Test funzionale: noto anche come test di completezza funzionale, il test funzionale implica il tentativo di pensare a eventuali funzioni mancanti. I tester potrebbero creare un elenco di funzionalità aggiuntive che un prodotto potrebbe avere per migliorarlo durante i test funzionali.
  7. Test hardware / software - IBM si riferisce ai test hardware / software come "test hardware / software". Questo è il momento in cui il tester concentra la sua attenzione sulle interazioni tra l'hardware e il software durante il test del sistema.

Quali tipi di test di sistema dovrebbero utilizzare i tester?

Esistono oltre 50 diversi tipi di test di sistema. I tipi specifici utilizzati da un tester dipendono da diverse variabili. Queste variabili includono:

  • Per chi lavora il tester - Questo è un fattore importante nel determinare i tipi di test di sistema che un tester utilizzerà. I metodi utilizzati dalle grandi aziende sono diversi da quelli utilizzati dalle medie e piccole imprese.
  • Tempo disponibile per il test - In definitiva, è possibile utilizzare tutti i 50 tipi di test. Il tempo è spesso ciò che ci limita a utilizzare solo i tipi più rilevanti per il progetto software.
  • Risorse disponibili per il tester - Ovviamente alcuni tester non avranno le risorse necessarie per condurre un tipo di test. Ad esempio, se sei un tester che lavora per una grande azienda di sviluppo software, è probabile che tu abbia un costoso software di test automatizzato non disponibile ad altri.
  • Formazione del software Tester: esiste una certa curva di apprendimento per ogni tipo di test del software disponibile. Per utilizzare alcuni dei software coinvolti, un tester deve imparare a usarli.
  • Testing Budget - Il denaro diventa un fattore non solo per le piccole aziende e per i singoli sviluppatori di software, ma anche per le grandi aziende.