Test Agile - Quadrants
Comme dans le cas des tests traditionnels, les tests agiles doivent également couvrir tous les niveaux de test.
- Test unitaire
- Test d'intégration
- Test du système
- Test d'acceptation des utilisateurs
Test unitaire
- Fait avec le codage, par le développeur
- Pris en charge par un testeur qui écrit des cas de test assurant une couverture de conception à 100%
- Les cas de test unitaires et les résultats des tests unitaires doivent être examinés
- Les défauts majeurs non résolus (selon la priorité et la gravité) ne sont pas laissés
- Tous les tests unitaires sont automatisés
Test d'intégration
- Fait avec l'intégration continue au fur et à mesure que les sprints progressent
- Fait à la fin une fois tous les sprints terminés
- Toutes les exigences fonctionnelles sont testées
- Toutes les interfaces entre les unités sont testées
- Tous les défauts sont signalés
- Les tests sont automatisés lorsque cela est possible
Test du système
- Fait à mesure que le développement progresse
- Les histoires, fonctionnalités et fonctions des utilisateurs sont testées
- Tests effectués dans l'environnement de production
- Des tests de qualité sont exécutés (performance, fiabilité, etc.)
- Les défauts sont signalés
- Les tests sont automatisés lorsque cela est possible
Test d'acceptation des utilisateurs
Fait à la fin de chaque Sprint et à la fin du projet
Fait par le client. Les commentaires sont pris par l'équipe
Les commentaires seront une entrée pour les sprints suivants
Les User Stories d'un Sprint sont pré-vérifiées pour pouvoir être testées et sont avec des critères d'acceptation définis
Types de test
- Tests de composants (tests unitaires)
- Tests fonctionnels (tests User Stories)
- Tests non fonctionnels (performance, charge, contrainte, etc.)
- Tests d'acceptation
Les tests peuvent être entièrement manuels, entièrement automatisés, combinaison de manuels et automatisés ou manuels pris en charge par des outils.
Soutenir la programmation et les tests de produits critiques
Les tests peuvent être pour -
Supporting Development (Support Programming) - Les tests de programmation de support sont utilisés par les programmeurs.
Pour décider du code à écrire pour accomplir un certain comportement d'un système
Quels tests doivent être exécutés après le codage pour s'assurer que le nouveau code n'entrave pas le reste des comportements du système
Verification only (Critique Product) - Les tests de produits critiques sont utilisés pour découvrir les insuffisances du produit fini
Tests face aux entreprises et à la technologie
Pour décider des tests à effectuer quand, vous devez déterminer si un test est -
- Face aux affaires, ou
- Face à la technologie
Tests face aux entreprises
Un test est un test destiné aux entreprises s'il répond aux questions encadrées par des mots du domaine commercial. Celles-ci sont comprises par les experts métiers et les intéresseraient afin que le comportement du système puisse être expliqué dans le scénario temps réel.
Tests face à la technologie
Un test est un test orienté vers la technologie s'il répond aux questions encadrées par des mots issus du domaine technologique. Les programmeurs comprennent ce qui doit être mis en œuvre sur la base des clarifications sur la technologie.
Ces deux aspects des types de test peuvent être visualisés à l'aide des quadrants de test Agile définis par Brian Marick.
Quadrants de test Agile
En combinant les deux aspects des types de test, les quadrants de test Agile suivants sont dérivés par Brian Marick -
Les quadrants de tests agiles fournissent une taxonomie utile pour aider les équipes à identifier, planifier et exécuter les tests nécessaires.
Quadrant Q1- Niveau de l'unité, face à la technologie et supporte les développeurs. Les tests unitaires appartiennent à ce quadrant. Ces tests peuvent être des tests automatisés.
Quadrant Q2- Au niveau du système, face à l'entreprise et comportement conforme du produit. Les tests fonctionnels appartiennent à ce quadrant. Ces tests sont soit manuels, soit automatisés.
Quadrant Q3- Niveau d'acceptation du système ou de l'utilisateur, orientation professionnelle et concentration sur des scénarios en temps réel. Les tests d'acceptation par l'utilisateur appartiennent à ce quadrant. Ces tests sont manuels.
Quadrant Q4- Niveau d'acceptation du système ou opérationnel, technologie orientée et mise au point sur les performances, la charge, le stress, la maintenabilité, les tests d'évolutivité. Des outils spéciaux peuvent être utilisés pour ces tests avec des tests d'automatisation.
En combinant ces derniers, les quadrants de test Agile qui reflètent What-Testing-When peut être visualisé comme suit -