3 conseils pour bien gérer le passage au travail à distance des équipes QA, Dev et Produit

Constantin bueker Constantin Büker
Temps de lecture: minutes

Alors que les activités quotidiennes de nombreuses entreprises sont fortement perturbées par la crise mondiale liée au coronavirus, il existe des moyens pour les équipes de relever les défis apparus ces dernières semaines.


Cet article est la seconde partie d'une série de deux articles, la première partie de cet article est à lire ici.


Alors que les activités quotidiennes de nombreuses entreprises sont fortement perturbées par la crise mondiale liée au coronavirus, il existe des moyens pour les équipes de relever les défis apparus ces dernières semaines. Dans la première partie de cette série, j'aborde les différents défis auxquels sont confrontés les équipes de QA, d'ingénierie et de produits lorsqu'elles passent instantanément à une configuration à distance. Dans ce deuxième article, je me penche sur l'impact du passage à une installation entièrement à distance sur le degré de qualité atteignable dans le processus de test global, et fournis des informations pertinentes sur la manière de tirer le meilleur parti de cette situation inédite.

Quel est l'impact des tests à distance sur le processus de test global ?

Pour garantir la qualité logicielle, les équipes doivent trouver le bon équilibre entre les différents types de tests. En fonction de leur niveau de maturité, elles travaillent habituellement avec une combinaison de tests exploratoires, manuels et automatisés. Dans le contexte actuel de crise mondiale, les organisations qui exploitent l'automatisation des tests vont commencer à en tirer un grand profit.

Ceci est dû à la nature même de l'automatisation des tests. Étant donné que les tests peuvent être programmés et exécutés hors site, ils ne sont pas affectés par la situation et peuvent donc supporter un volume et un niveau de test très élevés.

Dans le graphique ci-dessous, vous pouvez visualiser l'évolution typique de la part des différentes méthodes de test composant le processus de test global. Cependant, il est important de souligner à nouveau que le niveau de maturité de votre produit et de vos pratiques de QA influence grandement la capacité de votre entreprise à bénéficier pleinement de l'automatisation des tests ou non. Pour en savoir plus sur la manière d'équilibrer les tests manuels et l'automatisation, visionnez l'enregistrement de notre webinar (en anglais).

Produit graphique de maturité qa: En abscisse: régressif, reproductible, cohérente, quantitative, l'optimisation. pour commencer d'exploration importante, manuel important dans le milieu, l'automatisation importante à la fin

Par ailleurs, la crise actuelle liée au COVID-19 a un impact sur les cas de test eux-mêmes. Vous devriez toujours prioriser la rédaction de cas de test afin que la fonctionnalité corresponde à l'intention de l'équipe produit. Cependant, comme je l'ai déjà mentionné dans mon article précédent, les informations fournies, sous la forme de scénarios utilisateur et de critères d'acceptation, sont probablement moins claires que dans les circonstances habituelles. L'équipe QA doit donc passer plus de temps à vérifier les builds et être plus rigoureuse.

En plus d'être rédigés et vérifiés, les cas de test qui n'ont pas été automatisés doivent également être exécutés manuellement. Comme je l'ai écrit dans mon premier article, en raison de l'évolution plus rapide de la stratégie en ces temps incertains, davantage de composantes et de zones de code des applications seront touchés, entraînant une augmentation des suites de régression et donc une augmentation du temps nécessaire pour les traiter. En faisant l'effort supplémentaire d'écrire et d'exécuter ces cas de test manuellement, les testeurs assurent une couverture de code suffisante.

Dans le même temps, ces efforts déployés pour l'exécution de tests structurés utilisent la plupart des ressources disponibles, ne laissant que peu ou pas de temps aux tests exploratoires. De plus, les tests structurés sont exécutés sur les appareils les plus courants ou sur des machines virtuelles. Cela conduit à une réduction de la couverture des tests de flux et de dispositifs possibles.

Le moment est venu de riposter

