IA integrada en un IDE con Cursor – Parte 2: Vamos con el testing

¡Saludos, geek del teclado! Seguimos hablando de este IDE Cursor que proporciona un plus al desarrollo cracias a la ayuda de su IA integrada.

En este artículo, segunda parte del artículo IA integrada en un IDE con Cursor … veamos cómo hacer una migración en el que migrábamos un prouyecto con AngularJS a Angularv18,veremos cómo aprovechar Cursor para explotar el chat con IA, que te proporcionará asistencia en tiempo real, de este IDE para migrar y generar tests para el proyecto usado como ejemplo, aunque la idea sirve para cualquier tipo de proyecto, y depurar los errores que puedan surgir durante el proceso.

Se recomienda encarecidamente leer la primera parte de este artículo pues se entenderán conceptos que se usarán a continuación.

1. Tests y Debugging con la IA

Durante una migración de AngularJS a Angularv18, también es aplicable a proyectos no migrados, es esencial asegurarse de que no solo el código de la aplicación sea actualizado, sino también sus ficheros de configuración, los ficheros de pruebas (tests) y las librerías de testing. A continuación, exploraremos cómo migrar estos elementos para que estén completamente alineados con Angularv18.

2. Actualización de los Ficheros de Configuración para los tests

Los ficheros de configuración son críticos para que los tests de tu aplicación funcionen correctamente en Angularv18. Vamos a detallar tres archivos clave que necesitarán atención: package.json, karma.conf.js, y angular.json (o angular-cli.json en versiones anteriores).

2.1 El fichero package.json

El archivo package.json gestiona las dependencias y scripts que tu proyecto necesita para ejecutarse, construir, y testear. En la migración, es necesario eliminar dependencias antiguas de AngularJS y reemplazarlas con las de Angularv18.

: “IA, ¿puedes fichero package.json para migrar los tests de AngularJS a Angularv18?”

IA (Cursor): “Claro, aquí tienes el fichero package.json actualizado con las librerías de testing incluídas.”

IA (Cursor): “Claro, aquí tienes el fichero package.json actualizado con las librerías de testing incluídas.”

Este archivo muestra cómo las dependencias de AngularJS han sido reemplazadas por las correspondientes de Angularv18, rxjs, y zone.js. Además, hemos añadido las dependencias de Karma y Jasmine, que son las bibliotecas por defecto en Angular para ejecutar tests.

2.2 El fichero karma.conf.js

Karma es el test runner utilizado en Angular, y en Angularv18 deberás asegurarte de que está correctamente configurado para ejecutar las pruebas. Aquí un ejemplo básico de cómo debería verse el fichero karma.conf.js actualizado:

: “IA, ¿puedes fichero karma.conf.js para ejecutar tests basándote en las recomendaciones de Angularv18?”

IA (Cursor): “Claro, aquí tienes el fichero karma.conf.js para poder ejecutar los tests en base a las buenas prácticas de Angularv18.”

IA (Cursor): “Claro, aquí tienes el fichero karma.conf.js para poder ejecutar los tests en base a las buenas prácticas de Angularv18.”

Este archivo incluye las configuraciones necesarias para ejecutar tests con Jasmine y Chrome como navegador predeterminado. También se utiliza el reporter HTML para mostrar los resultados de las pruebas de forma más visual y comprensible.

2.3 El fichero angular.json

Este archivo reemplaza al antiguo angular-cli.json y es fundamental para definir cómo se comporta el CLI de Angular en las distintas fases del ciclo de vida del proyecto. Incluye configuraciones para los entornos de desarrollo y producción, la compilación de la aplicación y la ejecución de pruebas.

: “IA, ¿puedes fichero angular.json para ejecutar tests basándote en las recomendaciones de Angularv18?”

IA (Cursor): “Claro, aquí tienes el fichero angular.json con las modificaciones necesarias para poder ejecutar los tests en base a las buenas prácticas de Angularv18.”

IA (Cursor): “Claro, aquí tienes el fichero angular.json con las modificaciones necesarias para poder ejecutar los tests en base a las buenas prácticas de Angularv18.”

Este archivo vincula las configuraciones de Karma para la ejecución de pruebas, define los puntos de entrada (main.ts, index.html), y especifica los archivos de configuración de TypeScript para la compilación (tsconfig.app.json y tsconfig.spec.json).

3. Migración de Tests

La migración de tests es una parte crucial, especialmente si tu aplicación ya cuenta con una suite de pruebas en AngularJS utilizando herramientas como Jasmine o Karma. A continuación, veremos cómo migrar los tests a Angularv18.

3.1. Migración de un Test Unitario

En AngularJS, los tests unitarios solían escribirse con describe, it y las funciones de Jasmine. Si bien la estructura sigue siendo similar, en Angularv18 necesitarás importar los módulos y servicios que pruebas usando TestBed.

Ejemplo de test en AngularJS

Ejemplo de test en AngularJS

Ejemplo migrado a Angularv18

En Angularv18, usarás TestBed para configurar los módulos necesarios para cada test:

: “IA, ¿puedes revisar el fichero de test para migrarlo a Angularv18?”

IA (Cursor): “Claro, aquí tienes las modificaciones en los tests para que sean ejecutados en Angularv18.”

Ejemplo migrado a Angularv18

4. Depuración con la IA

Una vez que has migrado los componentes, servicios, rutas y los tests, es hora de ejecutar las pruebas. Si algo falla, la IA está ahí para ayudarte a depurar el código.

: “IA, ejecuté ng test y recibo un error en el componente HomeComponent. ¿Puedes ayudarme a depurarlo?”

IA (Cursor): “Parece que hay un problema con la inicialización del HomeComponent. Te sugiero que verifiques el constructor y la inyección de dependencias. Aquí tienes el código corregido.”

Con estas interacciones, la IA accederá tanto a los ficheros, tanto de código como de test, y a la salida de los tests por consola, y te proporcionará las posibles causas de los errores, con lo que podrás identificar y corregir dichos errores más rápidamente.

Conclusión: Testing con IA y Cursor

Migrar tests de una versión de una librería a otra, o crearlos desde cero, puede ser un reto complejo y repetitivo, con el apoyo de Cursor y su IA integrada estas tareas se vuelven más livianas y permiten centrar el pensamiento del desarrollador en generar estos tests más útlies, ayudando en crearlos o migrarlos de forma eficiente y siguiendo las buenas prácticas, aportando más valor al negocio.

Próximos pasos: ¡Habla con la IA y expande tus horizontes!

Ahora que conoces las posibilidades, abre Cursor, explora tus ideas y cómo este gran asistente te puede ayuudar a llevarlas a cabo o mejorarlas de forma exponencial, nunca es tarde para aprender y mejorar y la IA, cada día con más fuerza, ayuda a que nuestro trabajo sea más productivo e ilusionante.

Despedida y spoiler alert

Explora este IDE, puede ser un gran compañero para innovar y liberar tu mente para ser más productivo y eficiente. ¡Nos vemos en el siguiente artículo, que hablaremos de crear un enjambre de agentes Smith que sigan tus órdenes!

<span style="font-size:80%">Autor </span><a href="https://blog.kairosds.com/author/danielcontreras/" target="_self">Daniel Contreras</a>

Autor Daniel Contreras

Oct 16, 2025

Otros artículos

Test de mutación

Test de mutación

Introducción Como desarrolladores de software siempre queremos entregar la máxima calidad que podamos dar. Creamos tests, medimos la cobertura y confiamos en que son fiables… hasta que aparece un bug en producción justo en una zona que se supone que está cubierta....