35 votes

Quelle est votre bibliothèque moqueuse Delphi préférée?

Je souhaite commencer à utiliser des objets fantaisie sur mes projets Delphi.

Après un rapide Google, j'ai trouvé ceux-ci:

Donc ma question est quelle est votre préférée et pourquoi?

11voto

Kenneth Cochran Points 7262

Bien que stable, PascalMock n’a pas été travaillé depuis des années.

Il existe une nouvelle bibliothèque fictive appelée Delphi Mocks . Cela fonctionne uniquement avec Delphi XE2 ou plus récent.

7voto

idealist Points 61

Essayez Dsharp . C'est comme Delphi Mocks, mais sans fuites de mémoire.

IMHO DSHARP est meilleur, même si j'étais enthousiasmé par Delphi Mocks au début.

5voto

Arnaud Bouchez Points 25855

Notre Open Source mORMot cadre est maintenant en mesure, dans sa version instable, à talon ou de se moquer de tout Delphi interface.

Comme d'habitude, la meilleure façon d'expliquer ce qu'est une bibliothèque n'est de regarder le code de l'utiliser. Voici un exemple (similaire à celui fourni avec RhinoMocks) de vérifier que, lorsque nous exécutons le "j'ai oublié mon mot de passe" scénario, nous nous sommes rappelés à l'appel de l' Save() méthode correctement:

procedure TMyTest.ForgotMyPassword;
var SmsSender: ISmsSender;
    UserRepository: IUserRepository;
begin
  TInterfaceStub.Create(TypeInfo(ISmsSender),SmsSender).
    Returns('Send',[true]);
  TInterfaceMock.Create(TypeInfo(IUserRepository),UserRepository,self).
    ExpectsCount('Save',qoEqualTo,1);
  with TLoginController.Create(UserRepository,SmsSender) do
  try
    ForgotMyPassword('toto');
  finally
    Free;
  end;
end;

Et... c'est tout, depuis la vérification aura lieu lors de l' IUserRepository instance sera communiqué.

Les fonctionnalités disponibles (certains sont uniques en comparaison à d'autres Delphi se moquant de cadres):

  • Claire distinction entre les talons et se moque, avec l'intégration avec notre Unité de Test de classes;
  • Poignée var et out paramètres valeur renvoyée, en plus d'un résultat de la fonction;
  • Stubbing définition via une interface fluide, ou une délégué/rappel;
  • Se moquant via "attendez-run-vérifier" et/ou "run-vérifier" (aka "test espion") modèles, au choix, en fonction de vos tests attentes;
  • Intégré les appels de méthode de traçage;
  • Open Source, travail à partir de Delphi 6 jusqu'à XE3;
  • Léger et rapide (ne comptez pas sur lent TVirtualInterface).

Voir les articles du blog:

2voto

neves Points 3075

L'assistant Delphi Mock ne génère que des assistants pour Pascal Mock. Ce ne sont pas des implémentations concurrentes.

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:

X