Analisi dei valori limite e partizionamento delle equivalenze

โšก Riepilogo intelligente

Il partizionamento di equivalenza e l'analisi dei valori limite sono tecniche di test black-box che comprimono ampi intervalli di input in classi di equivalenza e testano i bordi delle partizioni, offrendo un rilevamento dei difetti efficace con una copertura efficiente sia degli input validi che di quelli non validi.

  • Input della partizione: Raggruppa i valori in classi valide e non valide per eliminare la ridondanza.
  • Target Confini: Verifica i valori minimi, prossimi al minimo, nominali, prossimi al massimo e massimi.
  • Unisci entrambi: Utilizzare prima la partizione di equivalenza, quindi l'analisi dei valori limite per i difetti dei bordi.
  • Massimizza la copertura: Un singolo valore per classe convalida il comportamento per tutti gli input equivalenti.
  • Usa l'intelligenza artificiale Generators: Gli strumenti di intelligenza artificiale automatizzano il rilevamento delle partizioni e la creazione dei casi limite.

Modello a cinque punti per l'analisi dei valori limite

I test esaustivi sono raramente fattibili a causa dei limiti di tempo e combinatori. Il partizionamento di equivalenza e l'analisi dei valori limite risolvono questo problema raggruppandoping input simili e puntando ai loro bordi per una copertura piรน forte con meno casi.

Che cos'รจ la partizione di equivalenza?

Partizionamento per equivalenza (chiamato anche Partizionamento per Classi di Equivalenza o ECP) โ€‹โ€‹รจ una tecnica a scatola nera che divide i dati di input in gruppi di valori equivalenti. Il tester sceglie un rappresentante per classe, presupponendo che il software si comporti allo stesso modo per ogni membro.

  • Suddivide il dominio di input in classi di equivalenza valide e non valide.
  • Si applica a tutti livelli di testโ€”unitร , integrazione, sistema e accettazione.

Che cos'รจ l'analisi dei valori limite?

Analisi del valore limite (BVA)Il controllo di validitร  del modello (BVA), noto anche come verifica dell'intervallo, convalida gli estremi di ciascuna classe di equivalenza. Poichรฉ i difetti si concentrano ai limiti dell'intervallo, il BVA si concentra su cinque punti chiave:

  1. Minimo
  2. Appena sopra il minimo
  3. Un valore nominale
  4. Appena sotto il massimo
  5. Massimo

Modello a cinque punti per l'analisi dei valori limite

BVA integra il partizionamento di equivalenza: una volta definite le classi, i loro valori limite emergono con un errore di uno e bug sui bordi.

Perchรฉ utilizzare la partizione di equivalenza e l'analisi dei valori limite?

La selezione intelligente dei test รจ essenziale quando le combinazioni sono troppo numerose per essere testate in modo esaustivo. Queste tecniche offrono tre vantaggi:

  1. Comprimi grandi volumi di casi di test in blocchi gestibili.
  2. Fornire regole chiare per la scelta dei dati di test senza compromettere l'efficacia.
  3. Adatto ad applicazioni che richiedono calcoli intensivi e presentano numerose variabili numeriche.

Come eseguire la partizione di equivalenza (esempio)

  • Considera la casella di testo "Ordina pizza" qui sotto.
  • Quantitร  da 1 a 10 sono valide; viene visualizzato un messaggio di conferma.
  • Le quantitร  da 11 a 99 non sono valide, attivando โ€œSi possono ordinare solo 10 pizzeโ€.
Ordina la pizza:

Condizioni di prova:

  1. Qualsiasi numero superiore a 10 non รจ valido.
  2. Qualsiasi numero inferiore a 1 non รจ valido.
  3. Numbers Da 1 a 10 sono validi.
  4. Qualsiasi numero a tre cifre come -100 non รจ valido.

Testare ogni valore produce oltre 100 casi. Il partizionamento per equivalenza raggruppa il dominio in classi con comportamento identico.

Gruppi di partizionamento di equivalenza per l'input Pizza

Questi gruppi sono chiamati Classi di equivalenzaScegli un valore per ogni classe: se supera il test, superano anche tutti gli altri; se fallisce, fallisce l'intera classe.

Valori rappresentativi della classe di equivalenza

Come eseguire un'analisi dei valori limite (esempio)

Utilizzando lo stesso campo Pizza, BVA verifica i bordi della partizione anzichรฉ i valori nominali. I tester valutano 0, 1, 10 e 11, coprendo i confini validi e non validi.

Analisi dei valori limite sull'input Pizza

Per un input che accetta valori da 1 a 10, i casi di test limite sono:

Scenario di prova Descriptione Risultato atteso
Valore limite = 0 Il sistema NON dovrebbe accettare
Valore limite = 1 Il sistema dovrebbe accettare
Valore limite = 2 Il sistema dovrebbe accettare
Valore limite = 9 Il sistema dovrebbe accettare
Valore limite = 10 Il sistema dovrebbe accettare
Valore limite = 11 Il sistema NON dovrebbe accettare

