Sapendo che il BDD in qualche modo evita di usare il termine "test", sto cercando di capire il processo come descritto in un libro intitolato The Journey to Enterprise Agility: Systems Thinking and Organizational Legacy.
Descrivono il processo BDD in questo modo:
- Seleziona uno scenario da una funzione
- Scrivi un passaggio di scenario in errore
- Scrivi un test in errore per supportare il comportamento dettagliato nei passaggi non riusciti
- Scrivi il codice per eseguire il test del test dell'unità
- Refactor
- Se il passaggio viene superato, passa al passaggio successivo, altrimenti scopri altri oggetti per supportare il comportamento dettagliato fino al passaggio del passaggio.
"Given", "When", "Then" sono considerati i passaggi.
Lo scenario di esempio era "Dato che sono su una pagina dei dettagli del prodotto .."
Sotto il diagramma, spiegano: ...
The next action is to create a failing scenario step. In this instance, you would create code that confirms that the product page can be displayed.
Non capisco. Qual è il passaggio dello scenario di errore, se non un test (e non sembra essere il test come quelli sono menzionati nel passaggio 4)? Se non è il test (ma qualsiasi altro codice), non sto infrangendo la regola TDD (test prima)?
Il link al libro e al testo originale: link