Mit Mockito Annotationen mit spring

Bin ich mit Frühling in meiner Anwendung, und ich will schreiben von unit-tests für alle meine Klassen. Ich nenne nur wenige externe webservices aus meiner Anwendung, und ich möchte, um Sie zu verhöhnen mit Mockito, da ich nur testen will, meine Funktionalität.

Können sagen, ich habe das folgende Szenario

Dies ist meine webservice-Schnittstelle

public interface MyWebService {
    public String getSomeData(int id);
}

Ich den oben genannten Dienst diese Weise

public interface MyService {
    int doSomethingElse(String str);
}

public class MyServiceImpl implements MyService {

    private MyWebService myWebService;

    int doSomethingElse(String str) {
        .....
        myWebService.getSomeData(id);
        ...
    }
}

public interface MyService1 {
    Stirng methodToBeTested();
}


public class Class1 implements MyService1{
    @Resource
    private MyService myService;

    public Stirng methodToBeTested() {
        myService.doSomethingElse("..");
    }
}

Schrieb ich die uint-Testfall, wie unten beschrieben. Ich bin Spionage MyService hier so zu laufen, das Gerät zu testen.

public class class1Test {

    @Spy
    MyService myService;

    @Resource
    @InjectMocks
    Class1 class1;

    public void setUPTest() {
        MockitoAnnotations.initMocks(this);
    Mockito.doReturn(123).when(myService).doSomethingElse("someString");
    }

    @Test
    public void methodToBeTestedTest() {
        this.setUPTest();
            ...
            class1.methodToBeTested();
    }

}

Wenn ich den test ausführen, was ich sehe, ist, dass, bekomme ich den Wert aus der webservice statt, was ich schon erwähnt beim stubbing.

Kann mir jemand helfen mit diesem?

InformationsquelleAutor rahul | 2013-03-26
Schreibe einen Kommentar