tutorial example cucumber bdd jbehave

example - ¿Cuáles son las diferencias entre JBehave y Cucumber?



jbehave tutorial (3)

Cucumber JVM es la implementación de Java de la popular herramienta Cucumber BDD, como se menciona en las respuestas anteriores.

JBehave tiene muchas configuraciones adicionales para ajustar con precisión una herramienta BDD según sus preferencias. Pero con esas configuraciones también existe una gran complejidad. Al final del día, nos vamos Agile y amamos ser Lean en nuestro trabajo. La pregunta que debe hacerse usted mismo es si estas configuraciones complejas agregan algún valor significativo a su flujo de trabajo. He visto personas haciendo BDD incluso sin una poderosa herramienta como Cucumber o JBehave. Algunos también crean sus propias herramientas. Mi observación fue que, si necesitas una herramienta BDD, Cucumber tiene casi toda la potencia que necesitas.

Para obtener más información, puede leer este artículo de blog escrito por mí: JBehave Vs Cucumber JVM: Comparación y experiencia compartida

PD. Siento que Stackoverflow no es la mejor comunidad para hacer preguntas subjetivas sobre herramientas. De todos modos espero que esta discusión sea útil para alguien.

He leído en alguna parte que JBehave es en realidad el equivalente Java de Cucumber, mientras que Cucumber está basado en Ruby.

¿Puede alguien describir las diferencias entre ellos proporcionar enlaces que sí lo hacen?


JBehave y Cucumber son marcos completamente diferentes, aunque con el mismo propósito: pruebas de aceptación. Se basan en historias (JBehave) o características (pepino). Una característica es una colección de historias, expresada desde el punto de vista de un actor específico del proyecto. En sus pruebas, se refiere a las historias, generalmente a través de la coincidencia de expresiones regulares.

JBehave es un framework Java puro, mientras que Cucumber está basado en Ruby. Ambos son marcos muy maduros. Puedes usar Cucumber de Java a través del plugin Cuke4Duke Maven de Maven , pero todavía hay un desajuste de idioma ya que continúa usando Ruby internamente y necesitarás instalar este lenguaje y su infraestructura (las llamadas ''gems'') en la máquina. que ejecuta tus pruebas Esto puede ser frágil y la falta de correspondencia del lenguaje complica tanto la depuración como el rendimiento de sus pruebas. Ahora hay una implementación pura de Java de Cucumber que se llama Cucumber-JVM . A partir de diciembre de 2011, aún no se ha lanzado, pero se puede utilizar perfectamente (edición: versión 1.0.0 fue lanzada el 27 de marzo de 2012) . Este nuevo marco es muy similar a JBehave, ya que ambos tienen soporte JUnit nativo.

La siguiente es una comparación de Cucumber-JVM y JBehave.

Semejanzas

  • JUnit soporte fuera de la caja
  • Pure Java
  • Rápido
  • Fácil de usar

Pros / Contras de JBehave:

  • Pro Muy buena documentación
  • Pro Muy buen formato HTML de los resultados de las pruebas
  • Con solo admite historias, no funciones

Pros / contras de Cucumber-JVM:

  • Funciones de Pro Support
  • Con No es compatible con pruebas JUnit paralelas. Sin embargo, funcionará con versiones paralelas de Maven 3.
  • Con falta de documentación
  • Con No hay formato HTML bonito de los resultados de las pruebas, aparte del propio formato de JUnit (edite: Cucumber-JVM ahora admite la salida HTML)

Si estás en un proyecto de Java, recomendaría JBehave (si buscas una excelente documentación) o Cucumber-JVM (si el soporte de características en su lugar o historias es importante para ti).

Intenté ambos frameworks y fui por Cucumber-JVM.


No, en realidad, el equivalente de Java de pepino es Cucumber-JVM . Es posible que también deba verificar este Link para comprender la diferencia entre estos dos famosos marcos BDD.