[EMBEDDED WORLD] Cantata, l’outil logiciel de QA Systems calibré pour les tests unitaires et d’intégration permettant aux développeurs de vérifier leur code critique sur machine hôte ou sur cible embarquée, se dote d'une fonction dénommée Code Change Analysis & Management. ...Celle-ci, unique sur le marché selon la société, a pour objet d’automatiser les efforts de maintenance liés à la mise à jour des tests en fonction des modifications du code. Objectif : réduire significativement les coûts de maintenance des tests logiciels, ces derniers ayant une importance capitale pour garantir la qualité du code, alors que parallèlement l’augmentation de la complexité des logiciels a un impact fort sur les investissements nécessaires aux opération de test.
On le sait, tester au plus tôt dans le cycle de vie du développement logiciel contribue à améliorer la qualité des systèmes et permet de réduire les efforts de reprise du code. Cependant, tous les projets, y compris les mieux organisés, font face à de nombreux changements du code source, et ce même après le démarrage des phases de test. Dans ce cadre, les équipes de développement souhaitent capitaliser leurs efforts de tests en les mettant à jour en fonction des changements du code. Or la solution à ce problème ne consiste pas seulement à identifier un sous-ensemble des tests impactés par les changements et à les réexécuter tels quels (une technique souvent qualifiée d’“analyse d’impact sur les tests” ou encore de “test dirigé par le changement”). Car les tests unitaires et d’intégration sont très dépendants de la structure du code source et par conséquent fragilisés par les changements du code. La mise à jour des tests peut ainsi nécessiter plusieurs itérations afin de déterminer quels changements doivent être apportés aux tests afin de les resynchroniser correctement avec le code.
Grâce à l’analyse des changements du code source et de leurs dépendances avec les tests, l’outil Cantata est désormais capable de comprendre les changements du code testé et d’identifier l’ensemble des scripts de test impactés par les changements. En d’autres termes l’outil “comprend” quels changements du code peuvent impacter la couverture de code obtenue par les tests existants et in fine aide le développeur dans ses choix de mise à jour automatique des tests. Pour chaque changement, l’outil fournit plusieurs alternatives plausibles de mise à jour du script de test et procède ensuite au “refactoring” automatique du script de test sans effort de programmation supplémentaire.
« Nous sommes très heureux d’être le premier éditeur logiciel à proposer une solution automatique répondant au problème de maintenance des tests unitaires et d’intégration liés aux changements du code, commente Pierre-Henri Stanek, manageur produit pour Cantata chez QA Systems. Code Change Analysis & Management est une évolution majeure de l’outil qui contribue à simplifier la gestion des tests unitaires et d’intégration tout au long du cycle de vie des projets logiciels des développeurs. »