Ahora que lo “digital” es una parte clave de todos los aspectos de la actividad empresarial, la capacidad de ofrecer innovación a gran velocidad es una cuestión de vida o muerte. En un mercado altamente competitivo con expectativas crecientes de experiencia del cliente, el lanzamiento oportuno de productos y servicios digitales de primer nivel ya no es una ventaja, es fundamental para la adquisición y retención de clientes. El más mínimo retraso podría ser la oportunidad que un competidor necesita para ganar participación de mercado y convertirse en el nuevo disruptor.
Esto hace que empoderar a los equipos de software para ofrecer experiencias digitales impecables a velocidad y escala sea de gran importancia estratégica. Para lograrlo, las organizaciones necesitan comentario para determinar si el último desarrollo funcionará según lo previsto, romperá la funcionalidad principal o, peor aún, fallará en un entorno del mundo real. Las pruebas de software, que alguna vez se percibieron como un impedimento para la velocidad y la innovación, ahora se han convertido en un componente crítico de la actividad de desarrollo.
Esto representa un gran cambio de perspectiva respecto del enfoque clásico en cascada hacia el desarrollo de software en el que las pruebas a menudo se dejaban para el final. Ahora, el paso a DevOps y Las metodologías ágiles significan que las pruebas son esenciales para acelerar la entrega de aplicaciones innovadoras sin incurrir en riesgos comerciales inaceptables. Pero las iniciativas Agile y DevOps también están llevando los métodos de prueba tradicionales al límite. La automatización y las pruebas a lo largo del ciclo de vida del desarrollo son nuevos elementos imprescindibles.
Director de Tecnología y Digital, Tricentis.
Enfrentando los desafíos de la entrega continua
Las organizaciones están publicando contenido con mucha más frecuencia, incluso varias veces por hora. Se espera que los evaluadores prueben cada historia de usuario tan pronto como se implemente, incluso cuando esa funcionalidad interactúa con otra funcionalidad que evoluciona en paralelo. También se espera que las pruebas alerten al equipo cuando los cambios afecten involuntariamente a la funcionalidad heredada que se implementó, probó y validó en semanas, meses o años anteriores.
A medida que las organizaciones avanzan cada vez más hacia la entrega continua con procesos de entrega automatizados, las decisiones de ir o no dependerán en última instancia de los resultados de las pruebas. La automatización de las pruebas es necesaria, pero no suficiente. Incluso con la automatización más completa, no hay tiempo suficiente para probarlo todo. Cuando las organizaciones adoptan arquitecturas y métodos de entrega modernos, incluso equipos Experimentar un claro éxito en la automatización de pruebas enfrentará desafíos.
Por ejemplo, no es posible crear o ejecutar pruebas realistas con la suficiente rapidez o frecuencia. Los equipos están abrumados por un flujo aparentemente interminable de falsos positivos y pruebas incompletas, sin mencionar todo el mantenimiento de las pruebas necesario para abordarlos. Y, por último, no pueden decirles con confianza a los líderes empresariales si un candidato a ser liberado es apto para ser liberado.
Es imposible probar todos los caminos posibles a través de una aplicación empresarial moderna cada vez que una organización se prepara para una nueva versión. Sin embargo, si se reconsidera el enfoque de las pruebas, es posible lograr una evaluación exhaustiva del riesgo empresarial con muchas menos pruebas que las que realizan la mayoría de las empresas en la actualidad.
Poner en juego las pruebas continuas
Aquí es donde entran en juego las pruebas continuas: proporcionar la retroalimentación adecuada a la parte interesada adecuada en el momento adecuado. Durante décadas, tradicionalmente las pruebas se aplazaban hasta el final del ciclo. Pero en ese momento ya era demasiado tarde. Había poco que el equipo pudiera hacer para abordar los comentarios de los evaluadores, excepto retrasar el lanzamiento.
Con las pruebas continuas, la atención se centra en acelerar la innovación proporcionando retroalimentación procesable en el punto en el que es posible actuar en consecuencia. Esto ayuda a los equipos de desarrollo a identificar y solucionar problemas de la manera más eficiente posible. Acelera la entrega al ayudar a los líderes empresariales a determinar cuándo es razonablemente seguro lanzarlo. Esto se logra dominando e yendo más allá de la automatización de pruebas. Requiere alinear las pruebas con los riesgos comerciales, garantizar que las pruebas evalúen de manera efectiva la experiencia del usuario final y brindar la retroalimentación de calidad instantánea requerida en las diferentes etapas del proceso de entrega.
Por lo tanto, las organizaciones deben implementar un enfoque de prueba estructurado para nuevas funciones. Los equipos de desarrollo y pruebas deben poder saber qué entornos han implementado código nuevo, cuándo nuevas piezas de software deben ser examinados, qué tipo de cobertura brindan las distintas pruebas y qué pruebas adicionales se necesitan. Pero las carteras de casos de prueba suelen sufrir el mismo problema: un gran volumen de pruebas con muy poca cobertura de la aplicación.
Esto da como resultado casos de prueba duplicados y más mantenimiento para cubrir el conjunto cada vez mayor de pruebas, un proceso poco práctico y costoso. Al adoptar la optimización de pruebas basada en riesgos, se pueden reducir las pruebas innecesarias y al mismo tiempo mejorar drásticamente la cobertura de riesgos. También es posible ver qué funcionalidad crítica para el negocio se aprobó o falló, lo que permite a las organizaciones tomar decisiones comerciales más rápidas y más informadas sobre los lanzamientos. Esto da como resultado una cobertura máxima de la funcionalidad empresarial de mayor impacto, con el menor esfuerzo. En esencia, las pruebas continuas consisten en evaluar el efecto del cambio, utilizando criterios basados en el riesgo para priorizar las pruebas y evaluar el riesgo empresarial al determinar cuándo realizar el envío.
Por lo tanto, el enfoque también debe estar impulsado por el cambio, no sólo dentro de la tecnología, sino también en las personas y los procesos. Las organizaciones deben considerar lo que pueden hacer desde todas las perspectivas para facilitar la transición de su estado actual a un proceso de prueba continuo que logre los objetivos de calidad, velocidad y eficiencia de la organización.
Al adoptar pruebas continuas, los equipos pueden revelar problemas importantes al principio de cada ciclo, reduciendo el tiempo de lanzamiento a más de la mitad del tiempo que lleva tradicionalmente y también reduciendo drásticamente los errores de producción en el proceso. Aún mejor, los costos de las pruebas a menudo se pueden ahorrar y medir de manera tangible: un retorno de la inversión significativo dado el entorno económico actual.
Un imperativo estratégico para el éxito digital
La conclusión es que las pruebas son ahora un imperativo estratégico para el éxito digital. Las pruebas continuas ayudan a realizar pruebas de forma más inteligente para obtener una visión rápida de lo que más importa para la empresa. Reposiciona las pruebas de un cuello de botella a un entrenador confiable que ayuda a superar los límites y adelantarse a la competencia. Junto con un mejor producto, es posible descubrir áreas de desarrollo donde se pueden lograr niveles increíbles de aumento de productividad y ahorros financieros. Sin él, es posible que sus competidores hayan tomado la delantera.
¡Enlace!
Este artículo se produjo como parte del canal Expert Insights de TechRadarPro, donde presentamos las mejores y más brillantes mentes de la industria tecnológica actual. Las opiniones expresadas aquí son las del autor y no son necesariamente las de TechRadarPro o Future plc. Si estás interesado en contribuir, descubre más aquí: https://www.techradar.com/news/submit-your-story-to-techradar-pro