Qu'est ce qu'un “Stub”?
Donc, poursuivant ma résolution de nouvelles années pour obtenir plus de TDD, je suis en train de commencer à travailler plus avec Rhino Se Moque De.
Une chose que je tiens à faire est de vous assurer que j'ai vraiment analyser ce que je suis, et j'ai donc voulu vérifier ma compréhension de ce que j'ai vu jusqu'à présent (et j'ai pensé qu'il serait bon pour l'obtenir ici comme une ressource).
Qu'est ce qu'un "Stub"?
- tout d'abord vous poser une question, et puis vous donner la réponse?
- Comme indiqué dans la question - je suis à la recherche pour la vérification de ma compréhension est correcte, je voulais répondre ici (que ce soit le mien ou pas) de fournir une ressource sur ce bien-demandé-mais rarement-bien répondu à la question 🙂
- Également à répondre à sa propre question est indiqué dans la FAQ comme un moyen valable d'utiliser le site, ça devrait être encouragée, en fait.
- C'est bien pour répondre à vos propres questions, bien que la question elle-même a un peu trop de bruit (autobiographie), et ne montre aucun effort pour trouver une réponse, aucune envie de ce que la personne a fait pour tenter de trouver la réponse.
Vous devez vous connecter pour publier un commentaire.
Martin Fowler a écrit un excellent article sur ce sujet. À partir de cet article:
De le mettre dans mes propres mots: les objets fantaisie "s'attendre à" certaines méthodes à appeler sur eux, et provoquent généralement une unité de test à l'échec si leurs attentes ne sont pas remplies. Des objets de talon de fournir des réponses en conserve (et peut être générée automatiquement par les bibliothèques d'assistance), mais en général ne pas la cause directe de l'unité de test à l'échec. Ils sont typiquement utilisés de sorte que l'objet de tests obtient les données dont il a besoin pour faire son travail.
Un "stub" est une implémentation d'une interface qui existe pour fournir des données/une réponse de quelque sorte. Par exemple:
Normalement, ce serait fournie par un autre service (Web Service, une autre application, une base de données), mais dans le but d'améliorer la testabilité du code, les résultats sont "truquées".
Un des principaux avantages de cette solution est qu'elle permet aux affirmations d'être réalisés dans des tests unitaires basés sur les données attendues. Si des erreurs surviennent en raison d'erreurs de données, puis les tests peuvent facilement être ajoutés, un nouveau tampon créé (à recopier les données d'erreur) et le code de produit pour corriger l'erreur.
Talons diffèrent de se moque de en ce qu'ils sont utilisés pour représenter et de tester la état d'un objet, tandis que d'un Simulacre de tests de ses interaction.
Je crois "stub" vient de STartUpBlock. il est utilisé pour faire référence à des parties de code qui sont générés automatiquement, pour vous aider, le développeur, commencer.
Un "stub" ou "stub " méthode" est conçu pour être un starter-code ou un remplaçant pour encore-à-être-le code développé. Il est intégré dans le code généré par l'IDE. Stub méthodes sont en fait des méthodes utilisées pour tester les méthodes d'une classe particulière. Il est utilisé par la saisie de certaines valeurs pour les variables locales dans le développement de méthodes et de vérifier si la sortie est correcte. Il est important de trouver des bugs dans votre code.
J'ai posé la question récemment, et a reconnu que cette comparaison entre Stub et Pilote est vraiment clair et utile:
Fondamentalement, les talons et les pilotes sont des routines qui en fait ne font rien, sauf à se déclarer et les paramètres qu'ils acceptent. Le reste du code peut alors prendre ces paramètres et de les utiliser comme entrées.
De La différence entre le Talon et le Pilote
Après quelques recherches, et basé sur des fichiers stub que j'ai rencontrés au cours de mon codeur vie, je dirais qu'un fichier stub est juste un fichier qui contient un ensemble ou d'une partie de la mise en œuvre d'un fichier. Il permet aux développeurs de commencer à coder.