I test black-box invece dei test white-box sono una vasta categoria di test che include test in cui non si conosce, e non c'è bisogno di sapere, come funziona l'implementazione, si vuole solo testare il risultato.
Ad esempio: faccio clic sul pulsante Acquista su un sito Web e l'elemento che ho selezionato è ora nel mio carrello. Non mi interessa come il programmatore ha fatto accadere questo, solo che è successo e l'articolo corretto è stato inserito nel carrello.
Nel test della casella bianca si desidera eseguire il peer all'interno del codice e analizzare i dettagli dell'implementazione. Questo è più comune al livello più basso, test unitario.
I test funzionali possono essere test in black box o in white box, a seconda del tipo di test che si desidera eseguire. Le due categorizzazioni non si escludono a vicenda, si riferiscono a diversi aspetti dei test. Esistono molti modi per classificare i test e ognuno ha la propria interpretazione di ciò che è meglio o più appropriato in una determinata situazione.
Direi che i test di usabilità saranno quasi certamente test della scatola nera. Esistono molti diversi tipi di test di usabilità in cui dovresti eseguire quelli che ritieni che il prodotto trarrebbe maggior beneficio. Potresti criticare il design dell'interfaccia utente, verificare che un probabile scenario end-to-end del cliente funzioni o testare che i requisiti legali di accessibilità siano soddisfatti. Prenderò in considerazione tutti questi test di usabilità, anche se, come ho detto prima, riguardo alle persone che hanno opinioni diverse su come chiamare diversi tipi di test, altri potrebbero non essere d'accordo.
È giusto fare entrambi i tipi di test se pensi di aggiungere valore facendo entrambe le cose. A volte stai aggiungendo valore supportando la tua squadra a trovare bug, a volte criticando il design con un nuovo paio di occhi. A volte creando test di regressione automatizzati in modo che il team non commetta errori comuni in futuro e possa verificare facilmente che non hanno infranto nulla con una modifica. Se pensi di testare di nuovo la stessa cosa, probabilmente non stai aggiungendo molto valore, ma puoi aggiungere valore senza che tutti i test svolti terminino con la compilazione di una segnalazione di bug.