Des perles comme la Factory Girl et Sham vous permettent de créer des modèles pour les valides et les objets réutilisables. Ils ont été créés en réponse à des montages où les dossiers qui devaient être chargés dans la base de données. Ils permettent de plus d'options de personnalisation lorsque vous instancier les objets et ils visent à assurer que vous avez un objet valide de travailler avec. Ils peuvent être utilisés n'importe où dans vos tests et vos avant et après le test de crochets.
before(:each), avant(:all), après(:each) et après(:all) ont tous pour but de vous donner un endroit pour faire l'installation et le démontage qui sera partagé entre un groupe de test. Par exemple, si vous prévoyez de créer un nouvel utilisateur valide pour chaque test, alors vous aurez envie de le faire dans le before(:each) crochet. Si vous allez être en compensation de certains fichiers du système de fichiers, vous voulez le faire dans un avant de crochet. Si vos tests à tous de créer un fichier tmp et que vous souhaitez la supprimer après votre test, vous allez faire de votre après(:each) ou après(:all) crochet.
La façon dont ces deux concepts diffèrent, c'est que les Usines qui ne sont pas destinées à créer des crochets autour de vos tests, ils visent à créer valide Ruby des objets et des documents, de sorte que vous pouvez garder votre création de l'objet souple et SÈCHE. Avant et après les crochets sont destinés à l'installation et le démontage des tâches qui sont partagés dans un exemple de groupe, de sorte que vous pouvez garder votre installation et le démontage du code SEC.