Davy Cam obtient la certification ISTQB Foundation
En juin 2022, Davy a obtenu la certification de Testeur ISTQB (International Software Testing Qualifications Board) niveau Foundation permettant de concevoir et gérer les tests logiciels en adoptant les bonnes pratiques liées à ces tests.
Depuis cette formation de plusieurs jours, Davy a donc acquis les compétences et des bonnes pratiques sur les tests.
Qu’est ce que les 7 tests logiciels ?
Les tests sont un processus d’exécution d’un programme logiciel pour rechercher des erreurs dans l’application en cours de développement. Ils sont donc essentiels pour déployer des logiciels sans erreur.
S’il existe aujourd’hui un grand nombre de méthodes de tests, il est cependant indispensable de sélectionner parmi celles-ci la méthode de test la plus adaptée, afin de déployer un meilleur logiciel et trouver les défauts qui affectent son développement. Chaque type de test a ses avantages.
Les 7 types de tests logiciels les plus courants sont :
- Test d’intégration : ce test est effectué pour montrer des défauts dans les interfaces et interactions de composants ou systèmes intégrés. Il s’agit de vérifier le bon fonctionnement d’une partie précise du logiciel. Ce test est précédé par les tests unitaires permettant de vérifier dans les composants, unités ou module et suivi par des tests d’acceptation.
- Test boite noire : Le test de boîte noire est appliqué pour vérifier la fonctionnalité du logiciel en se concentrant simplement sur les différentes entrées et sorties de l’application plutôt qu’en approfondissant sa structure interne, sa conception ou sa mise en œuvre. Le test de la boîte noire est effectué du point de vue de l’utilisateur c’est à dire qu’il examine les fonctionnalités, et ce qu’elles sont censées faire pour servir efficacement aux utilisateurs.
- Test boite blanche : La stratégie de test du logiciel de la boîte blanche teste une application avec accès au code source réel et en se concentrant sur la structure interne, conception et mise en œuvre. Le test en boîte blanche offre l’avantage d’un repérage rapide des problèmes et des bogues.
- Test exploratoire : Comme son nom l’indique, le test exploratoire consiste à explorer l’application où le testeur est constamment à la recherche de quoi et où tester. Cette approche est appliquée dans les cas où la documentation est inexistante et lorsqu’il reste peu de temps pour terminer le processus de test.
- Test d’acceptation : Le test d’acceptation est un processus d’assurance qualité (QA) qui détermine dans quelle mesure un logiciel obtient l’approbation de l’utilisateur final. Également connu sous le nom de UAT (User Acceptance Testing) ou de test du système, il peut tester la convivialité ou la fonctionnalité du système ou même les deux. Selon l’entreprise, les tests d’acceptation peuvent prendre la forme de tests pour l’utilisateur final, de tests bêta, de tests d’application ou de tests sur le terrain. L’avantage des tests d’acceptation est que les problèmes d’utilisation peuvent être découverts et résolus à un stade précoce.
- Test de régression : Le test de régression est une pratique de test qui vérifie si le système fonctionne toujours bien, même après un développement incrémentiel dans l’application. La plupart des tests automatisés effectués sont des tests de régression. Il garantit que tout changement dans le code source n’a aucun effet négatif sur l’application.
- Test fonctionnel : Le test fonctionnel teste la fonctionnalité réelle du logiciel. Ce type de test se concentre sur les résultats du traitement du système et non sur la façon dont le traitement a lieu. Lors des tests fonctionnels, la structure interne du système n’est pas connue du testeur.
Il s’agit-là des types de tests les plus courants mais il en existe beaucoup plus tels que les test systèmes, l’estimation d’erreur, tests statiques et dynamiques qui peuvent être adoptés en fonction du projet concerné. Par exemple le développement d’une application mobile nécessitera des tests de portabilité, et les spécificités seront différentes puisque l’ergonomie sera plus importante.
Qu’est ce que la certification ISTQB, pourquoi est-elle indispensable pour une entreprise qui développe des logiciels?
La certification ISTQB Foundation est une certification proposant une première approche des tests logiciels en présentant les différents types de tests, les cycles de vie du développement logiciel ainsi que leur gestion. Il s’agit d’une formation théorique dans lequel beaucoup de termes, définitions et bonnes pratiques sont enseignés.
Il s’agit d’une formation se déroulant en présentiel ou distanciel sur 3 jours pour finir avec un examen qui est un QCM de 40 questions dans lequel le participant doit obtenir 65% de réponses justes pour obtenir la certification.
Cette formation ISTQB foundation s’adresse aux professionnels des tests MOA / MOE : testeurs, analystes, chefs de projet, ou à toute personne souhaitant acquérir des méthodes, des savoir-faire dans le test logiciel et préparer la certification ISTQB® Niveau Fondation (CTFL- Testeur de Logiciel Certifié). Aucun prérequis n’est nécessaire pour suivre cette formation.
Le contenu du cours se concentre sur les fondamentaux des tests, en définissant les tests, leurs enjeux, leurs principes et les approches en tant que testeur et développeur.
- Les tests durant le cycle de développement de test
- Les techniques de test
- Les tests statiques
- La gestion des tests : avec la planification des tests sous forme de revue, de réunion et d’organisation
- Les outils de support de tests
La formation contient également des exercices et questions permettant de mettre en pratique le contenu du cours ainsi que la méthodologie pour choisir et réaliser correctement des tests.
Cette certification est indispensable pour une entreprise développant des logiciels car elle apporte les connaissances et compétences pour bien comprendre et choisir les types de tests, gérer ceux-ci et leur suivi ainsi que le choix des outils afin de pouvoir automatiser et faciliter les tests. Ainsi, la gestion de projet se veut optimale : en plus de détecter des défauts importants, la méthodologie des tests permet d’obtenir de l’utilisation une appréciation globale quant à l’utilisation du logiciel. Cette approche double est nécessaire car les développeurs ont tendance à tester leurs codes, ils n’ont pas la capacité de chercher profondément tous types de défaut. Ces bonnes pratiques, dont le recours à une équipe de testeurs, permet de détecter des défaillances jusque là invisibles.
Quelles sont tes impressions sur cette formation?
Cette formation m’a permis d’acquérir de nouvelles connaissances sur les activités de tests mais aussi de pouvoir mieux comprendre l’organisation de revues de tests ainsi que connaitre la terminologie des tests.
Etant Responsable Sécurité des Applications, j’ai également comme responsabilité de programmer, mais je n’avais pas forcément la rigueur et le savoir-faire pour tester chaque partie du code. Les bases que j’ai acquises durant cette formation pourront aider l’équipe Ventio à réaliser correctement les tests, planifier des revues et gérer les différents types de risques pouvant être rencontrés durant les futurs projets.
Bien entendu, cette certification n’est qu’un début ! Afin d’approfondir mes connaissances, je prévois de suivre plus tard dans l’année une certification plus avancée dans le métier du test.
Avec son activité de concepteur et développeur d’applications pour le traitement de données sensibles en santé, Ventio prend à cœur le test logiciel. Davy pourra donc intégrer les méthodes associées au cycle de vie des logiciels développés en internes.
Ventio, c’est aussi un souffle continu pour monter en compétence sur les bonnes pratiques de développement informatique et tests logiciels.