Voici trois façons de répondre à certains de ces défis alors que votre équipe travaille à distance.

"Si vous êtes tombé hier, relevez-vous aujourd'hui."

- H. G. Wells

1. Rétablir la couverture en s'appuyant sur des testeurs qualifiés travaillant déjà à distance

Après une chute, la première étape consiste à se relever. Votre priorité sera de rétablir vos capacités opérationnelles. Comme indiqué précédemment, les équipes QA manquent de temps et d'appareils réels sur lesquels effectuer des tests. Quelles sont vos options ?

La délocalisation traditionnelle risque de ne pas fonctionner, pour une raison simple : dans la plupart des cas, les prestataires s'appuient également sur des laboratoires d'appareils partagés et font généralement installer des équipements (comme par exemple des ordinateurs de bureau). Cela signifie que la main-d'œuvre est fortement touchée par les mesures de confinement et ne peut pas simplement passer à un espace de travail à domicile.

Dans ce cas, disposer d'une infrastructure établie offrant des capacités de tests crowdsourcés dans le Cloud est particulièrement utile. Les tests exploratoires et les tests basés sur des cas de test peuvent tous deux être confiés à des professionnels du QA à travers le monde qui utilisent leurs propres appareils, permettant ainsi à votre équipe d'évoluer selon vos besoins.Découvrez comment votre entreprise peut tirer parti d'une communauté mondiale de professionnels qualifiés du QA, chacun d'entre eux travaillant depuis des années à domicile.

2. Regagner du temps en améliorant votre communication

La deuxième étape consiste à se mettre à marcher, et à s'améliorer à cet égard. Vous y parviendrez en améliorant les capacités de communication de vos équipes. Voici quelques conseils essentiels qu'il ne faut pas oublier :

Il vaut mieux sur-communiquer que sous-communiquer. Même si vous pensez peut-être trop en faire, communiquer davantage peut contribuer à réduire considérablement la charge de travail, notamment en ce qui concerne les scénarios utilisateur, les objectifs de sprint ou même la vision/stratégie produit.

Travailler à distance signifie souvent travailler de manière asynchrone. Vous pouvez poser des questions au fur et à mesure qu'elles se présentent à vous, mais ne vous attendez pas à recevoir des réponses tout de suite.

Alignez-vous sur certaines plages horaires où vous serez "disponible" pour les questions et sur les délais de réponse maximums auxquels vos collègues peuvent s'attendre.

Informez plus fréquemment vos collègues sur l'état d'avancement de vos travaux ou définissez des moments pour faire le point. De cette façon, vous ne serez pas interrompus aussi fréquemment.

Documentez les bugs de manière plus complète afin qu'ils soient plus faciles à reproduire par le développeur lui-même. N'oubliez pas que le travail est plus asynchrone. Chez Applause, nous fournissons généralement des enregistrements d'écran et des captures d'écran annotées de tous les problèmes fonctionnels ainsi que des journaux d'application le cas échéant.

3. Mettre à profit ce temps pour améliorer vos processus

Vous vous êtes déjà remis à marcher. Mais si vous voulez vraiment améliorer et accélérer vos processus, changez simplement de configuration : prenez une voiture et allez plus vite !

En effet, l'interruption des opérations courantes suscitée par la crise liée au coronavirus à travers le monde peut justement s'avérer être une occasion d'utiliser le temps libre pour améliorer votre configuration.

Par exemple, ici chez Applause, nous effectuons souvent des tests pendant le week-end pour mieux exploiter les "temps morts". Cela permet de veiller à ne pas ralentir les opérations. De même, maintenant que les opérations sont interrompues et que de nombreux projets sont mis en attente, vous avez enfin le temps d'évaluer si vous voulez concentrer vos efforts afin de devenir plus agile, améliorer votre sysème d'ingénierie en implémentant certains processus et outils CI/CD, ou passer entièrement au DevOps. Vous avez le choix, la situation le permet !

Ressources supplémentaires que vous apprécierez :