Los escenarios que has escrito son bastante bajo nivel. A menos que esté realmente produciendo una funcionalidad de inicio de sesión segura para vender, me quedaré con el caso feliz y la unidad/manual probará el resto. Si no lo haces, crearás tantos escenarios que será una pesadilla de mantenimiento.
Estudia lo que diferencia el producto que está creando de todos los productos similares, a continuación, apuntar que a medida que el valor del escenario. A continuación, se vería así:
Given Fred is logged in
When Fred <does something>
Then Fred should <get some really differentiating value>
And <something else happens>
Se adhieren a las capacidades de muy alto nivel, en lugar de medidas basadas en formularios de bajo nivel. Por ejemplo:
Given there is already a question on BDD and Cucumber
Given Peyote is logged in
When Peyote proposes a question on BDD and Cucumber
Then Peyote should see other questions on BDD and Cucumber.
Hay un concepto llamado "Página paradigma", en el que se crea una clase con todos los pasos de bajo nivel que la página o pantalla pueden realizar. A continuación, puede llamar a esos pasos de bajo nivel en la página desde los dispositivos de paso de Pepino de nivel superior.
su negocio será mucho más comprometidos con los escenarios de este tipo. El objetivo principal de BDD no es producir pruebas automatizadas, sino tener conversaciones sobre los escenarios para que pueda averiguar dónde se está equivocando y qué otras opciones podría considerar antes de tomarse la molestia de implementar el código. Las pruebas automatizadas son un buen subproducto.
Las conversaciones y el aprendizaje que se obtiene al hablar a través de ellos, son las cosas que hacen diferente de BDD ATDD (Test Driven Development Aceptación). Es por eso que usamos un lenguaje como Ejemplo, Escenario, Dado, Cuándo, Luego, Contexto, Evento, Resultado en lugar de Prueba, Configuración, Desprendimiento, Actuar, Arreglar, Afirmar - entonces podemos hablar de esto con los negocios, BA y probadores en el mismo idioma.
Ver Dan North's article on Deliberate Discovery y el resto de su blog para más, y buena suerte con la BDD!