Mockito呼叫靜態方法和void方法

2021-08-26 02:24:02 字數 632 閱讀 5597

靜態類

首先給你的類新增以下註解:

@preparefortest(**靜態類**.class)

@contextconfiguration

@runwith(powermockrunner.class)

@powermockrunnerdelegate(springjunit4classrunner.class)

然後就可以使用了,與常用的mockito不同,需要使用powermockito,具體使用方法:

首mock乙個靜態類

powermockito.mockstatic(**靜態類**.class);
然後呼叫:

powermockito.when(t method).thenreturn

(object);

void

powermockito.donothing().when(casservice).addsupplier(anylong(), any(servicekey.class));
不過,void方法一般不使用mock,因為它的資料一般不會影響接下來的結果。

靜態和非靜態方法 呼叫靜態和非靜態方法 原創

在學習php物件導向的時候,遇到了一些問題 class test1 在test1類中,定義了乙個test方法。一般呢,想要呼叫test方法的話,是通過例項化乙個物件來呼叫test方法的。比如 aaa.php php 正常的方式訪問普通方法test class test1 new new test1 ...

靜態和非靜態方法 呼叫靜態和非靜態方法 原創

在學習php物件導向的時候,遇到了一些問題 class test1 在test1類中,定義了乙個test方法。一般呢,想要呼叫test方法的話,是通過例項化乙個物件來呼叫test方法的。比如 aaa.php php 正常的方式訪問普通方法test class test1 new new test1 ...

靜態方法呼叫非靜態方法

靜態方法不能 直接 呼叫非靜態變數,非靜態方法可以引用靜態變數。靜態方法不屬於物件,是屬於類的,不需要例項化 而非靜態變數是屬於物件的,需要先例項化。在乙個類的靜態成員中去訪問其非靜態成員,因為類的靜態成員先於類的非靜態成員存在,訪問乙個記憶體中不存在的東西會出錯。相反,非靜態方法可以引用靜態變數。...