簡體   English   中英

如何使用Mockito和Powermockito模擬JsonArray的迭代器方法

[英]How to mock iterator method of JsonArray using mockito and powermockito

我想模擬JsonArray對象的迭代器功能。 JsonArray是一個自定義的最終類,其迭代器函數返回Iterator<JsonElement> 這是我嘗試過的

JsonElement row = ["City1","Date1","Expense1"];
JsonArray jsonArray = row.getAsJsonArray();
final Iterator<JsonElement> iterator = jsonArray.iterator();
JsonElement entry = iterator.next();
if (entry == null || entry.isJsonNull()) {
    return null;
}

我想以使條目變為null的方式模擬迭代器。 這是我嘗試過的方法,但是當我調試時,我看到迭代器仍然可以正常工作,好像沒有被嘲笑一樣。

Iterator iterator = Mockito.mock(Iterator.class);
PowerMockito.when(iterator.next()).thenReturn(null);

您要測試的方法能否將row作為參數? (看起來應該如此)

然后,您可以僅使用[null]來調用它,而不必進行模擬。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM