Tecniche di test del software con esempi di progettazione di casi di test

Cos'è la tecnica di test del software?

Le tecniche di test del software ti aiutano a progettare casi di test migliori. Poiché non è possibile eseguire test esaustivi; Le tecniche di test manuale aiutano a ridurre il numero di casi di test da eseguire aumentando al contempo la copertura del test. Aiutano a identificare le condizioni di test che altrimenti sarebbero difficili da riconoscere.

Analisi del valore limite (BVA)

L'analisi del valore limite si basa su test ai confini tra le partizioni. Comprende i limiti massimo, minimo, interno o esterno, valori tipici e valori di errore.

Si vede generalmente che un gran numero di errori si verificano ai confini dei valori di input definiti piuttosto che al centro. È noto anche come BVA e fornisce una selezione di casi di test che esercitano valori limite.

Questa tecnica di test della scatola nera integra il partizionamento di equivalenza. Questa tecnica di test del software si basa sul principio che, se un sistema funziona bene per questi valori particolari, funzionerà perfettamente anche per tutti i valori compresi tra i due valori limite.

Linee guida per l'analisi del valore limite

  • Se una condizione di input è ristretta tra i valori x e y, allora i casi di test dovrebbero essere progettati con valori x e y così come valori che sono sopra e sotto x e y.
  • Se una condizione di input è un numero elevato di valori, è necessario sviluppare il caso di test che deve esercitare i numeri minimo e massimo. Qui vengono testati anche i valori superiori e inferiori ai valori minimo e massimo.
  • Applicare le linee guida 1 e 2 alle condizioni di output. Fornisce un output che riflette i valori minimo e massimo attesi. Verifica anche i valori inferiori o superiori.

Esempio:

Input condition is valid between 1 to 10

Boundary values 0,1,2 and 9,10,11

Partizionamento di classi di equivalenza

Il partizionamento di classi equivalenti consente di dividere un insieme di condizioni di test in una partizione che dovrebbe essere considerata la stessa. Questo metodo di test del software divide il dominio di input di un programma in classi di dati da cui dovrebbero essere progettati i casi di test.

Il concetto alla base di questa tecnica di progettazione del caso di test è che il caso di test di un valore rappresentativo di ciascuna classe è uguale a un test di qualsiasi altro valore della stessa classe. Ti consente di identificare classi di equivalenza valide e non valide.

Esempio:

Le condizioni di input sono valide tra

 1 to 10 and 20 to 30

Esistono quindi cinque classi di equivalenza

--- to 0 (invalid)
1 to 10 (valid)
11 to 19 (invalid)
20 to 30 (valid)
31 to --- (invalid)

Seleziona i valori da ciascuna classe, ovvero

-2, 3, 15, 25, 45

Leggi anche di più su – Analisi del valore limite e test di partizionamento di equivalenza

Test basati su tabelle decisionali

Una tabella decisionale è detta anche tabella causa-effetto. Questa tecnica di test del software viene utilizzata per funzioni che rispondono a una combinazione di input o eventi. Ad esempio, un pulsante di invio dovrebbe essere abilitato se l'utente ha inserito tutti i campi obbligatori.

Il primo compito è identificare le funzionalità in cui l'output dipende da una combinazione di input. Se è presente un ampio insieme di combinazioni di input, dividerlo in sottoinsiemi più piccoli utili per la gestione di una tabella decisionale.

Per ogni funzione è necessario creare una tabella ed elencare tutti i tipi di combinazioni di ingressi e le rispettive uscite. Ciò aiuta a identificare una condizione che viene trascurata dal tester.

Di seguito sono riportati i passaggi per creare una tabella decisionale:

  • Elenca gli input in righe
  • Inserisci tutte le regole nella colonna
  • Compila la tabella con le diverse combinazioni di input
  • Nell'ultima riga, annota l'output rispetto alla combinazione di input.

Esempio: un pulsante di invio in un modulo di contatto è abilitato solo quando tutti gli input vengono immessi dall'utente finale.

Test basati su tabelle decisionali

Transizione di stato

Nella tecnica di transizione di stato, i cambiamenti nelle condizioni di input modificano lo stato dell'applicazione sotto test (AUT). Questa tecnica di test consente al tester di testare il comportamento di un AUT. Il tester può eseguire questa azione inserendo varie condizioni di input in una sequenza. Nella tecnica di transizione di stato, il team di test fornisce valori di test di input positivi e negativi per valutare il comportamento del sistema.

Linee guida per la transizione statale:

  • La transizione di stato dovrebbe essere utilizzata quando un team di test sta testando l'applicazione per un insieme limitato di valori di input.
  • La tecnica di progettazione del caso di test dovrebbe essere utilizzata quando il team di test desidera testare una sequenza di eventi che accadono nell'applicazione sotto test.

Esempio:

Nell'esempio seguente, se l'utente immette una password valida in uno qualsiasi dei primi tre tentativi, sarà in grado di accedere correttamente. Se l'utente inserisce una password non valida al primo o al secondo tentativo, gli verrà richiesto di inserire nuovamente la password. Quando l'utente inserisce la password in modo errato 3rd tempo, l'azione è stata intrapresa e l'account verrà bloccato.

Diagramma di transizione di stato

Diagramma di transizione di stato

In questo diagramma, quando l'utente fornisce il numero PIN corretto, viene spostato nello stato Accesso concesso. La tabella seguente viene creata in base al diagramma precedente-

Tabella di transizione di stato

PIN corretto PIN errato
S1) Inizio S5 S2
S2)1st tentativo S5 S3
S3)2nd tentativo S5 S4
S4)3rd tentativo S5 S6
S5) Accesso concesso - -
S6) Conto bloccato - -

Nella tabella sopra riportata quando l'utente inserisce il PIN corretto, lo stato passa ad Accesso concesso. E se l'utente inserisce una password errata, viene spostato allo stato successivo. Se fa lo stesso 3rd volta, raggiungerà lo stato di account bloccato.

Errore indovinare

Errore indovinare è una tecnica di test del software basata sull'ipotesi dell'errore che può prevalere nel codice. La tecnica è fortemente basata sull'esperienza in cui gli analisti di test utilizzano la loro esperienza per indovinare la parte problematica dell'applicazione di test. Pertanto, gli analisti del test devono essere qualificati ed esperti per individuare meglio gli errori.

La tecnica conta un elenco di possibili errori o situazioni soggette a errori. Quindi il tester scrive a caso di prova per smascherare quegli errori. Per progettare casi di test basati su questa tecnica di test del software, l'analista può utilizzare le esperienze passate per identificare le condizioni.

Linee guida per indovinare gli errori:

  • Il test dovrebbe utilizzare l'esperienza precedente di test di applicazioni simili
  • Comprensione del sistema in prova
  • Conoscenza degli errori tipici di implementazione
  • Ricorda le aree precedentemente problematiche
  • Valutare i dati storici e i risultati dei test

Conclusione

  • La tecnica di progettazione dei casi di test consente di progettare casi migliori. Ci sono cinque tecniche principalmente utilizzate.
  • L'analisi del valore limite esegue il test ai confini tra le partizioni.
  • Il partizionamento di classi equivalenti consente di dividere un insieme di condizioni di test in una partizione che dovrebbe essere considerata la stessa.
  • La tecnica di test del software Decision Table viene utilizzata per funzioni che rispondono a una combinazione di input o eventi.
  • Nella tecnica State Transition i cambiamenti nelle condizioni di input modificano lo stato dell'Applicazione in test (AUT)
  • L'ipotesi dell'errore è una tecnica di test del software basata sull'ipotesi dell'errore che può prevalere nel codice.