127 votes

La différence entre l'acceptation d'essai et de test fonctionnel?

Quelle est la réelle différence entre l'acceptation des tests et des tests fonctionnels?

Quels sont les points forts ou les objectifs de chacun? J'ai lu partout qu'ils sont pas similaires.

152voto

Patrick Cuff Points 13362

Dans mon monde, nous utilisons les termes comme suit:

test fonctionnel: C'est une vérification de l'activité; n'avons-nous construire correctement un produit de travail? Le logiciel de satisfaire les besoins de l'entreprise?

Pour ce type de tests, nous avons des cas de test qui couvrent tous les scénarios possibles, nous pouvons penser, même si ce scénario est peu probable d'exister dans le "vrai monde". Quand on fait ce type de test, nous cherchons pour un maximum de couverture de code. Nous utilisons tout environnement de test, nous pouvons saisir à l'époque, il n'a pas à être "production" de calibre, tant que c'est utilisable.

le test d'acceptation: C'est une validation de l'activité; n'avons-nous construire la bonne chose? Est-ce que le client a réellement besoin?

Ceci est habituellement fait en coopération avec le client, ou par un client interne proxy (product owner). Pour ce type de test, nous utilisons des cas de test qui couvrent les scénarios typiques dans lesquelles nous nous attendons à ce que le logiciel à utiliser. Ce test doit être effectué dans une "production" comme de l'environnement, sur le matériel qui est identique ou proche de ce qu'un client va utiliser. C'est lorsque nous avons test notre "ilities":

  • La fiabilité, de la Disponibilité: Validé par un test de stress.

  • Scalabilitiy: Validés par le biais d'un test de charge.

  • Convivialité: Validés par le biais d'une inspection et de démonstration pour le client. Est l'INTERFACE utilisateur configuré à leur goût? A nous de mettre le client à l'image de marque dans tous les bons endroits? Nous avons tous les champs/écrans, ils ont demandé?

  • De sécurité (aka, Securability, afin de s'adapter): Validé par démonstration. Parfois, un client va embaucher une firme externe afin de faire un audit de sécurité et/ou des tests d'intrusion.

  • Maintenabilité: Validée par le biais de la démonstration de la façon dont nous allons fournir des logiciels mises à jour/correctifs.

  • Configurabilité: Validée par le biais de la démonstration de la façon dont le client peut modifier le système afin de répondre à leurs besoins.

Ce n'est pas la norme, et je ne pense pas qu'il y est une définition "standard", que les conflits de réponses ici de démontrer. La chose la plus importante pour votre organisation, vous devez définir ces termes, précisément, et de s'y tenir.

55voto

Nick V Points 160

J'aime la réponse de Patrick Manchette. Ce que je voudrais ajouter, c'est la distinction entre un test de niveau et un type de test qui a été pour moi une révélation.

les niveaux de test

Test de niveau est facile à expliquer à l'aide de V-modèle, un exemple: enter image description here Chaque niveau a son correspondant au niveau de développement. Il a un temps typique caractéristique, qu'elles sont exécutées à certaines phases du cycle de développement.

  1. composant/unité de test => vérification de la conception détaillée
  2. composant/unité de test d'intégration => vérification de la conception globale
  3. système de test => vérification de la configuration
  4. système d'insertion de test => vérification de la configuration
  5. les tests d'acceptation => la validation des exigences de l'utilisateur

les types de tests de

Un type de test est une des caractéristiques, il se concentre sur un objectif de test. Les types de tests de souligner votre les aspects de qualité, aussi connu comme la technique ou des aspects non fonctionnels. Les types de tests peuvent être exécutés à tout test de niveau. J'aime utiliser que les types de tests de la qualité des caractéristiques mentionnées dans la norme ISO/IEC 25010:2011.

  1. les tests fonctionnels
  2. des tests de fiabilité
  3. des tests de performance
  4. l'opérabilité des tests
  5. les tests de sécurité
  6. les tests de compatibilité
  7. les tests de maintenabilité
  8. la transférabilité des tests

Pour le rendre complet. Il y a aussi quelque chose qui s'appelle le test de régression. Cette un supplément de classification à côté de test de niveau et type de test. Un test de régression est un test que vous souhaitez répéter, parce qu'il touche quelque chose de critique sur votre produit. C'est en fait un sous-ensemble de tests que vous avez défini pour chaque niveau de test. Si il y a un petit bug fix dans le produit, on n'a pas toujours le temps de répéter tous les tests. Les tests de régression est une réponse à ça.

21voto

Machiel Points 121

La différence est entre les tests le problème et la solution. Le logiciel est une solution à un problème, les deux peuvent être testés.

Le test fonctionnel confirme le logiciel effectue une fonction à l'intérieur des limites de la façon dont vous avez résolu le problème. Cette est une partie intégrante de développement de logiciels, comparable à l'analyse qui est faite sur la production de masse de produits avant de quitter l'usine. Un test fonctionnel vérifie que le produit fonctionne réellement comme vous (le développeur) pense qu'il n'.

Les tests d'acceptation de vérifier que le produit résout effectivement le problème, il a été fait pour les résoudre. Cela peut être réalisé par l'utilisateur (client), par exemple l'exécution de ses tâches, le logiciel vous aide avec. Si le logiciel passe de ce monde réel test, il est accepté de remplacer la solution précédente. Ce test d'acceptation peuvent parfois être fait correctement dans la production, surtout si vous avez des anonymes clients (par exemple un site web). Ainsi, une nouvelle fonctionnalité ne sera acceptée après des jours ou des semaines d'utilisation.

Les tests fonctionnels - tester le produit, de vérifier qu'il possède les qualités que vous avez conçu ou construit (fonctions, de vitesse, d'erreurs, de cohérence, etc.)