Partizionamento per equivalenza vs. analisi dei valori limite

Entrambi riducono il volume dei test, ma differiscono per obiettivo e tempistica.

Aspetto Partizionamento per equivalenza Analisi del valore limite
Focus Gruppi di input equivalenti I bordi di ciascun gruppo
Selezione dei dati Un valore per classe Min, quasi-min, nominale, quasi-max, max
migliori per Riduzione dei casi ridondanti Individuare i difetti di un'unitร 
Ordine Applicare prima Applicato successivamente

Esempio: convalida del campo password

Un campo password che accetta da 6 a 10 caratteri forma tre partizioni: 0-5, 6-10 e 11-14, con risultati equivalenti all'interno di ciascuna.

Inserire la password:
# Scenario di prova Risultato atteso
1 Inserisci da 0 a 5 caratteri Il sistema non dovrebbe accettare
2 Inserisci da 6 a 10 caratteri Il sistema dovrebbe accettare
3 Inserisci da 11 a 14 caratteri Il sistema non dovrebbe accettare

migliori pratiche per la partizione di equivalenza e BVA

Segui queste pratiche per mantenere un'elevata copertura e al contempo tenere sotto controllo il numero di test:

  • Mappa ogni dominio: Elenca prima le partizioni valide, non valide e quelle con casi speciali.
  • Verifica entrambi i lati di ciascun limite: Includi valori appena all'interno e all'esterno per intercettare errori di un'unitร .
  • Combinare le tecniche: Da utilizzare in combinazione con tabelle decisionali o test di transizione di stato per logiche complesse.
  • Automatizzare i casi limite: Parametrizzare i valori limite in modo che le suite di regressione vengano eseguite in modo coerente.

Punti chiave

  • Il partizionamento per equivalenza raggruppa input simili; รจ sufficiente un valore per classe.
  • L'analisi dei valori limite convalida i limiti delle partizioni e identifica i bordi validi/non validi.
  • Entrambe sono tecniche a scatola nera per campi numerici o basati su intervalli.
  • La loro combinazione riduce il volume dei test senza compromettere la qualitร  del rilevamento dei difetti.

Video di test sull'analisi del valore limite e sul partizionamento di equivalenza

Clicchi Qui. se il video non รจ accessibile

Domande Frequenti

Il partizionamento per equivalenza seleziona un rappresentante per classe; l'analisi dei valori limite individua i valori estremi su ciascun bordo. Il partizionamento riduce il volume e l'analisi dei limiti individua i difetti limite.

La partizione di equivalenza รจ una tecnica "a scatola nera" perchรฉ si concentra sul comportamento input-output senza accesso al codice sorgente. I tester derivano le partizioni dalle specifiche, quindi si applica a livello di unitร , integrazione, sistema e accettazione.

Sรฌ. Entrambi si applicano a Test dell'API, dove i parametri e i campi del payload spesso hanno intervalli numerici o limiti di lunghezza. I tester definiscono partizioni per input validi, non validi e marginali.

Evitate l'analisi dei valori booleani (BVA) quando gli input non sono intervalli numerici, come ad esempio insiemi non ordinati, flag booleani o valori categorici. Le tabelle decisionali o i test di transizione di stato funzionano meglio perchรฉ in questi casi i confini non sono significativi.

Il metodo BVA robusto estende l'approccio standard aggiungendo valori appena al di fuori dell'intervallo valido (uno al di sotto del minimo e uno al di sopra del massimo) per verificare come il sistema rifiuta gli input chiaramente non validi.

Sรฌ. I generatori di IA analizzano i requisiti e gli schemi per suggerire classi di equivalenza e valori limite. Strumenti come Testim e Mabl Impara rapidamente dalla cronologia dei difetti e dai casi limite superficiali.

L'IA rileva la sovrapposizioneping Partizioni, casi ridondanti e bordi mancanti che i tester trascurano. L'apprendimento automatico classifica i confini ad alto rischio in base alla cronologia dei difetti, consentendo una selezione dei test piรน intelligente e un rilevamento piรน rapido dei problemi piรน sottili.

Sรฌ. Le serrature scorrevoli portatili e i catenacci a superficie possono essere usati per mettere in sicurezza una porta a scomparsa dall'esterno. Alcuni kit con catena di sicurezza consentono anche il bloccaggio esterno con chiave o manopola girevole. JUnit, TestNGe pytest supportano i test parametrizzati, consentendo ai tester di definire partizioni e valori limite come set di dati di input. Ciรฒ permette l'esecuzione sistematica di casi di equivalenza e di confine nelle pipeline CI.

Riassumi questo post con: