2009-06-17 17 views
5

Ich habe mit Rhino Mocks experimentiert, um meine .Net Compact Framework-Anwendung zu testen, und habe ein Problem festgestellt. Ich kann mit Rhino Mocks einen Basis-Komponententest erstellen, aber jedes Mal, wenn ich den Test mit dem Rhino Mocks-Code durchführe, schlägt der Test fehl, weil er die Rhino Mocks-Assembly nicht finden kann.Rhino Mocks & Compact Framework

System.TypeLoadException: Typ konnte nicht geladen werden ‚Rhino.Mocks.MockRepository‘ aus Assembly ‚Rhino.Mocks ...

Ich habe kopiert die rhino dll zu verschiedenen Orten auf dem Gerät spottet (meine App-Ordner und der SmartDeviceTest-Ordner, der erstellt wird, aber es scheint immer noch nicht zu finden.

Hat jemand Rhino Mocks mit dem kompakten Rahmen verwendet und kann mich in die richtige Richtung zeigen? Oder kann man, wenn das nicht gelingt, ein spöttisches Framework vorschlagen, das das kompakte Framework integriert und damit arbeitet?

Dank

Matt

Antwort

4

Meine Wette ist, dass es keine Abhängigkeit gibt. IIRC, Rhino verwendet eine Menge der CompilerServices und Reflection.Emit Stücke, die einfach nicht in der CF vorhanden sind, also kotzt es wahrscheinlich beim Versuch, die Mocks zu erzeugen. Ich habe noch keinen spöttischen Rahmen gesehen, der mit der CF funktioniert, und ich habe ziemlich viel nachgesehen (und versucht zu portieren).

+0

Hallo Chris! Ja, ich habe auch viel gesucht, ich hatte einen Post von ein paar Leuten gefunden, die sagten, dass Rhino-Mocks an CF arbeiteten, aber keine wirklichen Details. Naja. Ich denke, ich muss meine eigenen rollen. Matt – Matt

2

Ich schrieb einen Blog-Post auf diese gerade vor ein paar Monaten: http://elegantcode.com/2009/04/29/unit-testingmocking-on-net-cf/

Wie auch immer, RhinoMocks, Moq und TypeMock funktionieren nicht auf .NETCF. Stubs von PEX (ein Microsoft-Forschungsprojekt) können theoretisch funktionieren, sind aber noch nicht da.

Der Schlüssel ist Stub-Klassen statt Mock-Klassen (Google-Suche "Mocks sind keine Stubs")