一文讓你快速上手 Mockito 單元測試框架
阿新 • • 發佈:2020-05-31
#### 前言
在計算機程式設計中,單元測試是一種軟體測試方法,通過該方法可以測試原始碼的各個單元功能是否適合使用。為程式碼編寫單元測試有很多好處,包括可以及早的發現程式碼錯誤,促進更改,簡化整合,方便程式碼重構以及許多其它功能。使用 Java 語言的朋友應該用過或者聽過 Junit 就是用來做單元測試的,那麼為什麼我們還需要 [Mockito](https://site.mockito.org) 測試框架呢?想象一下這樣的一個常見的場景,當前要測試的類依賴於其它一些類物件時,如果用 Junit 來進行單元測試的話,我們就必須手動創建出這些依賴的物件,這其實是個比較麻煩的工作,此時就可以使用 Mockito 測試框架來模擬那些依賴的類,這些被模擬的物件在測試中充當真實物件的虛擬物件或克隆物件,而且 Mockito 同時也提供了方便的測試行為驗證。這樣就可以讓我們更多地去關注當前測試類的邏輯,而不是它所依賴的物件。
#### 生成 Mock 物件方式
要使用 Mockito,首先需要在我們的專案中引入 Mockito 測試框架依賴,基於 Maven 構建的專案引入如下依賴即可:
```Java
```
如果是基於 Gradle 構建的專案,則引入如下依賴:
```Java
testCompile group: 'org.mockito', name: 'mockito-core', version: '3.3.3'
```
使用 Mockito 通常有兩種常見的方式來建立 Mock 物件。
##### 1、使用 Mockito.mock(clazz) 方式
通過 Mockito 類的靜態方法 mock 來建立 Mock 物件,例如以下建立了一個 List 型別的 Mock 物件:
```J