第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

嘗試獲取行覆蓋范圍時,Mockito的JUnit 4.xx(Java)故障

嘗試獲取行覆蓋范圍時,Mockito的JUnit 4.xx(Java)故障

縹緲止盈 2021-04-02 14:15:34
以下是我的主要代碼。public class KafkaConsumerForTests {private ConsumerRecords<String, String> records;private GenericKafkaConsumer<String, String> consumer;    @Override    public void run() {        try {            while (true) {               LOGGER.logp(Level.INFO, CLASS_NAME, "run()", "Attempting to Poll");               records = consumer.poll(10000);               int numOfRecords = records.count();               **if (numOfRecords == 0) {** // I want to get line coverage for this branch                LOGGER.logp(Level.INFO, CLASS_NAME, "run()", "No Response. Invalid Topic");                break;            }            **else if(numOfRecords > 0) {** // I want to get line coverage for this branch.                LOGGER.logp(Level.INFO, CLASS_NAME, "run()", "Response Received");            }        }    } catch (WakeupException e) {        consumer.close();    }  }}如您所見,我想獲取以下分支的行覆蓋范圍,以測試其是否正確記錄了日志。我試圖模擬出records.count();的實例;您可以在下面查看我的測試用例代碼。@Testpublic void testRunWithZeroRecords() throws IOException {    KafkaConsumerForTests consumerThread3 = spy(new KafkaConsumerForTests("topic_pleasestuff", "lmao"));    ConsumerRecords<String, String> mock2 = mock(ConsumerRecords.class);    consumerThread3.records = mock2;    when(mock2.count()).thenReturn(9);    consumerThread3.run();    //verify(mock2, times(1)).count();}無論我做什么,我都不會打:否則if(numOfRecords> 0)我返回的數字大于0。就好像records.count();一樣。甚至沒有在模擬中執(zhí)行。對于任何約定或StackOverflow問題語法錯誤,我深表歉意。我是Java社區(qū)的新手。
查看完整描述

1 回答

?
飲歌長嘯

TA貢獻1951條經驗 獲得超3個贊

mock2.count()沒有發(fā)生任何事情,因為count()在您要測試的方法中調用之前,您將重新分配records給的結果consumer.poll(10000);

您需要創(chuàng)建模擬,說mockRecordsmockConsumer;然后注入consumer您創(chuàng)建的模擬。然后加入一個存根線

doReturn(mockRecords).when(mockConsumer).poll(10000);

在您致電之前run


查看完整回答
反對 回復 2021-04-14
  • 1 回答
  • 0 關注
  • 223 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號