3 回答

TA貢獻(xiàn)1810條經(jīng)驗(yàn) 獲得超5個(gè)贊
如果要測(cè)試的方法確實(shí)值得測(cè)試,那么將其移到自己的類(lèi)中可能是值得的。 向調(diào)用私有方法的公共方法添加更多測(cè)試,測(cè)試私有方法的功能。(正如評(píng)論員所指出的,只有當(dāng)這些私有方法的功能確實(shí)是公共接口的一部分時(shí),才應(yīng)該這樣做。如果它們實(shí)際執(zhí)行對(duì)用戶(hù)隱藏的功能(即單元測(cè)試),這可能是不好的)。

TA貢獻(xiàn)1840條經(jīng)驗(yàn) 獲得超5個(gè)贊
存取器
轉(zhuǎn)到類(lèi)定義的源代碼 右鍵單擊類(lèi)的名稱(chēng)。 選擇“創(chuàng)建私有訪(fǎng)問(wèn)器” 選擇應(yīng)該創(chuàng)建訪(fǎng)問(wèn)器的項(xiàng)目=>您將得到一個(gè)名為foo_accessor的新類(lèi)。此類(lèi)將在編譯期間動(dòng)態(tài)生成,并對(duì)所有可公開(kāi)的成員進(jìn)行獎(jiǎng)勵(lì)。
私隱對(duì)象類(lèi)
// Wrap an already existing instancePrivateObject accessor = new PrivateObject( objectInstanceToBeWrapped );// Retrieve a private fieldMyReturnType accessiblePrivateField = (MyReturnType) accessor.GetField( "privateFieldName" );// Call a private methodaccessor.Invoke( "PrivateMethodName", new Object[] {/* ... */} );
- 3 回答
- 0 關(guān)注
- 1338 瀏覽
添加回答
舉報(bào)