Question

Dans votre pratique, quelle est la mesure(s) utilisez-vous pour savoir quand il est temps d'arrêter de test d'une application et de le déplacer à la production?

Était-ce utile?

La solution

Pour les projets dans mon organisation, les mesures que je l'utilise généralement comme suit:

  • Pas de Gravité 1 (frein) questions
  • Pas de Gravité 2 (fonctionnalité majeure paralysé) questions
  • Nombre Acceptable de Gravité 3 (mineur fonctionnalité) questions

"Acceptable" est naturellement un très faible nombre, en fonction de la taille de l'application, etc.etc.

Une fois que ces conditions sont remplies, je vais avoir une réunion de toutes les parties prenantes (responsable assurance qualité, Dev le plomb, le Support de l'Application de conduire, etc.), et parcourez la liste des questions en suspens, et assurez-vous qu'il y a accord sur la gravité attribuée à des questions en suspens.Une fois que j'ai confirmé qu'il n'y a aucun suspens Priorité 1 et de Priorité 2 questions, je vais les faire "Go/No Go" des appels à partir de chacun des intervenants.Si tout le monde dit "Go", je suis à l'aise de passer à la Production.Si au moins l'un des intervenants dit "Non", nous examinons les raisons pour lesquelles "No Go" et, si nécessaire, prendre des mesures pour résoudre les problèmes derrière.

Dans les petits projets, le processus peut être plus simple, et si c'est juste une opération d'une personne de votre ensemble de pré-conditions peuvent être beaucoup plus simple, c'est à dire"l'application fournit un avantage raisonnable, tout en ayant un (apparemment) nombre acceptable de bugs - disons-le de là!".Aussi longtemps que les prestations fournies par l'application sur les manèges, la gêne des bugs, surtout si vous êtes à la suite de la "libération anticipée et, souvent, de la ligne directrice", qui pourraient travailler pour vous.

Autres conseils

Tout d'abord, vous n'arrêtez jamais de test.Lorsque vous sont fait le test et que vous la relâchez, tout cela signifie, c'est que vos utilisateurs sont à l'essai au lieu de vous.

Deuxièmement, lorsque votre complète des scripts de test pass avec un niveau acceptable d'échec, vous êtes prêt à passer.

Enfin, ce qui est très spécifique à votre cas.Sur certains projets, nous avons 3 semaines pour le test bêta de la période où beaucoup de gens hack sur le système avant que le plus petit des changements peuvent être mis en œuvre.Dans d'autres domaines (moins critiques), de petits changements peuvent être déplacés avec la souris nod d'un autre développeur.

Un test intéressant de la méthodologie que j'ai toujours voulu essayer d'erreur "ensemencement".L'idée est que vous avez une personne insérer intentionnelle de bugs dans le système qui tombent dans des catégories différentes.

Par exemple:

  • Cosmétiques, des erreurs d'orthographe, etc
  • Non les erreurs critiques
  • Critique des erreurs et des accidents
  • Problèmes de données.Aucune erreur ne se produit, mais quelque chose de plus profond est le problème avec les résultats.
  • etc.

La "semeuse" documents exactement ce qui a changé pour insérer ces bugs afin qu'ils puissent être rapidement restauré.Comme l'équipe de test, trouve la tête de bugs, ils sont également de trouver de vrais bugs, mais ne savent pas la différence.En théorie, si l'équipe de test trouve 90% de la tête de série d'erreurs critiques, alors qu'ils ont probablement trouvé un nombre proportionnel de la vraie critique des erreurs.

À partir de ces statistiques, vous pouvez commencer à faire des appels de jugement quand il est acceptable pour avoir une sortie.Bien sûr, ce ne serait même pas fermer à toute épreuve en raison de la nature aléatoire de laquelle les bugs obtenir trouvé (réel ou graines), mais c'est probablement mieux que d'avoir aucune idée comment beaucoup de bugs que vous pourriez être libérer.

À mon lieu de travail une métrique qui est parfois utilisée, c'est que nous avons testé assez quand nous commençons à trouver de vieux déclarée et non réglementée de bugs qui ont été présents pour les dernières versions de nos produits.L'idée est que si ce sont les bugs que nous sommes de trouver au cours des essais, et ces bugs ont été présents pendant des années sans qu'un client se plaindre d'eux, puis nous sommes probablement sûr de navire.

Bien sûr, vous avez également tous les tests manuels, tests automatiques, prise aux développeurs d'utiliser le produit, bêta, et des essais continus des trucs, mais avec la façon dont de nombreux bugs, nous trouvons maintenant qui ont été présents, mais non déclarée, dans les dernières versions est une idée nouvelle pour moi, quand j'ai d'abord entendu.

Lorsque tous les principaux afficher les bouchons ont disparu.

Sérieusement, vous devriez faire un Test d'Acceptation des Utilisateurs et permettez à vos utilisateurs d'utiliser votre système et de trouver si sa tous les pour.Si ce n'est pas pratique, faire une bêta fermée à sélectionner les utilisateurs qui ressemblent à votre public cible.

Il est impossible de trouver tous les bugs dans votre système, de sorte que, parfois, la seule vraie règle est de juste l'expédier.

mharen,

Je trouve que si vous avez globale de tests automatisés, il est tout à fait irresponsable de livrer le logiciel, à moins que tous de passer.Tests automatisés dire que ce sont des domaines qui sont à la fonctionnalité de base ou des bogues qui ont eu lieu dans le passé que vous êtes conscient de, et de corriger de manière à avoir un test de passage.Il sera irresponsable de livrer le logiciel qui ne passe pas 100% de ses tests automatisés.

Jon,

Je ne voulais pas dire scripts de test implique automatisé les tests.Je faisais allusion à l'approche plus traditionnelle d'une étape-par-étape liste des éléments à tester et comment le tester.

Cela dit, je ne pense pas que tous les tests automatisés devraient être tenus de passer.Tout dépend de la gravité et de la priorité.Sur un grand projet, nous pouvons avoir des devs l'écriture des tests qui échouent basées sur les problèmes signalés par les utilisateurs.Puisque nous ne pouvons pas corriger toutes les anomalies à chaque sortie, il est une donnée que certains tests ne pourront tout simplement pas passer.

La mesure de la quantité de temps de test de la mettre dans le produit entre le "clou du spectacle" ou de fonctionnalité majeure de bugs peuvent vous laisser savoir que vous y êtes presque.À la fois des flux rapide dans le produit avec de nouvelles fonctionnalités vont dans, il est courant pour les essais de l'équipe de la constatation que la plupart des bugs ils sont des rapports de graves fonctionnalité de bugs.Comme ces traitée, il ya souvent une grande quantité de mineur, l'ajustement et la finition type de questions visant à améliorer la fluidité et la clarté de l'interaction;dans l'ensemble ils font une grande différence dans la qualité du produit, mais chacun n'est pas très important.Que ceux qui se fixe et continue d'effectuer des essais, vous avez probablement continuer à obtenir des rapports de bug comme testeurs de push en cas d'erreur inhabituels et des habitudes d'utilisation.À ce point, cela dépend de quand vous voyez la valeur de l'entreprise de libération contre le risque de non détecté les points de blocage.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top