
Backbone.js Testing
Ryan Roemer
- Editorial
- Packt
- Año
- 2013
- Páginas
- ~168
- Nivel
- Intermedio
De qué trata
Ryan Roemer dedica este libro de Packt (2013) a las pruebas de aplicaciones frontend hechas con Backbone.js; la edición impresa usa Backbone 1.0 y el repositorio del libro se actualizó después a Backbone 1.1. Está dirigido a desarrolladores que ya construyen aplicaciones con Backbone y quieren adoptar una práctica de pruebas sólida, sin necesidad de experiencia previa con frameworks de testing en JavaScript.
El libro trabaja con tres librerías que se complementan: Mocha como framework de pruebas, Chai para las aserciones y Sinon.JS para los dobles de prueba, además de Sinon-Chai. Sus seis capítulos van de montar la infraestructura de pruebas en el navegador a redactar un plan de pruebas para una aplicación Backbone. Después explica las interfaces BDD y TDD de Mocha, las aserciones, specs y suites, y las specs pendientes, y termina con los espías, stubs y mocks de Sinon.JS. Así se prueban por separado modelos, colecciones, vistas y routers. El último capítulo automatiza la ejecución desde la línea de comandos con PhantomJS, un navegador sin interfaz, mediante mocha-phantomjs. Las pruebas viven en un directorio propio (test/js/) para que la aplicación no dependa del código de pruebas.
Todos los ejemplos giran en torno a Notes, una aplicación de referencia para gestionar notas, y en cada capítulo se suman las pruebas de un componente distinto. Es un libro corto y muy enfocado que enseña bien a pensar en pruebas aisladas de componentes frontend; esos conceptos siguen valiendo con herramientas actuales como Vitest o Jest. Solo cubre el frontend (no prueba el servidor) y PhantomJS ya está descontinuado, así que la parte de automatización hay que llevarla a navegadores headless modernos.
- Backbone.js
- Testing frontend
- Mocha
- Chai
- Sinon.JS
- BDD y TDD
- Espías, stubs y mocks
- PhantomJS
- Plan de pruebas
- Pruebas automatizadas
¿Cómo enseña?
Teoría + práctica
- ✓ Incluye ejercicios
- ✓ Incluye proyectos
Proyectos
Notes
Gestor de notas personal hecho con Backbone.js, Underscore, jQuery, Bootstrap y Showdown (editor Markdown), con una versión que guarda en localStorage y otra con servidor Node.js/Express y MongoDB. Sobre ella se escriben, capítulo a capítulo, las pruebas de modelos, colecciones, vistas y router con Mocha, Chai y Sinon.JS.

