Oui, je pense que vous êtes un peu confus.
Les frameworks Mock servent à créer des objets "Mock" qui faussent une partie de la fonctionnalité de vos objets réels afin que vous puissiez les transmettre aux méthodes pendant les tests, sans avoir à créer l'objet réel à tester.
permet d'exécuter à travers un exemple rapide
Supposons que vous avez une méthode « Save() » qui prend un objet « Doc » et renvoie un indicateur de succès « booléen »
public bool Save(Doc docToSave(){...}
Maintenant, si vous Si vous voulez écrire un test unitaire pour cette méthode, vous devez d'abord créer un objet document et le remplir avec les données appropriées avant de pouvoir tester la méthode 'Save()'. Cela nécessite plus de travail que vous voulez vraiment faire. Au lieu de cela, il est possible d'utiliser un cadre Mocking pour créer un faux objet 'Doc' pour vous.
Syntaxe différents entre les cadres, mais en pseudo-code que vous écrivez quelque chose comme ceci:
CreateMock of type Doc
SetReturnValue for method Doc.data = "some test data"
Le cadre moqueur va créer un objet fantaisie factice de type Doc qui renvoie correctement « des données de test » quand il est La propriété '.data' est appelée.
Vous pouvez ensuite utiliser cet objet factice pour tester votre méthode de sauvegarde:
public void MyTest()
{
...
bool isSuccess = someClass.Save(dummyDoc);
...
}
Le cadre moqueur assure que lorsque votre méthode « Save() » permet d'accéder aux propriétés de l'objet dummyDoc, les données correctes est retournée et l'économie peut se produire naturellement. Ceci est un exemple légèrement artificiel, et dans un cas aussi simple, il serait probablement aussi simple de créer un objet Doc réel, mais souvent dans un logiciel binaire complexe, il pourrait être beaucoup plus difficile de créer l'objet parce qu'il a dépendances sur d'autres choses, ou il a des exigences pour que d'autres choses soient créées en premier. Mocking supprime une partie de cette surcharge supplémentaire et vous permet de tester uniquement la méthode spécifique que vous essayez de tester et de ne pas vous soucier des complexités de la classe Doc.
Les tests blancs sont simplement des tests unitaires utilisant des objets simulés par opposition à des objets réels. Les objets mockés ne sont pas vraiment utilisés dans le cadre du code de production réel.Si vous voulez quelque chose qui prendra la place de vos classes de base de données pour que vous puissiez changer d'avis plus tard, vous devez écrire des interfaces ou des classes abstraites pour fournir les méthodes dont vous avez besoin pour correspondre à votre sémantique de sauvegarde/chargement. remplir plusieurs implémentations complètes en fonction des types de stockage que vous choisissez.
> "Je n'ai jamais utilisé de tests unitaires ou de cadres fictifs" => Commencez simplement par un test unitaire pour avoir une idée de ce sujet. plus tard, essayez de vous moquer. bonne vidéo sur youtube (C#): http://www.youtube.com/watch?v=f60aIlNhMoE ou pour java regardez ici http://java.dzone.com/articles/test-driven-teaching; vous pouvez trouver une intro très rapide avec du code ici: http://mockito.org/ – Karussell