shift left testing secret mantra
El nuevo Shift Left Testing, un mantra de DevOps en el desarrollo de software:
Un rápido Resumen de todos los tutoriales en video en DevOps fue explicado en nuestro tutorial anterior. Ahora, veremos acerca de las pruebas de Shift left.
Cuando utilizo el término 'Shift Left', es posible que se pregunte a qué me refiero con Shift Left en un software.
Hace más de dos décadas, cuando comencé mi carrera como tester de software, no había una 'Fase de prueba' separada para el desarrollo de software y el rol de Testers nunca existía en absoluto. Los desarrolladores solían desarrollar el software, probarse a sí mismos y hacer un lanzamiento de software.
Lectura adicional => Serie de tutoriales informativos de DevOps
El concepto de Pruebas de software se introdujo gradualmente cuando los defectos de la producción comenzaron a afectar el presupuesto del proyecto y, por lo tanto, las 'Pruebas funcionales' entraron en vigencia con un equipo muy reducido de probadores. En ese momento, éramos solo dos probadores contra un equipo de 20 desarrolladores.
La industria de TI comenzó a seguir el modelo en cascada para el desarrollo de software en el que, como todos sabemos, el ciclo de vida del desarrollo de software va secuencialmente en el orden de Requisitos => Diseño => Codificación => Prueba .
Por lo tanto, si comienza de izquierda a derecha, la fase de prueba se encuentra en el extremo derecho del ciclo de vida del desarrollo de software.
Lo que vas a aprender:
- Introducción al concepto de desplazamiento a la izquierda
- ¿Qué es Shift Left Testing?
- ¿Cómo influye Shift Left en el desarrollo de software?
- ¿Qué deben hacer los probadores de manera diferente en Shift Left?
- Beneficios de las pruebas de cambio a la izquierda
- Conclusión
- Lectura recomendada
Introducción al concepto de desplazamiento a la izquierda
Durante un período de tiempo, la gente se dio cuenta de la importancia de Pruebas de software y el impacto de mantener la 'fase de prueba' en el extremo derecho o al final del ciclo de vida del desarrollo de software. Esta constatación sucedió porque el costo del error identificado hacia la extrema derecha y al final fue muy alto y se requirió un esfuerzo enorme y demasiado tiempo para solucionarlos.
Hubo casos en los que después de gastar tanto tiempo y esfuerzo en un software, debido al error crucial identificado al final, el software de misión crítica no se pudo lanzar al mercado, lo que resultó en una gran pérdida.
Por lo tanto, debido a identificación del error durante la última etapa o el lanzamiento se retrasó o, en ocasiones, el software se desechó al considerar el esfuerzo requerido para solucionarlos, lo que realmente no valió la pena.
'Los defectos son menos costosos cuando se detectan temprano'.
Este descubrimiento y la gran lección aprendida introdujeron una gran revolución en la industria del software y dieron origen a un nuevo concepto llamado 'Desplazar a la izquierda' , lo que significa cambiar la 'Fase de prueba' de la izquierda a la derecha o involucrar la prueba en cada etapa e involucrar a los evaluadores en todo momento.
La prueba de Shift Left también significa que simplemente no prueba al final, sino prueba continuamente.
¿Qué es Shift Left Testing?
En primer lugar, el principio de 'Desplazamiento a la izquierda' apoya la Equipo de prueba para colaborar con todas las partes interesadas desde el principio en la fase de desarrollo de software. Por lo tanto, pueden comprender claramente los requisitos y diseñar los casos de prueba para ayudar al software a 'Fail Fast' y permitir que el equipo corrija todas las fallas lo antes posible.
cuál es el mejor ide para Python
El enfoque Shift Left no es más que involucrar a los probadores mucho antes en el ciclo de vida del desarrollo de software, lo que a su vez les permitiría comprender los requisitos, el diseño del software, la arquitectura, la codificación y su funcionalidad, hacer preguntas difíciles a los clientes, analistas comerciales y desarrolladores. , busque aclaraciones y proporcione comentarios siempre que sea posible para apoyar al equipo.
Esta participación y comprensión llevará a los probadores a obtener un conocimiento completo sobre el producto, pensar en varios escenarios, diseñar escenarios en tiempo real basados en el comportamiento del software, lo que ayudaría al equipo a identificar los defectos incluso antes de realizar la codificación.
¿Cómo influye Shift Left en el desarrollo de software?
El enfoque Shift Lift influye en el desarrollo de software de varias formas.
A continuación se presentan algunos puntos clave sobre Shift Left:
- El enfoque Shift Left se centra en Involucrar a los probadores en todas y lo más importante las etapas críticas Del programa . Esto permite a los evaluadores desviar su atención de la detección de defectos a la prevención de defectos e impulsar los objetivos comerciales del programa.
- El enfoque Shift Left proporciona, gran importancia para las pruebas con lo cual los roles y responsabilidad de los probadores aumentan enormemente.
- Al aumentar la responsabilidad del equipo de pruebas, el equipo simplemente no se centra en 'Probar el software para identificar los errores' , pero trabaja de manera proactiva con el equipo desde las etapas iniciales para planificar y construir una estrategia de prueba sólida y efectiva al proporcionar un excelente liderazgo y orientación de prueba al equipo al enfocarse en la visión a largo plazo del producto, en lugar de simplemente tomar la responsabilidad del trabajo de prueba.
- El enfoque Shift Left da el oportunidad para que los probadores diseñen las pruebas primero , donde las pruebas están completamente enfocadas en la experiencia del cliente y sus expectativas, lo que a su vez permitirá a los desarrolladores desarrollar el software en base a estas pruebas y, por lo tanto, satisfacer las necesidades del cliente.
- El enfoque de Shift Left simplemente no termina solo con los probadores. Pasar al alquiler y realizar las actividades de prueba de forma continua también permitir que los Desarrolladores se apropien más de su código y aumentar sus responsabilidades en las pruebas.
- El enfoque Shift Left también fomenta Probadores para adoptar Desarrollo impulsado por comportamiento BDD y desarrollo impulsado por pruebas TDD , que ayuda a prevenir la inducción de defectos en el software.
- Shift Left Testing en Agile: Desplazamiento hacia la izquierda apoya la formación Scrum ágil Equipos que obligatoriamente incluyen Testers junto con los otros roles e incluye a los probadores en llamadas regulares, otras interacciones, reuniones de revisión, lo que ha hecho que los probadores tengan más información relacionada con el programa y, por lo tanto, les ha permitido disfrutar e involucrarse en el análisis detallado del software y proporcionar retroalimentación rápida que ayudaría a prevenir los defectos del software.
La prueba general de cambio a la izquierda requiere que los evaluadores 'Involúcrate temprano' , lo antes posible y participe en la discusión y colabore en ideas, requisitos en cada etapa donde el resultado de la etapa influye en el valor del producto final y también ayude al proyecto a identificar los riesgos y mitigarlos por adelantado.
¿Qué deben hacer los probadores de manera diferente en Shift Left?
A continuación se presentan algunos factores clave que deben tenerse en cuenta como lo que los probadores hacen de manera diferente en Estrategia de desplazamiento a la izquierda:
#1) El equipo de prueba necesita participar temprano en el sistema desde el inicio del proyecto con el fin de desarrollar la integración con el resto del equipo y el negocio para proporcionar aportes útiles en cada etapa del desarrollo de software.
#2) El equipo de prueba debe trabajar con el equipo de Operaciones y Negocios y ganar claridad en el programa y proporcionar una visión clara a pedido y ayudar a planificar de manera eficiente las necesidades de aumento de recursos, las necesidades de capacitación y los requisitos de herramientas de prueba para el programa con mucha anticipación.
#3) Los equipos de prueba deben interactuar con todas las partes interesadas del negocio al principio del desarrollo de software para obtener una visibilidad clara del producto & diseñar una estrategia de prueba unificada y planifique un esfuerzo de prueba optimizado, analice la dependencia de entornos de prueba, terceros, stubs, etc., y prepare una estrategia y un marco de automatización robustos y cree un plan de gestión de datos de prueba eficaz.
#4) El equipo de prueba tiene que trabajar con el resto del equipo para proporcionar una gran prueba de liderazgo y orientación para el equipo por lo tanto, teniendo en cuenta la visión del producto a largo plazo en lugar de simplemente asumir la responsabilidad de las actividades de prueba.
#5) Los requisitos son la clave y la base del éxito de cualquier programa y los requisitos bien definidos definen el éxito del proyecto. Durante la fase de planificación de requisitos, los probadores necesidad de revisar y analizar los requisitos para cualquier ambigüedad, mejor claridad, integridad, capacidad de prueba, definición de criterios de aceptación, etc.
También es necesario identificar los requisitos que faltan (si los hay), comprender las dependencias y las estrategias de implementación. Clear Requirements ayuda al software a 'fallar rápidamente' y corregir todas las fallas lo antes posible.
#6) Aporta suficiente claridad y precisión en los requisitos al resaltar el ejemplos reales que ilustran las funciones que están en uso.
#7) Los probadores necesitan asistir a reuniones de revisión de diseño regularmente y comprender el diseño y la arquitectura del producto e identificar las fallas de diseño, sugerir opciones de diseño alternativas, identificar las lagunas y crear escenarios de prueba en consecuencia para romper los diseños.
#8) Los probadores necesitan llevar a cabo Pruebas estáticas (reseñas) con suficiente antelación y proporcionar comentarios sobre los documentos clave del proyecto para evitar que los defectos se arraiguen en el software y amplíen su efecto más adelante.
#9) El equipo de prueba debe colaborar con el equipo de diseño y desarrollo. en proporcionar escenarios de prueba por adelantado para desarrollar el código y abordar todos los posibles escenarios y flujos comerciales en tiempo real.
#10) El equipo de prueba tiene que diseñar escenarios de prueba sólidos y sólidos de modo que solo se identifiquen unos pocos defectos durante la prueba y se eviten los defectos importantes al entrar en la fase de prueba.
#11) Los probadores tienen que Pruebe lo antes posible , ya sea en un sistema autónomo o local, para que el defecto no llegue a etapas posteriores.
El quid del concepto de 'Desplazamiento a la izquierda' para los probadores es encontrar los defectos lo antes posible por todos los medios posibles.
Beneficios de las pruebas de cambio a la izquierda
El enfoque Shift Left funciona basado en el manifiesto ágil y también tiene varias ventajas.
cómo abrir archivos torrent en mac
Son:
- Individuos e interacciones sobre procesos y herramientas.
- Software de trabajo sobre documentación completa.
- Colaboración con el cliente sobre la negociación del contrato.
- Respondiendo al cambio sobre seguir un plan.
Podemos ver que mientras el valor está en los elementos de la derecha, valoramos más para los elementos del lado izquierdo.
Bueno, Shift Left se trata de llevar la idea de probar más temprano en el proceso, lo que resulta en una prueba mejor y más eficiente y mejora la calidad del software.
En pocas palabras, el proceso de Shift Left Testing es:
- Detectar los defectos a tiempo, reduciendo así el costo del proyecto.
- Probar continuamente una y otra vez para reducir los defectos al final.
- Automatizar todo y mejorar el time to market.
- Centrarse en los requisitos del cliente y mejorar la experiencia del cliente.
Conclusión
'Desplazar a la izquierda' El concepto trajo una gran transformación para todo el rol de 'Pruebas'. Hasta entonces, el único enfoque de las pruebas era solo la 'detección de defectos' y ahora el objetivo del 'cambio a la izquierda' desde la perspectiva de las pruebas es un viaje de ‘Detección temprana de defectos para Prevención de defectos ’ .
Por lo tanto, Shift Left es un gran salto en la industria del software en la metodología de desarrollo de software hacia la velocidad de comercialización, mejorando la calidad del software y reduciendo el 'tiempo de comercialización'.
Sobre el Autor: Este artículo fue escrito por el miembro del equipo de STH, Gayathri Subrahmanyam. Trabaja en pruebas de software desde los años 90, justo cuando se introdujo el rol de tester en la industria. Durante su carrera de pruebas, ha realizado muchas evaluaciones de TMMI, trabajos de industrialización de pruebas, configuraciones de TCOE además de manejar las entregas de pruebas e implementado la práctica de DevOps para un gran compromiso. Pero según ella, el aprendizaje nunca se detiene ...
Háganos saber sus pensamientos / sugerencias en la sección de comentarios a continuación.
PREV Tutorial | SIGUIENTE Tutorial
Lectura recomendada
- Mejores herramientas de prueba de software 2021 (Herramientas de automatización de pruebas de control de calidad)
- Trabajo de asistente de control de calidad de pruebas de software
- Desplazamiento a la izquierda de la calidad: ¿Cómo es tan importante como Desplazamiento a la izquierda en las pruebas?
- Curso de pruebas de software: ¿A qué instituto de pruebas de software debo unirme?
- Elegir las pruebas de software como carrera
- Prueba de software Escritor de contenido técnico Trabajo autónomo
- Algunas preguntas interesantes de la entrevista sobre pruebas de software
- Comentarios y revisiones del curso de pruebas de software