2012-02-28 8 views
7

¿Alguien ha estado usando un framework de burla .NET que han encontrado compatible con Monotouch? Tengo curiosidad acerca de la compatibilidad con NMock, NSubstitute, Moq y otros frameworks antes de intentar usar uno.Mocking frameworks para .NET en Monotouch?

Xamarin acaba de reforzar su soporte de pruebas unitarias, pero no menciona un marco simulado. FYI, espero hacer mucho de mi desarrollo en VS 2010 para los bits que no son UI y pasar a la plataforma iOS cuando la interfaz de usuario entre en juego.

Gracias por la ayuda.

+0

Yo (como autor de Touch.Unit) no he escuchado a nadie usándolos. Si no obtiene respuestas específicas, le recomiendo probarlas (al menos las de código abierto) en MonoTouch y cree su propia respuesta aquí en stackoverflow. – poupou

+0

Posible duplicado de [Mocking framework para usar con xamarin android] (http://stackoverflow.com/questions/22538727/mocking-framework-for-use-with-xamarin-android) –

+0

Supongo que 'FakeItEasy' no funciona en este ambiente? Poniéndolo aquí como no lo mencionaste en tu publicación inicial – jamespconnor

Respuesta

4

recomendaría usar sólo burla Manual:

interface IClass { 
    void Method(int x); 
} 

MockClass : IClass { 
    public void Method(int x) { 
      MethodParameter = x; 
    } 

    //Assert against this guy 
    public int MethodParameter { get; private set; } 
} 

StubClass : IClass { 
    public void Method(int x) { 
      //Do nothing 
    } 
} 

Si tuviera que adivinar burla de Rhino, Moq, etc tienen un uso intensivo de Reflection.Emit (la forma más podría hacer la locura que pueden hacer?), que no se ejecutará con el compilador AOT en MonoTouch.

+0

Gracias. La burla manual es algo que he hecho mucho en el pasado, pero me preguntaba si los marcos eran compatibles en todas las plataformas. La burla manual tiende a ser un poco más laboriosa, aunque hay muchos buenos patrones de inyección de dependencia para que sea más fácil. – Nekoashi

+1

TinyIoC nos ha funcionado en MonoTouch para ayudar con IoC/DI: https://github.com/grumpydev/TinyIoC – jonathanpeppers

+0

Esto es muy decepcionante. Quería usar Moq tan mal en un proyecto MonoTouch. – NovaJoe