En un artículo reciente sobre la actualización de las pruebas continuas para la IA generativa, pregunté cómo las herramientas de generación de código, los copilotos y otras capacidades de la IA generativa afectarían el control de calidad (QA) y las pruebas continuas. A medida que la IA generativa aceleraba la codificación y el desarrollo de software, ¿cómo se mantendrían las pruebas de código y el control de calidad con la mayor velocidad? En ese momento, sugerí que los ingenieros de control de calidad de los equipos devops deberían aumentar la cobertura de las pruebas, automatizar más pruebas y escalar la generación de datos de prueba para la mayor velocidad de desarrollo del código. También dije que los lectores deberían buscar plataformas de prueba para agregar capacidades de IA generativa. Las principales plataformas de automatización de pruebas de software ahora están lanzando esos productos generativos mejorados con IA. Los ejemplos incluyen las pruebas impulsadas por IA de Katalon, las soluciones de ingeniería de calidad impulsadas por IA de Tricentis, Test Intelligence de LambdaTest, la automatización de pruebas impulsadas por IA de UFT One de OpenText, TestComplete y VisualTest de SmartBear, y otras herramientas de prueba de software aumentadas por IA. Los ingenieros de control de calidad ahora deben validar cómo la IA generativa afecta la productividad, la cobertura, la mitigación de riesgos y la calidad de las pruebas. Esto es lo que puede esperar y recomendaciones de la industria para evaluar el impacto de la IA generativa en su organización. Más código requiere más automatización de pruebas. Un estudio de McKinsey muestra que los desarrolladores pueden completar tareas de codificación dos veces más rápido con IA generativa, lo que puede significar que habrá un aumento correspondiente en la cantidad. del código generado. La implicación es que los ingenieros de control de calidad tendrán que acelerar su capacidad para probar y validar el código en busca de vulnerabilidades de seguridad. “El impacto más significativo que la IA generativa tendrá en las pruebas es que hay mucho más que probar porque la genAI ayudará a crear código más rápido y publíquelo con más frecuencia”, dice Esko Hannula, vicepresidente senior de gestión de productos de Copado. «Afortunadamente, lo mismo se aplica a las pruebas, y la IA generativa puede crear definiciones de pruebas a partir de historias de usuarios en texto plano o escenarios de pruebas y traducirlas a scripts de automatización de pruebas ejecutables». Los propietarios de productos, analistas de negocios y desarrolladores deben mejorar la calidad de sus historias de usuarios ágiles para que la IA generativa cree scripts de automatización de pruebas eficaces. Los equipos ágiles que escriben historias de usuarios con suficientes criterios de aceptación y enlaces al código actualizado deberían considerar la automatización de pruebas generadas por IA, mientras que es posible que otros primero tengan que mejorar su recopilación de requisitos y redacción de historias de usuarios. Hannula compartió otras oportunidades de IA generativa para que los equipos ágiles las consideren. , incluido el pedido de pruebas, el informe de defectos y la reparación automática de pruebas rotas. GenAI no reemplaza las mejores prácticas de control de calidad. Los equipos de Devops utilizan modelos de lenguaje grandes (LLM) para generar objetivos de nivel de servicio (SLO), proponer causas raíz de incidentes, elaborar documentación y otros impulsores de la productividad. Pero, si bien la automatización puede ayudar a los ingenieros de control de calidad a mejorar la productividad y aumentar la cobertura de las pruebas, sigue siendo una cuestión abierta si la IA generativa puede crear escenarios de prueba significativos para el negocio y reducir los riesgos. Varios expertos intervinieron y el consenso es que la IA generativa puede aumentar las mejores prácticas de control de calidad. «Cuando se trata de control de calidad, el arte está en la precisión y previsibilidad de las pruebas, que la IA, con sus diferentes respuestas a indicaciones idénticas, aún tiene que dominar», dice Alex Martins, vicepresidente de estrategia de Katalon. . “La IA ofrece una atractiva promesa de una mayor productividad de las pruebas, pero la realidad es que los evaluadores se enfrentan a la disyuntiva de dedicar un tiempo valioso a perfeccionar los resultados del LLM en lugar de ejecutar pruebas. Esta dicotomía entre el uso potencial y práctico de las herramientas de IA subraya la necesidad de un enfoque equilibrado que aproveche la asistencia de la IA sin renunciar a la experiencia humana”. Hannula de Copado añade: “La creatividad humana aún puede ser mejor que la IA para descubrir qué podría romper el sistema. Por lo tanto, las pruebas totalmente autónomas, aunque posibles, pueden no ser todavía la forma más deseada”. Marko Anastasov, cofundador de Semaphore CI/CD, afirma: “Si bien la IA puede aumentar la productividad de los desarrolladores, no sustituye la evaluación de la calidad. Combinar la automatización con sólidas prácticas de prueba nos da la confianza de que la IA genera código de alta calidad listo para producción”. Si bien la IA generativa y la automatización de pruebas pueden ayudar a crear scripts de prueba, será útil poseer el talento y la experiencia en la materia para saber qué probar. Una importancia aún mayor y una responsabilidad cada vez mayor para los ingenieros de control de calidad. A medida que mejoren las capacidades de generación de pruebas de la IA generativa, obligará a los ingenieros de control de calidad a girar hacia la izquierda y centrarse en la mitigación de riesgos y las estrategias de prueba, menos en codificar los scripts de prueba. Comentarios más rápidos sobre los cambios de código A medida que el control de calidad se convierte en una función de mitigación de riesgos más estratégica, ¿dónde más pueden los equipos de desarrollo ágiles buscar y validar capacidades de IA generativa más allá de la productividad y la cobertura de pruebas? Una métrica importante es si la IA generativa puede encontrar defectos y otros problemas de codificación más rápido, para que los desarrolladores puedan abordarlos antes de que impidan los procesos de CI/CD o causen problemas de producción. “Integrada en los procesos de CI/CD, la IA generativa garantiza pruebas consistentes y rápidas, proporcionando retroalimentación rápida sobre los cambios de código”, dice Dattaraj Rao, científico jefe de datos de Persistent Systems. «Con capacidades para identificar defectos, analizar la interfaz de usuario y automatizar scripts de prueba, la IA generativa emerge como un catalizador transformador que da forma al futuro del control de calidad del software». El uso de IA generativa para obtener comentarios más rápidos es una oportunidad para los equipos de desarrollo que quizás no hayan implementado una estrategia de prueba completa. Por ejemplo, un equipo puede tener pruebas unitarias y de API automatizadas, pero pruebas limitadas a nivel de interfaz de usuario y datos de prueba insuficientes para encontrar anomalías. El equipo de Devops debe validar las capacidades de IA generativa integradas en sus plataformas de automatización de pruebas para ver dónde pueden cerrar estas brechas, proporcionando una mayor cobertura de pruebas y una retroalimentación más rápida. “La IA generativa transforma las pruebas continuas al automatizar y optimizar varios aspectos de las pruebas, incluidos los datos de las pruebas y los escenarios. y generación de scripts y detección de anomalías”, dice Kevin Miller, CTO Americas de IFS. «Mejora la velocidad, la cobertura y la precisión de las pruebas continuas al automatizar los procesos de prueba clave, lo que permite una validación más exhaustiva y eficiente de los cambios de software a lo largo del proceso de desarrollo». Escenarios de prueba más sólidosLa IA puede hacer más que aumentar el número de casos de prueba. y encontrar problemas más rápido. Los equipos deberían utilizar IA generativa para mejorar la eficacia de los escenarios de prueba. La IA puede mantener y mejorar continuamente las pruebas ampliando el alcance de lo que cada escenario de prueba está probando y mejorando su precisión. «La IA generativa revoluciona las pruebas continuas a través del aprendizaje adaptativo, la evolución autónoma de escenarios de prueba basados ​​en cambios de aplicaciones en tiempo real», dice Ritwik Batabyal. , CTO y responsable de innovación de Mastek”. Su reconocimiento inteligente de patrones, ajustes dinámicos de parámetros y descubrimiento de vulnerabilidades agilizan las pruebas, reducen la intervención manual, aceleran los ciclos y mejoran la solidez del software. La integración con los LLM mejora la comprensión contextual para la creación de escenarios de prueba matizados, lo que eleva la precisión y la eficiencia de la automatización en las pruebas continuas, lo que marca un cambio de paradigma en las capacidades de prueba”. Oportunidad y desafío de control de calidad. A medida que se introduzcan estas capacidades, será necesario actualizar las automatizaciones de pruebas para realizar la transición de entradas parametrizadas y de palabras clave a indicaciones, y las plataformas de prueba deberán ayudar a validar la calidad y precisión de la respuesta de un LLM. Si bien probar LLM es una capacidad emergente, contar con datos precisos para aumentar el alcance y la precisión de los escenarios de prueba es el desafío actual y un requisito previo para validar las interfaces de usuario en lenguaje natural. “Si bien la IA generativa ofrece avances como la generación autónoma de casos de prueba, la adaptación dinámica de scripts y la detección mejorada de errores, la implementación exitosa depende de que las empresas garanticen su los datos están limpios y optimizados”, afirma Heather Sundheim, directora general de ingeniería de soluciones de SADA. «La adopción de la IA generativa en las pruebas requiere abordar consideraciones de calidad de los datos para aprovechar plenamente los beneficios de esta tendencia emergente». Los equipos de Devops deberían considerar ampliar sus datos de prueba con datos sintéticos, especialmente cuando amplían el alcance de los formularios y flujos de trabajo de prueba hacia la prueba del lenguaje natural. interfaces y avisos. GenAI seguirá evolucionando rápidamente Los equipos de Devops que experimentan con herramientas de IA generativa incorporando interfaces de lenguaje natural en aplicaciones, generando código o automatizando la generación de pruebas deben reconocer que las capacidades de IA evolucionarán significativamente. Siempre que sea posible, los equipos de desarrollo deberían considerar la creación de capas de abstracción en sus interfaces entre aplicaciones y plataformas con herramientas de IA generativa. “El ritmo del cambio en la industria es vertiginoso, y lo único que podemos garantizar es que las mejores herramientas actuales no seguirán funcionando. serán las mejores herramientas el próximo año”, dice Jonathan Nolen, vicepresidente senior de ingeniería de LaunchDarkly. «Los equipos pueden preparar su estrategia para el futuro asegurándose de que sea fácil intercambiar modelos, indicaciones y medidas sin tener que reescribir el software por completo». También podemos esperar que las plataformas de automatización de pruebas y las herramientas de análisis de código estático mejoren sus capacidades para probar código generado por IA. Sami Ghoche, CTO y cofundador de Forethought, dice: “El impacto de la IA generativa en las pruebas continuas y automatizadas es profundo y multifacético, particularmente en las pruebas y evaluación del código creado por copilotos y generadores de códigos, y en las pruebas. incorporaciones y otros trabajos de desarrollo de LLM”. La IA generativa está generando expectación, entusiasmo y resultados comerciales impactantes. Ahora lo que se necesita es que el control de calidad valide las capacidades, reduzca los riesgos y garantice que los cambios tecnológicos funcionen dentro de los estándares de calidad definidos. Copyright © 2024 IDG Communications, Inc.

Source link