Je suis sur le point de participer à une discussion avec la direction concernant la mesure de l'efficacité de nos tests en tant qu'organisation d'AQ. La principale raison derrière cela est que la moitié de notre équipe est sous-traitée et notre entreprise souhaite fournir des mesures de notre efficacité / efficience, afin que nous ayons des données de base sur lesquelles négocier les paramètres du contrat avec l'accord de service de nos sous-traitants. .
J'ai fouillé un peu et la plupart des opinions que j'ai trouvées à ce sujet tournent autour de l'efficacité des développeurs: lignes de code, story stories livrées, défauts introduits, etc.
Mais qu'en est-il des testeurs? Nos tests sont principalement basés sur des exigences et un mélange de tests manuels, semi-automatisés et automatisés (non pas parce que nous n'avons pas encore tout automatisé, mais parce que certaines choses ne sont pas automatisables dans notre système de test).
la source
Réponses:
Le nombre de tests écrits est inutile, et un nombre élevé de bogues trouvés peut être une mesure d'un développement médiocre plutôt que d'une AQ efficace.
Les mesures d'automatisation (couverture de code, couverture de fonctionnalités ...) peuvent être bonnes, mais je pense qu'elles aident davantage au développement (en tant que développeur, vais-je savoir si je casse quelque chose accidentellement) que les clients (je veux le faire et ça ne marche pas).
Étant donné que la qualité est bonne si les clients ne rencontrent pas de problèmes, une bonne mesure de l'efficacité (et non de l'efficacité) d'une équipe et d'un processus d'assurance qualité est la mesure des bogues détectés par les clients qui n'ont pas été détectés par l'assurance qualité .
Le principal problème avec cette métrique est qu'il peut y avoir un délai considérable entre le travail effectué et le moment où vous commencez à avoir des nombres significatifs.
la source
Il y a quelques mesures que nous avons utilisées lors de mon dernier travail pour évaluer l'AQ:
En fin de compte, le travail de votre équipe d'assurance qualité est de trouver les bogues avant qu'ils ne sortent dans la nature. Leurs mesures devraient être basées sur la réalisation effective de cet objectif. S'il y a une faible couverture des cas de test, une quantité minimale de tests automatisés et un taux élevé de bogues en production, alors ils ne font pas du bon travail. Cependant, s'ils ont de bons antécédents de recherche des bogues bien avant qu'ils ne frappent prod, leurs mesures devraient être assez élevées.
la source
Le contrôle qualité doit être mesuré par deux mesures principales: combien de bogues dépassent le contrôle qualité à trouver sur le terrain? Quelle est leur gravité?
Vous pourriez être en mesure de tester QA pour trouver des bogues graves plus proches de la version que de la version complète. Vous pourriez être en mesure de ding QA pour ne pas terminer les tests par leur date d'achèvement estimée (par fonctionnalité).
Bien qu'en fin de compte, je crains que vous ne dépensiez plus d'argent en essayant de mesurer l'efficacité de votre personnel contractuel que les économies réalisées en utilisant un personnel contractuel ...
la source
L'entreprise dans laquelle je travaille utilise un certain nombre de mesures d'assurance qualité.
Celui qui me semble le plus pertinent est la couverture du code. Un outil comme EMMA fonctionne très bien car ils écrivent des tests automatisés approfondis en plus de leurs tests manuels.
Quoi que vous fassiez, ne vous concentrez pas sur le nombre de tests. C'est à peu près aussi utile que LOC par jour.
la source
De nombreuses façons de mesurer les performances dans les phases de développement et de test pendant l'exécution du projet. Nous avons utilisé les mesures ci-dessous dans nos projets. Performances de développement mesurées par 4 métriques de code populaires (indice de maintenabilité, complexité cyclométrique, profondeur d'héritage, couplages de classes). Pour C # l'obtiendra dans Microsoft Visual Studio. Pour la couverture des tests, Ncover / Ndepend est très utile. Test des performances mesuré par le nombre de bogues de développement -roulant au cours des 4 derniers sprints Système testant les bogues survolant les 4 derniers sprints. Aucun test d'automatisation réussi dans la version / les fonctionnalités fournies.
la source