7.16. Trabajar con rutas en ExpressJS: probar rutas con Jest o Mocha
Página 62 | Escuchar en audio
Capítulo 7.16: Trabajar con rutas en ExpressJS: probar rutas con Jest o Mocha
Una de las características clave de ExpressJS es su capacidad para gestionar rutas de manera eficiente y efectiva. Las rutas son esenciales para cualquier aplicación web, ya que determinan cómo responde una aplicación a una solicitud de cliente en un punto final determinado, que es un URI (o ruta) y un método de solicitud HTTP específico (GET, POST, etc.). p>
Para crear una ruta en ExpressJS, utilizamos el método app.METHOD(), donde METHOD es el método de solicitud HTTP que desea utilizar. Por ejemplo, si quisiéramos crear una ruta para responder a solicitudes GET en la ruta raíz (/), podríamos hacerlo así:
aplicación.get('/', función (req, res) { res.send('¡Hola mundo!') })
Aunque crear rutas es relativamente sencillo, es importante asegurarse de que funcionen correctamente. Y ahí es donde entran las pruebas. Hay varias herramientas de prueba disponibles para Node.js, pero en este curso nos centraremos en dos de las más populares: Jest y Mocha.
Jest es un marco de prueba completo que requiere poco o ningún esfuerzo de configuración, lo que lo convierte en una excelente opción para principiantes. También tiene una sintaxis de prueba muy clara y fácil de entender, lo que facilita la escritura de pruebas. Veamos cómo podemos usar Jest para probar nuestras rutas.
solicitud constante = requerir('superprueba'); aplicación constante = require('../aplicación'); describe('Probar la ruta raíz', () => { test('Debería responder al método GET', () => { solicitud de devolución (aplicación). get ("/"). Luego (respuesta => { esperar(respuesta.statusCode).toBe(200); }) }); });
En este ejemplo, primero importamos el módulo supertest, que nos permite realizar solicitudes HTTP a nuestra aplicación. A continuación, importamos nuestra aplicación Express. Luego usamos la función describe de Jest para envolver nuestras pruebas y la función de prueba para definir una prueba. La prueba en sí es bastante simple: realizamos una solicitud GET a la ruta raíz y verificamos que el código de estado de respuesta sea 200, que es el código de estado HTTP para "OK".
Ahora, veamos cómo podemos hacer algo similar con Mocha. A diferencia de Jest, Mocha es solo un marco de prueba y requiere módulos adicionales para realizar afirmaciones o solicitudes HTTP. En este ejemplo, usaremos Chai como nuestra biblioteca de aserciones y realizaremos una superprueba para las solicitudes HTTP.
solicitud constante = requerir('superprueba'); aplicación constante = require('../aplicación'); const esperar = requerir('chai').esperar; describir('OBTENER /', función () { it('debería responder con 200', función (hecho) { solicitud (aplicación) .conseguir('/') .end(función(err, res) { esperar(res.statusCode).to.equal(200); hecho(); }); }); });
Como puedes ver, la sintaxis de Mocha es un poco diferente a la de Jest, pero la idea general es la misma. Realizamos una solicitud GET a la ruta raíz y comprobamos si el código de estado de respuesta es 200.
En resumen, ExpressJS hace que la creación de rutas sea una tarea sencilla, pero es importante asegurarse de que esas rutas funcionen correctamente. Para ello podemos utilizar herramientas de prueba como Jest o Mocha, que nos permiten escribir pruebas claras y concisas para nuestras rutas.
Probar tus rutas es una práctica recomendada, ya que te permite descubrir y solucionar problemas antes de que afecten a tus usuarios. Además, las pruebas también pueden servir como documentación, mostrando a otros desarrolladores (o a usted mismo en el futuro) cómo debe comportarse su aplicación.
Así que dedica algo de tiempo a aprender y utilizar estas herramientas de prueba. Su código será más sólido, su aplicación será más confiable y podrá dormir mejor por la noche sabiendo que su aplicación está bien probada.
Ahora responde el ejercicio sobre el contenido:
¿Cuál es la funcionalidad principal de ExpressJS mencionada en el texto y cuáles son las herramientas de prueba sugeridas para garantizar que las rutas funcionen correctamente?
¡Tienes razón! Felicitaciones, ahora pasa a la página siguiente.
¡Tú error! Inténtalo de nuevo.
Siguiente página del libro electrónico gratuito: