Question

Je voudrais faire des tests d'intégration et les tests du système pour mes applications, mais produisant des tests d'intégration et de bons systèmes ont souvent besoin tant d'efforts que je ne l'ai pas pris la peine. Les rares fois où j'ai essayé, j'écrit sur commande, harnais de test spécifiques à l'application, qui se sentait comme réinventer la roue à chaque fois. Je me demande si c'est la mauvaise approche. Y at-il une approche « standard » à l'intégration et des tests complets du système?

EDIT: Pour clarifier les choses, il est des tests automatisés pour les applications de bureau et Web. Idéalement, une suite de tests complète qui exerce toutes les fonctions de l'application.

Était-ce utile?

La solution

Si par « faire des tests d'intégration et les tests du système », vous voulez dire des tests automatisés, alors la réponse est non, il n'y a pas d'approche standard. Quelle approche choisir dépendra:

  • les caractéristiques de l'application (par exemple t-il une interface graphique ?, est-il en lecture seule ?, combien de dépendances externes-t-il, etc)
  • ce que vous essayez de test (peut-être vous tests de GUI ne avez besoin, ou peut-être le contraire qui est vrai et vous ne se soucient pas vraiment de l'interface graphique, mais la logique interne est critique)
  • rapidité avec laquelle vous voulez voir les résultats (par exemple plus vous bouchonner plus vite vos tests deviennent)
  • les niveaux de compétences de votre équipe

Personnellement, j'aime toute approche qui intègre avec JUnit. JUnit est un cadre fantastique qui est bien supporté et facilement attaché à un serveur de intergration continue. Voici quelques approches possibles:

  • Sélénium avec JUnit - excellent outil pour l'entraînement des applications web
  • Concordion - pour tous les types d'applications. Intègre avec JUnit et permet spécifications anglais simples de tests. Votre « appareil » / code de test crochet en mots clés dans la spécification et assert ou effectuer des actions sur eux.
  • FEST - pour les applications de swing, encore une fois, il intègre avec JUnit (voir un thème encore ?;) (plus de choix )

Les exemples ci-dessus fournissent une quantité énorme de sortir de la boîte aide pour les tests. Bien sûr, ils ont encore besoin d'efforts pour fil à votre application et à maintenir, mais les avantages en valent la peine. En plus de ce qui précède, vous devrez peut-être penser sur la façon de se moquer ou stub les domaines de votre application. Peut-être que vous voulez faire tous vos tests « sous l'interface graphique » ou « au-dessus de la base de données ». Dans le premier scénario, vous aurez besoin de vos tests pour commencer les points dans votre code où l'interface graphique interagiraient avec elle et dans ce dernier, vous aurez besoin de bouchonner les services qui interagissent avec votre base de données.

Point étant, il y a beaucoup de façons de le faire. Meilleur départ avec une compréhension très claire de ce que vous voulez sortir de vos tests. Ensuite, apprendre quels sont les cadres existants sont là pour vous aider en fonction de ce que vous voulez tester, et enfin, ne pas essayer de conquérir le monde en une nuit. Commencez petit obtenir quelques tests en cours d'exécution. Obtenez la barre verte (toujours une joie de voir!) Obtenez une plate-forme éprouvée stable pour tester et assurez-vous que vous êtes heureux avec elle. Ajoutez ensuite que vous progressez.

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