Testing, mocha, chai e istanbul
BA Node.js Meetup
1 de abril de 2015
Gabriel Montes
@gab_montes
Software testing
- Es parte del proceso de SQA
- Busca mejorar la calidad y reducir costos
Y entonces, ¿por qué no?
- Es el momento de las malas noticias
- Está al final del proceso
- Se usan metodologías "ágiles"
- Se le resta importancia
"La pereza del programador"
"¡Qué vuelva como bug..!"
"La soberbia del programador"
"¡Este código es perfecto!"
"La soberbia del programador"

Nota: este gráfico no tiene [todavía] una justificación racional
Mocha
- Organizar casos de prueba
- Correr pruebas
- Obtener reportes
Chai
- Probar condiciones (assertions)
- Varias sintaxis
istambul
- Analizar cobertura de código
- Generar reportes
¡Demo!
Recetas
{
"devDependencies": {
"istanbul": "^0.3.0",
"mocha": "^2.2.0"
},
"scripts": {
"test": "mocha",
"coverage": "istanbul cover --dir ./reports _mocha -- "
}
}
Recetas
{
"devDependencies": {
"chai": "^2.2.0",
"istanbul": "^0.3.0",
"mocha": "^2.2.0",
"node-inspector": "^0.9.2"
},
"config": {
"testOpts": "-u tdd -R spec",
"covOpts": "--dir ./reports"
},
"scripts": {
"test": "mocha $npm_package_config_testOpts",
"test:brk": "node-inspector & npm test -- --debug-brk",
"test:watch": "npm test -- --watch",
"coverage": "istanbul cover $npm_package_config_covOpts _mocha -- $npm_package_config_testOpts"
}
}
Más info
¡Muchas gracias!
Testing, mocha, chai e istanbul
By Gabriel Montes
Testing, mocha, chai e istanbul
- 1,911