Frage

Ich habe an mehrere Mocking Frameworks für ASP.NET suchen und stieß auf Microsoft Moles. Dies scheint ein Teil von Microsoft Research-Team zu sein, und frage mich, ob hier jemand Moles über andere gereift Mocking Frameworks wie Moq ausgewählt hat.

War es hilfreich?

Lösung

Ich benutze Moq und Moles im gleichen Testprojekt. Beide haben Stärken und ich verwenden, um jedes gegebenenfalls. Im Allgemeinen verwende ich Moq für die Standard-Art von AAA mit Verifikationstests und Moles ist die ‚große Waffe‘ für die sonst unmockable Dinge, wie Erweiterung Methodenaufrufe etc.

Ich mag diese Anordnung, da jeder Test so einfach und sinnvoll wie möglich sein kann, auch wenn die spöttischen Setup viel von Test zu Test variieren.

Andere Tipps

wurde Moles entwickelt, um effizient mit der White-Box-Analyse von Pex zu arbeiten. Alle anderen Mock Rahmen in der Regel eine Menge Aufwand entstehen.

Moles bietet eine einfache Value Proposition: jede .NET-Methode mit einem Delegierten zu ersetzen. Mit dem Design bieten hat Moles keine API zum Ausdruck bringt ‚Überprüfung‘ als anderer Frameworks. Es ist wirklich an Ihnen zu entscheiden, ob diese Entscheidung passt Ihr oder nicht.

Wenn Sie mit (legacy) Code müssen beschäftigen, die auf hartcodierte statische Methoden oder versiegelte Typen mit internen Konstrukteuren abhängt, kann Moles helfen Ihnen mit diesen Fällen befassen.

Wenn Sie Schnittstellen und schön componentized Code haben, Moles erzeugt auch schlanke Stubs, das heißt Schnittstellenimplementierung, dass Sie mit dem Profiler verwenden können.

Moles ist häufiger im Vergleich / Gegensatz zu TypeMock, dass sie eine Reihe von Einrichtungen bieten außerhalb von Moq und / oder RhinoMocks' Sweet Spot.

Die wichtigste Frage muss man sich fragen, bei der Wahl, ob Sie Ihre Tests relativ Low-Tech behalten wollen oder in einem höheren Maß an technischen Tricks einlassen. Das wird im Wesentlichen durch diktiert, was Sie tun -. Sie haben ASP.NET und nicht MVC getaggt was darauf schließen lässt, dass es in der Tat relevant sein können für Sie

Hier finden Sie aktuelle dieser Dimecasts.net Video für einen schönen Überblick.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top