Sto iniziando a comprare in BDD. Fondamentalmente, a quanto ho capito, si scrive uno scenario che descrive i criteri di accettazione per certe storie. Si parte da semplici test, dall'esterno, usando i mock al posto delle classi che non si implementano ancora. Mentre avanzi, dovresti sostituire i mock con classi reali. Da Introduction to BDD:BDD e test funzionali
Inizialmente, i frammenti sono implementato usando mock per impostare un account essere in credito o una carta per sia valida. Questi formano i punti di partenza per il comportamento di implementazione. Come di implementare l'applicazione, le Givens ei risultati vengono modificati per utilizzare le classi attuali Abbiamo attuate, in modo che per il momento lo scenario è completato, hanno diventare adeguati funzionali test end-to-end.
La mia domanda è: una volta completata l'implementazione di uno scenario, tutte le classi utilizzate dovrebbero essere reali, come nei test di integrazione? Ad esempio, se si utilizza DB, il codice dovrebbe essere scritto su un DB reale (ma leggero in memoria)? Alla fine, dovresti avere qualche mock nei tuoi test end-to-end?