Les tests d'acceptation - tester le produit dans son contexte, cela nécessite (simulation) de l'interaction humaine, de test, il a l'effet désiré sur le problème d'origine(s).

9voto

hol Points 4726

La réponse est avis. J'ai travaillé dans beaucoup de projets et d'être testmanager et issuemanager et tous les différents rôles et les descriptions dans les divers livres diffèrent donc voici ma variante:

fonctionnelles-tests: prendre les besoins de l'entreprise et de tester tout de bon et thorougly à partir d'un point de vue fonctionnel.

test d'acceptation: le "payer" le client ne l'épreuve qu'il aime faire, de sorte qu'il peut accepter le produit livré. Cela dépend du client, mais, habituellement, les tests ne sont pas aussi complète que la fonction-test surtout si c'est un projet à l'interne parce que les parties prenantes de l'examen et de confiance, les résultats du test effectué plus tôt dans les phases de test.

Comme je l'ai dit c'est mon point de vue et de l'expérience. Fonctionnelles-tests est systématique et le test d'acceptation est plutôt département des affaires tester la chose.

8voto

Ethel Evans Points 565
  1. Public. Le test fonctionnel est d'assurer les membres de l'équipe de production du logiciel qu'il a fait ce qu'ils attendent. Le test d'acceptation est de garantir au consommateur qu'il répond à leurs besoins.

  2. La portée. Les tests fonctionnels ne teste que la fonctionnalité d'un composant à la fois. Les tests d'acceptation couvre tous les aspects du produit qui compte pour le consommateur suffisant pour tester avant d'accepter le logiciel (c'est à dire, à quoi bon le temps ou l'argent qu'il faudra pour le tester afin de déterminer son acceptabilité).

Le logiciel peut passer les tests fonctionnels, les tests d'intégration et les tests du système; seulement à l'échec des essais d'acceptation lorsque le client découvre que les caractéristiques il suffit de ne pas répondre à leurs besoins. Ce qui doit en principe implique que quelqu'un vissée sur la spécification. Le logiciel peut également échouer des tests fonctionnels, mais passer les tests d'acceptation, parce que le client est disposé à traiter avec certains bogues fonctionnels tant que le logiciel ne le noyau des choses qu'ils ont besoin de façon acceptable (beta logiciel va souvent être accepté par un sous-ensemble d'utilisateurs avant qu'il soit complètement fonctionnel).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by: