Ejercicio de programación con JavaScript: Pruebas unitarias

Proyecto
Práctica
1h 0m

JavaScript: Implementa una calculadora con funciones aritméticas y pruebas unitarias con Jest para asegurar un código robusto y fiable.

  1. Crea un archivo llamado calculator.js con las siguientes funciones:

    • sum(a, b): suma dos números
    • subtract(a, b): resta b de a
    • multiply(a, b): multiplica dos números
    • divide(a, b): divide a entre b
  2. Implementa cada función de la calculadora asegurándote de que validen sus entradas. Las funciones deben lanzar un error cuando reciban parámetros que no sean números.

  3. Crea un archivo calculator.test.js para las pruebas unitarias. Importa las funciones de la calculadora al inicio del archivo.

  4. Implementa un conjunto de pruebas para la función sum() que verifique:

    • La suma de dos números positivos
    • La suma de un número positivo y uno negativo
    • Que se lance un error cuando algún parámetro no sea un número
  5. Implementa pruebas similares para las funciones subtract() y multiply().

  6. Para la función divide(), añade pruebas adicionales que verifiquen:

    • La división de dos números positivos
    • La división con resultado decimal
    • Que se lance un error específico cuando se intente dividir por cero
  7. Organiza tus pruebas utilizando describe() para agrupar las pruebas relacionadas con cada función.

  8. Ejecuta las pruebas con el comando npm test y verifica que todas pasen correctamente.

  9. Analiza la cobertura de tus pruebas ejecutando npm test -- --coverage y asegúrate de que todas las funciones tengan una cobertura adecuada.

  10. Refactoriza tu código si es necesario para mejorar la calidad y legibilidad tanto de las funciones como de las pruebas.

Empezar ejercicio de programación

Más ejercicios de programación con JavaScript

Evalúa tus conocimientos en JavaScript con más ejercicios de programación de tipo Test, Puzzle, Código y Proyecto con VSCode.

Tecnologías de este ejercicio de programación

Entornos de desarrollo para este ejercicio

Image

Visual Studio Code

Image

GitHub