Hola, mi querido amigo de la calidad. Vamos a empezar a hablar sobre inteligencia artificial. Recientemente estuve en el TestingPeru en Lima y me di cuenta de que había algunas ideas e información sobre este tema que sería importante compartir con ustedes, especialmente porque estamos entrando en una etapa en la que la inteligencia artificial ya no solamente responde nuestras preguntas, sino que comienza a formar parte activa de nuestro trabajo. Y quiero comenzar precisamente por ahí, hablando sobre los agentes y, poco a poco, sobre algo que me parece todavía más interesante para nuestro trabajo: los microagentes.
Durante los últimos años nos hemos acostumbrado a usar inteligencia artificial. Abrimos ChatGPT, Claude, Gemini o cualquier otra herramienta, escribimos una pregunta y esperamos una respuesta: explícanos una historia de usuario, genera casos de prueba a partir de criterios de aceptación, encuentra qué está mal en este código o analiza determinado error. Y funciona. De hecho, para muchos de nosotros la inteligencia artificial ya se convirtió en una herramienta cotidiana de trabajo que nos ayuda a escribir documentación, entender código, analizar requerimientos o simplemente reducir el tiempo que dedicamos a determinadas tareas repetitivas. Sin embargo, está comenzando a ocurrir un cambio mucho más interesante: estamos pasando de usar IA a trabajar con IA, y es justamente ahí donde aparecen los agentes.
Mientras al chatbot le preguntas, el agente actúa
Imaginemos una situación bastante común para alguien que trabaja en QA. Nos entregan una historia de usuario con varios criterios de aceptación y podemos copiarla en una herramienta de inteligencia artificial y pedirle:
“Analiza esta historia de usuario y genera los casos de prueba.”
La IA probablemente hará un buen trabajo: generará escenarios positivos, negativos, casos de borde y quizás incluso algunas situaciones que nosotros no habíamos considerado. Sin embargo, después nosotros tenemos que continuar con el proceso: tomamos esos casos, los llevamos a nuestra herramienta de gestión de pruebas, preparamos los datos, ejecutamos las pruebas y revisamos los resultados; si algo falla, buscamos los logs, entramos al debugger, consultamos una API, quizás revisamos la base de datos y finalmente documentamos el resultado. La inteligencia artificial participó en una parte del proceso, pero nosotros seguimos siendo quienes conectamos cada uno de esos pasos.
Ahora imaginemos algo diferente. En lugar de pedirle únicamente que genere nuestros casos de prueba, le damos un objetivo mucho más amplio:
“Analiza esta historia de usuario, identifica los escenarios importantes, ejecuta las pruebas existentes relacionadas y dime si encuentras algún comportamiento que contradiga los criterios de aceptación.”
Para responder a esta solicitud ya no basta con generar texto. La inteligencia artificial necesita consultar información, localizar las pruebas relacionadas, ejecutarlas, interpretar sus resultados y posiblemente utilizar otras herramientas para investigar lo que está ocurriendo. Esto empieza a parecerse mucho más a un agente: un sistema que no se limita a responder, sino que puede realizar acciones a través del computador para alcanzar un objetivo, casi como si estuviéramos trabajando con un asistente al que podemos entregarle determinadas responsabilidades.
Entonces, ¿qué es un agente de inteligencia artificial?
No existe una definición perfecta, especialmente porque actualmente la palabra agente se utiliza para describir muchas cosas diferentes, pero podemos utilizar una definición práctica: un agente es un sistema basado en inteligencia artificial capaz de recibir un objetivo, decidir qué acciones necesita realizar, utilizar herramientas para ejecutarlas y aprovechar los resultados obtenidos para continuar trabajando hacia ese objetivo. La diferencia con simplemente hacer una pregunta es importante. Cuando utilizamos una IA tradicionalmente, el flujo suele parecerse a persona → prompt → IA → respuesta; con un agente comenzamos a tener algo parecido a persona → objetivo → agente → acción → resultado → análisis → decisión → nueva acción → nuevo resultado, y ese ciclo puede repetirse varias veces hasta completar la tarea o llegar a un punto en el que sea necesaria nuestra intervención.
El cambio parece pequeño, pero conceptualmente es enorme: la inteligencia artificial deja de ser solamente un lugar al que vamos a hacer preguntas y comienza a participar en la ejecución de un proceso.
Pensemos en un ejemplo de testing
Supongamos que tenemos una aplicación de comercio electrónico y una prueba automatizada para realizar un pago. Ejecutamos nuestra suite de WebdriverIO y una prueba falla. Podemos copiar ese error, llevarlo a ChatGPT y preguntarle por qué está fallando. La IA seguramente podrá ofrecernos diferentes hipótesis: el selector pudo haber cambiado, los datos de la tarjeta pueden ser incorrectos, la aplicación puede estar devolviendo un error o incluso nuestra propia automatización podría tener un problema. Son buenas posibilidades, pero siguen siendo hipótesis porque la inteligencia artificial solamente conoce la información que nosotros decidimos entregarle.
Ahora imaginemos que nuestro agente tiene acceso controlado a determinadas herramientas: WebdriverIO, los reportes de ejecución, los logs de la aplicación, las APIs utilizadas durante el pago y, si fuera necesario, alguna fuente adicional de información relacionada con el producto. En lugar de copiar y pegar información de una herramienta a otra, podríamos darle simplemente un objetivo:
“Investiga por qué falló la prueba de pago.”
A partir de ahí, el agente podría seguir un proceso como este:
- Ejecutar la prueba y confirmar el fallo.
- Revisar el reporte de ejecución.
- Comprobar que el formulario fue completado correctamente.
- Revisar la respuesta obtenida después de enviar el pago.
- Consultar los logs o la API relacionada.
- Relacionar la evidencia encontrada con el resultado de la prueba.
Finalmente podría devolvernos algo mucho más útil: “La interacción con el formulario se completó correctamente. El fallo ocurrió después de enviar el pago. La API respondió con un 400 porque la fecha de expiración enviada no cumple con el formato esperado.” Fíjate en la diferencia: la inteligencia artificial no simplemente generó posibles explicaciones, utilizó herramientas para recopilar evidencia y construir una respuesta mucho más adecuada a lo que realmente ocurrió.
Los agentes necesitan herramientas
Aquí aparece una de las ideas más importantes de esta serie. Un modelo de inteligencia artificial puede ser muy bueno razonando sobre información, pero eso no significa que automáticamente pueda interactuar con nuestro entorno; para hacerlo necesita herramientas que le permitan leer un archivo, consultar una API, ejecutar WebdriverIO, buscar información dentro de la documentación, revisar un repositorio, ejecutar un comando o consultar los resultados de nuestras pruebas. El agente puede decidir cuándo necesita alguna de esas capacidades y utilizar la herramienta correspondiente para obtener nueva información, analizarla y determinar cuál debería ser el siguiente paso. Dicho de una forma sencilla: la inteligencia artificial aporta la capacidad de analizar y decidir, mientras que las herramientas le permiten interactuar con nuestro entorno.
Aquí también empezaremos a encontrarnos con el concepto de microagentes. En lugar de imaginar una única inteligencia artificial gigantesca con acceso a absolutamente todo nuestro ecosistema, podemos pensar en agentes mucho más pequeños y especializados en responsabilidades concretas: uno encargado de analizar una historia de usuario, otro capaz de ejecutar determinadas pruebas, otro especializado en consultar logs y otro que pueda revisar resultados de una API. Esta separación puede ayudarnos a construir sistemas más controlados y, sobre todo, a definir mucho mejor qué puede hacer cada agente y hasta dónde puede llegar.
Un agente no significa autonomía absoluta
Cuando hablamos de agentes es fácil imaginar una especie de empleado digital completamente autónomo al que entregamos una tarea y dejamos haciendo absolutamente todo por nosotros, pero más autonomía no significa necesariamente una mejor automatización. Si algo hemos aprendido trabajando con automatización es que automatizar tiene sentido cuando sabemos qué queremos conseguir y cuáles son los límites del proceso; con los agentes ocurre exactamente lo mismo. Podemos permitir que un agente ejecute nuestras pruebas, lea logs, consulte determinadas APIs o analice documentación sin que eso implique darle permiso para modificar datos de producción, eliminar registros o decidir unilateralmente que determinado comportamiento representa un bug.
Precisamente por eso los microagentes pueden resultar tan interesantes. En lugar de preguntarnos simplemente “¿qué puede hacer mi agente?”, podemos comenzar a diseñarlos alrededor de responsabilidades específicas: ¿qué necesita hacer este agente para cumplir su objetivo y qué herramientas necesita realmente para conseguirlo? Tener límites claros, permisos definidos y momentos en los que una persona debe intervenir también forma parte de diseñar correctamente un sistema basado en agentes.
La experiencia del QA sigue teniendo una responsabilidad fundamental
Para mí, esta es probablemente la parte más interesante de todo esto. Durante años hemos hablado de automatizar pruebas, pero ahora podemos comenzar a hablar también de automatizar partes del proceso de investigación del producto utilizando inteligencia artificial. Sin embargo, investigar un producto no consiste solamente en ejecutar pasos: existe contexto, intención, riesgo, conocimiento del negocio y una enorme cantidad de información que un QA adquiere con la experiencia. Un agente puede descubrir que una API devuelve un 400, pero alguien necesita entender si esa respuesta corresponde al comportamiento esperado; puede detectar que un botón desapareció, pero eso no significa automáticamente que exista un defecto, porque quizás cambió el requerimiento, existe una condición de negocio que desconocemos o nuestra prueba simplemente dejó de representar el comportamiento actual del producto.
Y es precisamente aquí donde prácticas como shift-left testing y la experiencia del QA pueden potenciar muchísimo el trabajo con inteligencia artificial. Mientras antes participemos en el entendimiento del producto, los requerimientos, riesgos y decisiones de negocio, mejor contexto tendremos para diseñar qué debe investigar un agente y cómo interpretar la información que nos devuelve. La experiencia del tester no compite con la inteligencia artificial; al contrario, es la que permite hacer mejores preguntas, establecer límites, reconocer riesgos y decidir qué evidencia realmente importa. Podemos automatizar parte de la investigación, pero seguimos necesitando conocimiento del producto para convertir esa información en decisiones de calidad.
De automatizar pasos a automatizar investigación
Durante mucho tiempo nuestra conversación sobre automatización se ha concentrado en acciones como abrir una página, escribir un usuario y una contraseña, hacer clic en un botón y validar un resultado. Todo eso continúa siendo útil, pero los agentes nos permiten empezar a pensar en otro nivel: ante un fallo podemos recopilar evidencia, consultar diferentes fuentes, relacionar información, identificar posibles causas y presentar los hallazgos para que una persona pueda tomar una decisión. Ya no estamos automatizando solamente la interacción con una interfaz; estamos empezando a automatizar partes del proceso de investigación que ocurre alrededor de nuestras pruebas, utilizando nuestras automatizaciones existentes como una de las herramientas disponibles para conseguirlo.
Entonces, ¿los agentes reemplazarán nuestras automatizaciones?
La respuesta directa es no. WebdriverIO seguirá siendo una excelente herramienta para ejecutar pruebas de interfaz, nuestras herramientas de API seguirán permitiéndonos validar servicios, las bases de datos continuarán respondiendo nuestras consultas y nuestros frameworks seguirán ejecutando assertions. Un agente no necesita reemplazar estas herramientas; puede utilizarlas y conectarlas para conseguir un objetivo más amplio. La automatización que ya construimos puede convertirse, de hecho, en una capacidad disponible para nuestros agentes.
Y justamente aquí empieza a aparecer otra pregunta interesante: si queremos que nuestros agentes puedan utilizar WebdriverIO, consultar APIs, leer archivos, revisar repositorios o interactuar con diferentes herramientas, ¿cómo hacemos para conectar todo eso sin desarrollar una integración completamente diferente cada vez? Esta pregunta nos llevará eventualmente a MCP, Model Context Protocol, pero antes necesitamos entender una pieza fundamental: cómo funcionan realmente las herramientas que puede utilizar un agente, cómo podemos exponerlas de forma segura y cómo enseñamos al agente cuándo debe utilizarlas. Ese será nuestro siguiente paso.
Muchas gracias por leer hasta acá. Si te interesó este blog, compártelo, déjame tus comentarios y cuéntame qué piensas sobre el uso de agentes y microagentes dentro de QA. En los próximos posts vamos a seguir hablando sobre inteligencia artificial, pero también vamos a comenzar a construir y conectar estas ideas con ejemplos reales. Así que me gustaría saber qué piensas sobre estos temas y, sobre todo, cómo crees que podrían cambiar nuestra forma de trabajar en calidad.


