Potrebbe aiutare a rendersi conto che il focus di BDD sono le conversazioni . BDD è davvero uno strumento di analisi che fornisce alcuni test di regressione come un piacevole sottoprodotto.
Ho usato scenari a tutti i tipi di livelli nella conversazione; dall'identificazione di diversi stakeholder per vedere se è probabile che un rilascio sia ben accolto, a capire come dovrebbe comportarsi un modulo o una classe .
Ci sono un paio di suggerimenti e consigli che posso suggerire per renderlo più semplice.
Se non l'hai mai fatto prima, cambierà.
Tutto ciò che è nuovo nel dominio o nell'azienda è suscettibile di modifiche. Potresti realizzare di essere in questo spazio se stai parlando degli scenari, mettendoli in discussione e gli affari dicono "Oh, non ne sono sicuro." Questo è un buon segno per smettere di provare a fare BDD e aggiungere qualcosa per ottenere un feedback più veloce, per aiutare l'azienda a capire cosa vogliono. Una volta che le idee si sono stabilizzate, gli scenari possono essere scritti a posteriori.
Tutti i progetti hanno un aspetto nuovo, altrimenti non li faresti.
Se l'hai già fatto, è noioso.
Oltre ad aspetti nuovi e differenzianti , i progetti di solito presentano alcuni aspetti mercificati che sono simili a quelli già realizzati. Ad esempio, se stavo producendo un nuovo telefono cellulare, avrebbe comunque bisogno di effettuare chiamate. "Effettuare una chiamata" è uno scenario così noto che non avremmo bisogno di parlarne. Allo stesso modo, cose come "login" o persino "registrazione dell'utente" sono noiose.
Ove possibile, utilizzare le librerie per questi e quindi non sarà necessario scrivere scenari intorno a loro. Inoltre, fare gli altri bit prima - hanno un già-utenti registrati e capire cosa la registrazione di lui in per . È improbabile che queste aree cambino, quindi potresti essere comunque in grado di cavartela con i test manuali.
Se qualcuno lo ha già fatto, parlare attraverso gli scenari può aiutare.
C'è un po 'di tempo in cui abbiamo requisiti specifici del dominio, cose che sono relativamente ben comprese da qualcuno , e dove la vera incertezza riguarda principalmente l'ambito piuttosto che il comportamento reale del sistema.
Parlare attraverso gli scenari può aiutare il team di sviluppo a scoprire comportamenti, attingere alle conoscenze di un esperto e garantire che il comportamento noto e prezioso venga acquisito.
Questo è il punto in cui BDD funziona meglio. Il mio consiglio è di scrivere gli scenari più interessanti nella parte superiore del file delle funzionalità (o wiki, se non si sta automatizzando) ed eliminare tutti gli scenari che sono duplicati o facili da dedurre di conseguenza.
Ove possibile, utilizzare gli scenari come esempi di come funziona l'applicazione . Ad esempio, se vuoi mostrare come funziona la validazione, mostra un paio di esempi di come l'applicazione aiuta l'utente a compilare un modulo. Verifica che la convalida sia rigorosa utilizzando il test unitario, che è molto più facile da mantenere e più veloce da eseguire.
Ulteriori letture
Se sei interessato a questo, ecco alcune cose che ho scritto che potrebbero aiutare.
BDD in grande
Cynefin per gli sviluppatori , che approfondisce queste tre aree
Le diapositive del mio tutorial , che sono tutte belle e annotate per te, e coprono anche l'intero stack.