[英]Can't figure out why mock method doesn't work
我有一個模擬方法
def getBlacklist(newList: List[String]) ={
when(service.getMyBlacklist).thenReturn(newList)
}
當我在測試部分調用它時,返回值為空
val res = mocks.getBlacklist(List("abcd"))
主要功能,有人可以幫我嗎? 謝謝。
if (!services.getMyBlacklist.contains(s"$accountId:$ruleName")) {
***
} else {
***
}
我認為問題是嘲笑沒有正確完成。 本質上,您所做的是模擬該類的行為,這樣每當您正在測試的其他類中調用該類的方法時,就會返回一個模擬值。 假設services
是Service
類的一個實例,如下所示:
class Service() {
def getBlacklist(): List[String]) = {// Some Original code here}
}
現在,對於測試,請使用:
val service = mock[Service]
val mockList = List("abc") // change according to your use case
when(service.getBlacklist).thenReturn(mockList)
讓我知道它是否有幫助!!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.