久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

使用 Mockito 模擬類的成員變量

Mocking member variables of a class using Mockito(使用 Mockito 模擬類的成員變量)
本文介紹了使用 Mockito 模擬類的成員變量的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!

問題描述

我是開發(fā)新手,尤其是單元測試新手.我想我的要求很簡單,但我很想知道其他人對此的想法.

I am a newbie to development and to unit tests in particular . I guess my requirement is pretty simple, but I am keen to know others thoughts on this.

假設(shè)我有兩個這樣的課程 -

Suppose I have two classes like so -

public class First {

    Second second ;

    public First(){
        second = new Second();
    }

    public String doSecond(){
        return second.doSecond();
    }
}

class Second {

    public String doSecond(){
        return "Do Something";
    }
}

假設(shè)我正在編寫單元測試來測試 First.doSecond() 方法.但是,假設(shè)我想像這樣模擬 Second.doSecond() 類.我正在使用 Mockito 來做到這一點.

Let's say I am writing unit test to test First.doSecond() method. However, suppose, i want to Mock Second.doSecond() class like so. I am using Mockito to do this.

public void testFirst(){
    Second sec = mock(Second.class);
    when(sec.doSecond()).thenReturn("Stubbed Second");

    First first = new First();
    assertEquals("Stubbed Second", first.doSecond());
}

我看到模擬沒有生效并且斷言失敗.有沒有辦法模擬我要測試的類的成員變量.?

I am seeing that the mocking does not take effect and the assertion fails. Is there no way to mock the member variables of a class that I want to test . ?

推薦答案

你需要提供一種訪問成員變量的方法,這樣你就可以傳入一個 mock(最常見的方法是 setter 方法或構(gòu)造函數(shù)一個參數(shù)).

You need to provide a way of accessing the member variables so you can pass in a mock (the most common ways would be a setter method or a constructor which takes a parameter).

如果您的代碼未提供執(zhí)行此操作的方法,則它被錯誤地考慮為 TDD(測試驅(qū)動開發(fā)).

If your code doesn't provide a way of doing this, it's incorrectly factored for TDD (Test Driven Development).

這篇關(guān)于使用 Mockito 模擬類的成員變量的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內(nèi)容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請聯(lián)系我們刪除處理,感謝您的支持!

相關(guān)文檔推薦

How to mock super reference (on super class)?(如何模擬超級參考(在超級類上)?)
Java mock database connection(Java 模擬數(shù)據(jù)庫連接)
Mockito ClassCastException - A mock cannot be cast(Mockito ClassCastException - 無法投射模擬)
Set value to mocked object but get null(將值設(shè)置為模擬對象但獲取 null)
How to mock DriverManager.getConnection(...)?(如何模擬 DriverManager.getConnection(...)?)
Mockito; verify method was called with list, ignore order of elements in list(模擬;使用列表調(diào)用驗證方法,忽略列表中元素的順序)
主站蜘蛛池模板: 亚洲天堂999 | 成在线人视频免费视频 | 亚洲成人一区二区三区 | 免费毛片网站 | 国产成人精品av | 国产成人久久精品一区二区三区 | 精品久久久久久久久久 | 国产精品一区二区在线观看 | 国产精品福利网 | 精品三级在线观看 | 久久新 | 草草视频在线观看 | 欧美一级欧美三级在线观看 | 在线色网| 美女操网站| 亚洲一区二区三区在线视频 | 成人欧美一区二区三区在线播放 | 国产精品亚洲视频 | 成人小视频在线观看 | 成人午夜免费福利视频 | 国产精品美女久久久久久免费 | 91av小视频| 亚洲一级毛片 | 亚州激情 | 国产精品欧美一区二区 | 日韩一区二区三区视频 | 成人一区在线观看 | 中文字幕视频在线观看 | 亚洲欧美精品 | 在线毛片网 | 成人片免费看 | aacc678成免费人电影网站 | 国产精品永久免费视频 | eeuss国产一区二区三区四区 | 国内精品久久精品 | 最新免费黄色网址 | 国产精品美女久久久久aⅴ国产馆 | 午夜a v电影 | 免费人成在线观看网站 | 国产精品国产成人国产三级 | 国产精品国产精品国产专区不卡 |