Cos'รจ il test del dominio nel test del software? (con esempio)
โก Riepilogo intelligente
Il test di dominio verifica un'applicazione fornendole il set minimo utile di input, che comprende valori validi, non validi e al limite, e confermando che solo i valori all'interno dell'intervallo accettato producano l'output richiesto.
Cos'รจ il test del dominio?
Test del dominio รจ un test del software Processo in cui l'applicazione viene testata fornendo un numero minimo di input e valutandone gli output appropriati. L'obiettivo principale del test di dominio รจ verificare se l'applicazione software accetta input entro l'intervallo accettabile e fornisce l'output richiesto.
ร una test funzionali tecnica in cui l'output di un sistema viene testato con un numero minimo di input per garantire che il sistema non accetti valori di input non validi e fuori intervallo. ร anche considerato uno degli aspetti importanti test della scatola bianca metodi. Verifica inoltre che il sistema non accetti input, condizioni e indici al di fuori dell'intervallo specificato o valido.
I test di dominio variano a seconda del dominio specifico, quindi รจ necessaria una conoscenza specifica del dominio per poter testare un sistema software.
Pratica piรน semplice del test del dominio
Nel test del dominio, dividiamo un dominio in sottodomini (classi di equivalenza) e quindi testiamo utilizzando i valori di ciascun sottodominio. Ad esempio, se un sito web (dominio) รจ stato fornito per il test, divideremo il sito web in piccole porzioni (sottodominio) per facilitare il test.
Il dominio di applicazione potrebbe prevedere la verifica di una singola variabile di input o di una combinazione di variabili di input.
Spesso, chi si occupa di questo campo studia i casi piรน semplici di test di dominio con altri due nomi: "test di confine" e "analisi delle classi di equivalenza".
Test di confine - Analisi del valore limite (BVA) si basa sul test ai confini tra le partizioni. Verificheremo sia i valori di input validi che quelli non validi all'interno delle partizioni/classi.
Test di equivalenza di classe โ L'idea alla base di questa tecnica รจ quella di dividere (cioรจ partizionare) un insieme di condizioni di test in gruppi o insiemi che possono essere considerati uguali (cioรจ il sistema dovrebbe gestirli in modo equivalente), da qui il 'partizionamento di equivalenza'.
Tale forma semplificata si applica ai test di dominio โ
- Solo per i test delle variabili di input
- Solo quando testato al livello di sistema
- Solo se testati uno alla volta
- Solo se testato in modo molto superficiale
Puรฒ essere semplificato come di seguito:
| Variabile | Classe di equivalenza di classe valida | Classe di equivalenza di classe non valida | Confini e casi speciali | Note |
|---|---|---|---|---|
| X | 0-100 | 0 | ||
| 100 | ||||
| <0 | -1 | |||
| > 100 | 101 |
Spiegazione:
- Se un campo accetta valori compresi tra 0 e 100, non deve accettare -1 e 101, in quanto si tratta di valori non validi e al di fuori dell'intervallo consentito.
- Il campo deve accettare valori come 0, 100 e qualsiasi numero compreso tra questi due valori.
Costruire tavoli come questi (nella pratica)
- Per costruire un'analisi di equivalenza nel tempo, inserisci le informazioni in un foglio di calcolo. Inizia elencando le variabili. Aggiungi le informazioni relative a esse man mano che le ottieni.
- La tabella dovrebbe infine contenere tutte le variabili. Ciรฒ significa tutte le variabili di input, tutte le variabili di output e qualsiasi variabile intermedia che sia possibile osservare.
- In pratica, la maggior parte di queste tabelle รจ incompleta. Le migliori elencano tutte le variabili e aggiungono dettagli per quelle critiche.
Strategia di test del dominio
Durante i test di dominio, รจ necessario tenere in considerazione i seguenti aspetti:
- Quale dominio stiamo testando?
- Come raggruppare i valori in classi?
- Quali valori delle classi da testare?
- Come determinare il risultato?
Quale dominio stiamo testando?
Ogni dominio che testiamo presenta funzionalitร di input e di output. Ci saranno delle variabili di input da inserire e l'output corrispondente dovrร essere verificato. Il diagramma seguente mostra la relazione tra input e output.
Esempio di test del dominio
Considera uno scenario di test con un singolo input:
C = a+b, dove aeb sono variabili di input e C รจ la variabile di output.
Nell'esempio sopra riportato, non รจ necessaria alcuna classificazione, nรฉ รจ richiesta alcuna combinazione di variabili.
Considera i seguenti input multipli e lo scenario di output appropriato:
Consideriamo una fiera dei giochi per bambini. Sono previste sei competizioni e i biglietti devono essere distribuiti in base all'etร e al sesso dei partecipanti. Il sistema di biglietteria รจ uno dei moduli da testare per garantire la funzionalitร complessiva della fiera.
Secondo lo scenario, abbiamo sei scenari in base all'etร e alle competizioni:
- I bambini di etร compresa tra 5 e 10 anni dovrebbero partecipare alle attivitร di narrazione.
- Le bambine di etร compresa tra i 5 e i 10 anni sono invitate a partecipare al concorso di disegno.
- I ragazzi di etร compresa tra 10 e 15 anni sono invitati a partecipare al quiz.
- Le ragazze di etร compresa tra 10 e 15 anni sono invitate a partecipare alla prova di scrittura del saggio.
- Al concorso di filastrocche possono partecipare sia maschi che femmine di etร inferiore o uguale a 5 anni.
- Etร >15 anni, sia i ragazzi che le ragazze dovrebbero partecipare al concorso di poesia.
Qui l'input sarร Etร e Genere, e quindi verrร emesso il biglietto per la competizione. Questo รจ il caso in cui la partizione degli input, o semplicemente raggruppamentoping dei valori, entra in gioco.
Come raggruppare i valori in classi?
Partizionare alcuni valori significa dividerli in parti non sovrapposteping sottoinsiemi.
Come abbiamo discusso in precedenza, esistono due tipi di partizionamento:
- Partizionamento per equivalenze โ Il partizionamento di equivalenza รจ una tecnica di test del software che divide i dati di input di un'unitร software in partizioni di dati equivalenti da cui casi test possono essere derivati. In linea di principio, i casi di test sono progettati per coprire ogni partizione almeno una volta.
- Analisi del valore limite โ L'analisi dei valori limite รจ una tecnica di test del software in cui i test sono progettati per includere rappresentanti dei valori limite in un intervallo. L'idea deriva dal confine.
Nell'esempio precedente, stiamo suddividendo i valori in sottoinsiemi. Stiamo suddividendo l'etร nelle seguenti classi:
- Classe 1: Bambini di etร compresa tra i 5 e i 10 anni
- Classe 2: Bambini di etร inferiore a 5 anni
- Classe 3: Bambini di etร compresa tra i 10 e i 15 anni
- Classe 4: Bambini di etร superiore ai 15 anni.
Quali valori delle classi da testare?
I valori selezionati per il test devono essere valori limite:
- I confini sono rappresentanti delle classi di equivalenza da cui li campioniamo. Hanno maggiori probabilitร di rivelare un errore rispetto agli altri membri della classe, quindi sono rappresentanti migliori.
- Il miglior rappresentante di una classe di equivalenza รจ un valore compreso tra l'intervallo.
Per l'esempio precedente abbiamo le seguenti classi da testare:
Ad esempio, per lo scenario n. 1:
Classe 1: Bambini di etร compresa tra 5 e 10 anni (etร >5 e <=10)
Valori limite:
- I valori devono essere uguali o inferiori a 10. Pertanto, l'etร di 10 anni dovrebbe essere inclusa in questa classe.
- I valori dovrebbero essere maggiori di 5. Pertanto, i 5 anni non dovrebbero essere inclusi in questa classe.
- I valori devono essere pari o inferiori a 10. Pertanto, l'etร di 11 anni non deve essere inclusa in questa classe.
- I valori dovrebbero essere maggiori di 5. Pertanto, l'etร di 6 anni dovrebbe essere inclusa in questa classe.
Valori di partizione di equivalenza:
Si parla di partizionamento di equivalenza quando si deve testare una sola condizione per ogni partizione. In questo caso, si presume che se una condizione in una partizione funziona, allora tutte le altre condizioni dovrebbero funzionare. Allo stesso modo, se una condizione in quella partizione non funziona, si presume che nessuna delle altre condizioni funzionerร . Ad esempio,
(Etร >5 e <=10)
Poichรฉ i valori da 6 a 10 sono validi, รจ necessario selezionarne uno tra 6, 7, 8, 9 e 10. Pertanto, l'etร selezionata "8" รจ un'etร di input valida per la fascia di etร compresa tra (etร >5 e <=10). Questo tipo di partizione รจ detta partizione di equivalenza.
| Scenario | Valori limite da adottare | Valori di partizionamento di equivalenza |
|---|---|---|
| Ragazzo โ Etร >5 e <=10 | Etร inserita = 6 Etร inserita = 5 Etร inserita = 11 Etร inserita = 10 |
Etร inserita = 8 |
| Ragazza โ Etร >5 e <=10 | Etร inserita = 6 Etร inserita = 5 Etร inserita = 11 Etร inserita = 10 |
Etร inserita = 8 |
| Ragazzo โ Etร >10 e <=15 | Etร inserita = 11 Etร inserita = 10 Etร inserita = 15 Etร inserita = 16 |
Etร inserita = 13 |
| Ragazza โ Etร >10 e <=15 | Etร inserita = 11 Etร inserita = 10 Etร inserita = 15 Etร inserita = 16 |
Etร inserita = 13 |
| Etร <=5 | Etร inserita = 4 Etร inserita = 5 |
Etร inserita = 3 |
| Etร > 15 | Etร inserita = 15 Etร inserita = 16 |
Etร inserita = 25 |
Come determiniamo se il programma ha superato o meno il test?
Il superamento del test di funzionalitร non dipende solo dai risultati degli scenari sopra descritti. L'input fornito e l'output atteso ci daranno i risultati, e questo richiede conoscenze specifiche del dominio.
Determinazione dei risultati dell'esempio: la schermata seguente mostra l'output di emissione dei biglietti per ogni combinazione di etร e sesso.
Pertanto, se tutti i casi di test sopra descritti vengono superati, il dominio di emissione dei biglietti nella competizione viene approvato. In caso contrario, il dominio viene bocciato.
Struttura di test del dominio
Solitamente, i tester seguono i passaggi descritti di seguito per i test di dominio. Questi passaggi possono essere personalizzati o omessi in base alle nostre esigenze di test.
- Individuare le variabili potenzialmente interessanti.
- Identifica le variabili che puoi analizzare ora e ordinale (dalla piรน piccola alla piรน grande e viceversa).
- Creare e identificare i valori limite e i valori delle classi di equivalenza come sopra.
- Identifica le dimensioni secondarie e analizza ciascuna di esse in modo classico. (Nell'esempio precedente, il genere รจ la dimensione secondaria.)
- Identificare e testare le variabili che contengono risultati (variabili di output).
- Valutare come il programma utilizza il valore di questa variabile.
- Identificare ulteriori variabili potenzialmente correlate per i test di combinazione, dove test della tabella decisionale aiuta.
- Immagina rischi che non si riconducono necessariamente a una dimensione ovvia.
- Identificare ed elencare le variabili non analizzate. Raccogliere informazioni per analisi successive.
- Riassumi la tua analisi con una tabella di rischio/equivalenza.


