Non dovresti prendere in giro le chiamate al database perché ciò potrebbe vanificare lo scopo. Ad esempio, è necessario chiamare il tuo DAO, ad esempio, da un livello di servizio. Mocking ti permette di testare i metodi separatamente.
Supponiamo di avere una simulazione di ristorante con un'architettura simile a questa:
Cook <=> Server <=> Customer
Vuoi testare ogni livello in modo indipendente. Qui Server
è il tuo livello di servizio e Cook
può essere considerato come un DAO. Il Server
è ciò che vuoi fare finta di testare Customer
, e Cook
è ciò che vuoi fare finta testando il Server
. I test dell'unità Cook
, tuttavia, dovrebbero verificare che l'implementazione restituisca un hamburger quando è stato ordinato un hamburger e non un pneumatico di gomma.