unit nightwatch kent framework for best javascript tdd bdd jasmine qunit

javascript - nightwatch - QUnit vs. Jasmine y TDD vs. BDD



mocha js vs jasmine (2)

  1. BDD y TDD no son mutuamente excluyentes. Ver la publicación de Liz Keogh

  2. Las pruebas de comportamiento deben ser comprensibles para las partes interesadas del negocio. Las pruebas unitarias generalmente están destinadas a ser entendidas por los miembros del equipo técnico (desarrolladores, probadores, etc.). Para ver ejemplos de cómo hacer que las pruebas unitarias sean más legibles, debería consultar el libro de GOOS (aunque los ejemplos son Java no Javascript).

    Además, si intenta cubrir todas las rutas de prueba usando BDD, su gente de negocios se aburrirá y dejará de importar.

  3. Echa un vistazo a Cucumber-JS (un puerto de pepino ).

He estado buscando en dos bibliotecas para hacer pruebas unitarias en el front-end.

  • QUnit - http://qunitjs.com/

  • Jasmine - http://jasmine.github.io/

    1. Jasmine está claramente más enfocada en BDD que QUnit aunque pude ver haciendo BDD con QUnit al describir las pruebas de una manera orientada al comportamiento. Ambos pueden ejecutar afirmaciones en unidades de código, así que creo que son ambas pruebas unitarias. ¿El BDD es mutuamente exclusivo de TDD o todo depende de cómo lo escribes?

    2. ¿Las pruebas unitarias son necesarias si estás haciendo pruebas de comportamiento? Parece que si cubre todas las historias de usuarios, realmente no necesita conocer los detalles de las unidades comprobables.

    3. ¿Hay otros frameworks de prueba que te gusten? ¿Hay otras pruebas además de las pruebas unitarias que los devs puedan hacer en el front-end?


Si está buscando escribir pruebas que involucren interacciones DOM, echaría un vistazo a pageboy.js . Este es un nuevo proyecto que proporciona un lenguaje específico del dominio (DSL) para las interacciones Javascript DOM (un poco como Capybara que se usa dentro de Cucumber en Ruby), que tiene como objetivo hacer que el código de prueba sea más legible.

Hay más en el fondo de este DSL aquí .