簡體   English   中英

JMock無法模擬私有方法

[英]JMock unable to mock a private method

我正在嘗試通過模擬JMock中的類來編寫代碼來測試方法,該方法內部調用了三個不同的方法(其中一個是私有方法)。 我對這三種內部方法都設定了期望。 然后我調用正在測試的方法。 測試用例未能說它期望私有方法被調用而沒有被調用。 發生的情況是成功模擬了兩個內部方法(具有默認的訪問說明符),但未模擬私有方法,並且實際上控件進入了實際的私有方法內部,從而導致了問題。 當我將私有方法的訪問說明符更改為默認訪問權限時,一切正常,但是我不想這樣做。 有人可以解釋一下這種行為,讓我知道如何解決此問題

JMock無法模擬簡單而簡單的私有方法。 Mockito也不能模擬私有方法 如果您真的想模擬私有方法,則需要使用PowerMock框架。

您也可以使用Jmockit。 這是一個很好的庫,可用於此用例。 您可以使用的關鍵字:“ Deencapsulation”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM