shift left testing secret mantra
Le nouveau Shift Left Testing, un mantra DevOps dans le développement logiciel:
Un rapide Récapitulatif de tous les tutoriels vidéo dans DevOps a été expliqué dans notre tutoriel précédent. Maintenant, nous allons voir les tests Shift gauche.
Quand j'utilise le terme «Shift Left», vous vous demandez peut-être ce que je veux dire Shift Left dans un logiciel?
Il y a plus de 2 décennies, lorsque j'ai commencé ma carrière en tant que testeur de logiciels, il n'y avait pas de «phase de test» distincte pour le développement de logiciels et le rôle des testeurs n'existait jamais du tout. Les développeurs avaient l'habitude de développer le logiciel, de se tester et de créer une version logicielle.
Lectures complémentaires => Série de didacticiels DevOps informatifs
Le concept de Test de logiciel a été introduit progressivement lorsque les défauts de la production ont commencé à atteindre le budget du projet et, par conséquent, les «tests fonctionnels» sont entrés en vigueur avec une équipe très réduite de testeurs. À ce moment-là, nous n'étions que deux testeurs contre une équipe de 20 développeurs.
L'industrie informatique a commencé à suivre le modèle en cascade pour le développement logiciel dans lequel, comme nous le savons tous, le cycle de vie du développement logiciel se déroule de manière séquentielle dans l'ordre de Exigences => Conception => Codage => Test .
Ainsi, si vous commencez de gauche à droite, la phase de test se situe à l'extrême droite du cycle de vie du développement logiciel.
Ce que vous apprendrez:
- Introduction au concept de décalage vers la gauche
- Qu'est-ce que le test Shift Left?
- Comment Shift Left influence-t-il le développement logiciel?
- Que devraient faire les testeurs différemment lors du passage à gauche?
- Avantages du test Shift Left
- Conclusion
- lecture recommandée
Introduction au concept de décalage vers la gauche
Au fil du temps, les gens ont réalisé l'importance de Test de logiciel et l’impact du maintien de la «phase de test» à l’extrême droite ou à la fin du cycle de vie du développement logiciel. Cette prise de conscience s'est produite parce que le coût du bogue identifié vers l'extrême droite et à la fin était très élevé et un effort énorme et trop de temps étaient nécessaires pour les corriger.
Il y a eu des cas où, après avoir passé tant de temps et d'efforts sur un logiciel, en raison du bogue crucial identifié à la fin, le logiciel essentiel à la mission n'a pas pu être mis sur le marché, entraînant ainsi une perte énorme.
Par conséquent, à cause de identification du bug lors de la dernière étape soit la publication a été retardée, soit parfois, le logiciel a été abandonné compte tenu de l'effort requis pour les réparer, ce qui n'en valait vraiment pas la peine.
«Les défauts sont moins coûteux lorsqu'ils sont détectés tôt».
Cette prise de conscience et la grande leçon apprise ont introduit une grande révolution dans l'industrie du logiciel et ont donné naissance à un nouveau concept appelé «Shift Left» , ce qui signifie déplacer la «phase de test» vers la gauche de droite ou impliquer des tests à chaque étape et impliquer les testeurs tout au long.
Le test Shift Left signifie également qu'il ne suffit pas de tester à la fin, mais de tester en continu.
Qu'est-ce que le test Shift Left?
Premièrement, le principe du «décalage vers la gauche» soutient le Équipe de test pour collaborer rapidement avec toutes les parties prenantes dans la phase de développement logiciel. Par conséquent, ils peuvent clairement comprendre les exigences et concevoir les cas de test pour aider le logiciel à «Fail Fast» et permettre à l’équipe de résoudre toutes les pannes au plus tôt.
qui n'est pas un exemple de data mining?
L'approche Shift Left n'est rien d'autre que d'impliquer les testeurs beaucoup plus tôt dans le cycle de vie du développement logiciel, ce qui leur permettrait à son tour de comprendre les exigences, la conception du logiciel, l'architecture, le codage et ses fonctionnalités, de poser des questions difficiles aux clients, aux analystes commerciaux et aux développeurs. , demandez des éclaircissements et fournissez des commentaires dans la mesure du possible pour soutenir l'équipe.
Cette implication et cette compréhension amèneront les testeurs à acquérir une connaissance complète du produit, à réfléchir à divers scénarios, à concevoir des scénarios en temps réel basés sur le comportement du logiciel qui aideraient l'équipe à identifier les défauts avant même que le codage ne soit effectué.
Comment Shift Left influence-t-il le développement logiciel?
L'approche Shift Lift influence le développement logiciel de plusieurs manières.
Vous trouverez ci-dessous quelques points clés sur Shift Left:
- L'approche Shift Left se concentre sur impliquer les testeurs dans toutes et surtout les étapes critiques du programme . Cela permet aux testeurs de détourner leur attention de la détection des défauts vers la prévention des défauts et de diriger les objectifs commerciaux du programme.
- L'approche Shift Left fournit, grande importance pour les tests avec laquelle les rôles et la responsabilité des testeurs augmentent énormément.
- Avec l'augmentation de la responsabilité de l'équipe de test, l'équipe ne se concentre tout simplement pas sur «Tester le logiciel pour identifier les bogues» , mais travaille de manière proactive avec l'équipe dès les étapes initiales pour planifier et construire une stratégie de test robuste et efficace en fournissant un excellent leadership de test et des conseils à l'équipe en se concentrant sur la vision à long terme du produit, plutôt que de simplement prendre le responsabilité des travaux de test.
- L'approche Shift Left donne le possibilité pour les testeurs de concevoir les tests en premier , où les tests sont entièrement axés sur l'expérience client et leurs attentes, ce qui permettra aux développeurs de développer le logiciel sur la base de ces tests et donc de répondre aux besoins des clients.
- L'approche Shift Left ne s'arrête pas uniquement aux testeurs. Le déménagement à la location et la réalisation des activités de test en continu seront également permettre aux développeurs de s'approprier davantage de leur code et augmentent leurs responsabilités en matière de tests.
- L'approche Shift Left encourage également Testeurs à adopter Développement piloté par le comportement BDD et développement piloté par les tests TDD , ce qui aide à empêcher l'induction de défauts dans le logiciel.
- Shift Left Testing dans Agile: L'approche Shift Left prend en charge la formation Scrum agile Les équipes qui incluent obligatoirement des testeurs ainsi que les autres rôles et inclut les testeurs dans des appels debout réguliers, d'autres interactions, des réunions de révision qui ont amené les testeurs à avoir plus d'informations sur le programme et leur a donc permis de se livrer et de s'impliquer dans l'analyse détaillée du logiciel et de fournir une rétroaction rapide qui aiderait à prévenir les défauts fondés sur le logiciel.
Le test global Shift Left appelle les testeurs à «Impliquez-vous tôt» , le plus tôt possible et s'engager dans la discussion et collaborer sur les idées, les exigences à chaque étape où le résultat de l'étape a une incidence sur la valeur du livrable final et aide également le projet à identifier les risques et à les atténuer à l'avance.
Que devraient faire les testeurs différemment lors du passage à gauche?
Voici quelques facteurs clés à noter comme ce que les testeurs font différemment en Stratégie de décalage vers la gauche:
#1) L'équipe de test doit s'engager tôt dans le système dès le lancement du projet afin de développer l'intégration avec le reste de l'équipe et l'entreprise pour fournir des informations utiles à chaque étape du développement logiciel.
#deux) L'équipe de test doit travailler avec l'équipe Business & Operations et gagner en clarté sur le programme et fournir une vue claire de la demande et aider à planifier efficacement les besoins en matière de renforcement des ressources, les besoins de formation et les exigences en matière d'outils de test du programme bien à l'avance.
# 3) Les équipes de test doivent interagir avec toutes les parties prenantes de l'entreprise dès le début du développement du logiciel pour obtenir une visibilité claire du produit & concevoir une stratégie de test unifiée et planifier un effort de test optimisé, analyser la dépendance vis-à-vis des environnements de test, des tiers, des stubs, etc., et préparer une stratégie et un cadre d'automatisation robustes et élaborer un plan de gestion des données de test efficace.
# 4) L'équipe de test doit travailler avec le reste de l'équipe pour fournir un excellent Test Leadership et des conseils à l'équipe gardant ainsi à l'esprit la vision à long terme du produit plutôt que d'assumer simplement la responsabilité des activités de test.
# 5) Les exigences sont la clé et la base du succès de tout programme et des exigences bien définies définissent le succès du projet. Pendant la phase de planification des exigences, les testeurs besoin de revoir et d'analyser les exigences pour toute ambiguïté, meilleure clarté, exhaustivité, testabilité, définition des critères d'acceptation etc.
Il faut également identifier les exigences manquantes (le cas échéant), comprendre les dépendances et les stratégies de mise en œuvre. Clear Requirements aide le logiciel à «échouer rapidement» et à résoudre toutes les pannes au plus tôt.
# 6) Apportez suffisamment de clarté et de précision aux exigences en faisant ressortir exemples réels qui illustrent les fonctionnalités utilisées.
# 7) Les testeurs doivent assister aux réunions d'examen de la conception régulièrement et comprendre la conception et l'architecture du produit et identifier les défauts de conception, suggérer des options de conception alternatives, identifier les lacunes et créer des scénarios de test en conséquence pour briser les conceptions.
# 8) Les testeurs doivent effectuer Test statique (Commentaires) bien à l'avance et fournissez des commentaires sur les documents clés du projet afin d'éviter que les défauts ne soient ancrés dans le logiciel et d'élargir son effet plus tard.
# 9) L'équipe de test doit collaborer avec l'équipe de conception et de développement en fournissant des scénarios de test à l'avance pour développer le code et aborder tous les scénarios et flux commerciaux en temps réel possibles.
# dix) L'équipe de test doit concevoir scénarios de test solides et robustes de sorte que seuls quelques défauts sont identifiés lors des tests et que les défauts majeurs sont évités lors de l'entrée dans la phase de test.
#Onze) Les testeurs doivent Testez le plus tôt possible , que ce soit sur un système autonome ou local, de sorte que le défaut n'entre pas dans les étapes ultérieures.
L’essentiel du concept «Shift Left» pour les testeurs est de trouver les défauts le plus tôt possible par tous les moyens possibles.
Avantages du test Shift Left
L'approche Shift Left fonctionne sur la base du manifeste agile et présente également plusieurs avantages.
Elles sont:
- Individus et interactions sur les processus et les outils.
- Logiciel de travail sur une documentation complète.
- Collaboration client sur la négociation de contrat.
- Répondre au changement plus de suivre un plan.
Nous pouvons voir que même si la valeur est là dans les éléments sur la droite, nous valorisons plus pour les éléments sur le côté gauche.
entreprises qui proposent des tests de produits à domicile
Eh bien, Shift Left consiste à apporter l'idée de tester plus tôt dans le processus, ce qui se traduit par des tests meilleurs et efficaces et une amélioration de la qualité du logiciel.
En un mot, le processus de test Shift Left est:
- Détecter rapidement les défauts, réduisant ainsi le coût du projet.
- Tester continuellement encore et encore pour réduire les défauts à la fin.
- Pour tout automatiser et améliorer les délais de mise sur le marché.
- Se concentrer sur les exigences des clients et améliorer l'expérience client.
Conclusion
«Shift Left» Le concept a apporté une énorme transformation à l’ensemble du rôle de «Test». Jusque-là, le seul objectif des tests était uniquement la «détection des défauts» et maintenant l’objectif du «décalage vers la gauche» du point de vue des tests est un voyage de «Détection précoce des défauts pour Prévention des défauts ' .
Ainsi, Shift Left est un grand pas en avant dans l’industrie du logiciel dans la méthodologie de développement de logiciels vers la vitesse de mise sur le marché, en améliorant la qualité des logiciels et en réduisant le «temps de mise sur le marché».
A propos de l'auteur: Cet article est rédigé par le membre de l'équipe STH, Gayathri Subrahmanyam. Elle travaille dans le domaine des tests de logiciels depuis les années 90, juste au moment où le rôle de testeur a été introduit dans l’industrie. Au cours de sa carrière de testeur, elle a effectué de nombreuses évaluations TMMI, des travaux d'industrialisation des tests, des configurations TCOE en plus de gérer les livraisons de tests et mis en œuvre des pratiques DevOps pour un engagement énorme. Mais selon elle, l'apprentissage ne s'arrête jamais ...
Faites-nous part de vos réflexions / suggestions dans la section commentaires ci-dessous.
Tutoriel PREV | Tutoriel SUIVANT
lecture recommandée
- Meilleurs outils de test de logiciels 2021 (Outils d'automatisation des tests QA)
- Emploi d'assistant QA en test logiciel
- Décalage gauche de la qualité: en quoi est-il tout aussi important que le décalage gauche dans les tests?
- Cours de test logiciel: à quel institut de test logiciel dois-je adhérer?
- Choisir les tests logiciels comme carrière
- Travail d'indépendant de rédacteur de contenu technique de test de logiciels
- Quelques questions d'entretien intéressantes sur les tests de logiciels
- Commentaires et évaluations du cours de test de logiciels