2017-05-18 119 views
1

JMockit - 1.31JMockit - 在期望嘲笑方法沒有返回結果

我有以下使用JUnit測試方法(和Groovy):

@Test 
void test(@Mocked RequestLine line) { 

    new Expectations() {{ 
    line.getUri() 
    result = '123' 
    }} 

    println line.getUri() 

} 

line不爲空。它正在得到一個實例。但問題是,line.getUri()應返回123,但返回null

我做錯了什麼?或者應該這樣工作?

UPDATE:

我實現了測試在Java中,和它的作品使用result。所以這似乎是JMockit和Groovy之間的問題。

回答

0

出於某種原因,它使用returns()而不是result。不知道爲什麼,也許你應該在他們的問題追蹤器中打開併發布。

@Test 
void test(@Mocked RequestLine line) { 

    new Expectations() {{ 
    line.getUri(); 
    returns('123'); 
    }} 

    System.out.println(line.getUri()); 

} 
+0

分號沒有幫助。同樣的結果。 – kurzweil4

+0

奇怪的是,它適用於returns(),我修改了我的答案。 – Alfergon