如何對私有方法進行測試

2021-10-24 19:40:16 字數 853 閱讀 5353

一般情況下私有方法只能在所屬類的內部進行呼叫,在類外則無法通過物件.方法名的方法呼叫私有方法。那麼在平時測試中,如何測試私有方法,下面分享個人所知的兩種方法,如下:

【格式】

//呼叫方法格式

object result = deencapsulation.

invoke

(mockclass, methodname, parameter1, parameter2 ….

);

【說明】

mockclass:該引數是需要呼叫方法所屬的類,該類需要被mock

methodname:該引數為需要呼叫的私有方法名

parameter:該引數為呼叫方法的引數的值,根據方法需要設定的引數個數而定

deencapsulation.invoke()返回結果型別:與呼叫方法(即測試的方法)返回的型別一致

【格式】

//呼叫方法格式

method method = 類物件.

getclass()

.getdeclaredmethod

(methodname, 引數型別1

, 引數型別2….);

object result = method.

invoke

(類物件, 引數值1

, 引數值2…)

【說明】

類物件: 呼叫私有方法所屬類的物件

methodname:呼叫的私有方法名

VS2005對私有方法的單元進行測試

使用 visual studio 對 公共方法進行單元測試,跟以前 nunit 一樣,都是引用需要的類,然後對公共方法進行測試 使用 visual studio 對公共方法進行單元測試,跟以前 nunit 一樣,都是引用需要的類,然後對公共方法進行測試。但是 visual studio 還可以對類的...

使用Junit 測試私有方法

在junit4中如何測試私有方法呢?有如下類和方法 public class printablecharacterascii line 72 r line 73 n return line 此類實現列印 abcdefghijklmnopqrstuvwxyz abcdefghijklmnopqrstu...

使用Junit 測試私有方法

在junit4中如何測試私有方法呢?有如下類和方法 public class printablecharacterascii line 72 r line 73 n return line 此類實現列印 abcdefghijklmnopqrstuvwxyz abcdefghijklmnopqrstu...