使用Junit 測試私有方法

2021-08-25 04:47:30 字數 1037 閱讀 9727

在junit4中如何測試私有方法呢?

有如下類和方法:

public class printablecharacterascii

line[72] = '/r';

line[73] = '/n';

return line;}}

此類實現列印「abcdefghijklmnopqrstuvwxyz[/]^_`abcdefghijklmnopqrstuvwxyz~!"#$%&'()*」等字元。

利用eclipse建立junit4測試,選擇「setup()」方法:

自動生成如下**:

import org.junit.before;

import org.junit.test;

public class printablecharacterasciitest

}我們新增**:

宣告被測試類:

private printablecharacterascii pca;

首先,在setup方法中建立被測試類的例項:

pca = new printablecharacterascii();

@test

public void testgeneratecharacters() ; // 建立引數

method method = clazz.getdeclaredmethod("generatecharacters", args); // 獲取私有方法和他的引數

method.setaccessible(true); // 允許訪問

outputstream output = new bytearrayoutputstream();

int start = 33;

char result = (char) method.invoke(pca, start); // 呼叫被測類的方法

char expected = new char;

assert.assertequals(expected, result); // 測試

} catch (exception e)

}

使用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...

使用mockito框架來測試私有方法

這裡舉乙個稍微複雜一點的例子 前段時間在看mybatis3.5.1的原始碼,原始碼本身所帶的單元測試用到了mockito框架 一 問題說明 看到這個方法,1.我會想到需要傳遞乙個list。這個好辦 該類只有乙個帶參構造方法 這幾個引數傳進去又會遇到問題,因為sqlcommand和method拿到傳的...