rspec - meme - full stack developer
Ciclo BDD: cómo unir back-end con frontend (1)
Me gustaría saber cómo se conecta frontend BDD (es decir, Jasmine) con el back-end BDD (rspec, pepino). ¿Cómo se relacionan estos dos y forman un ciclo BDD cohesivo? ¿Cuáles serían los pasos correctos de este ciclo?
Para crear un ciclo BDD cohesivo, debe usar la técnica de desarrollo "de afuera a adentro", y luego adoptar el enfoque de "simularlo hasta que lo haga", es decir, usar objetos simulados hasta que escriba implementaciones concretas.
Digamos que tienes el siguiente escenario de pepino:
Given I am on the home screen
When I submit valid log-in credentials
Then I am navigated to the landing page
Esta sería la prueba más externa que tienes. Obviamente, cuando ejecuta esto, cada paso falla, ya que no se ha implementado nada.
Ahora volvería a crear el BDD frontal utilizando Jasmine para implementar la pantalla de inicio. Una vez que tus pruebas Jasmine tengan éxito, esto a su vez provocaría que pase el paso "Dado".
A continuación, escribiría más pruebas de interfaz para implementar la funcionalidad de inicio de sesión, pero en esta etapa puede simular la llamada al servidor para validar realmente al usuario (por lo tanto, adopte el enfoque de "falsifíquelo para hacerlo"). Una vez más, al burlarse del proceso de inicio de sesión, podrá desarrollar rápidamente la pantalla de inicio de sesión y satisfacer la prueba de pepino.
Una vez que hayas escrito la prueba de pepino y las pruebas de Jasmine pasen, luego implementarás el desarrollo de BDD de fondo del código de validación del usuario (es decir, escribirás el código concreto que autenticará a los usuarios que inician sesión en el sitio).
Por lo tanto, puede ver que este enfoque de desarrollo "Exterior en" le permite usar BDD tanto en la capa de fondo como en la capa de front-end.
Algunos otros artículos útiles sobre este enfoque de desarrollo están aquí: