簡體   English   中英

如何在 C# 單元測試項目中模擬 class

[英]How to mock a class in C# unit testing project

我有一個 class 我想要最小起訂量:

    public class ODriver
    {
        public int DriverId { get; set; }      

        public virtual bool CanDrive()
        {
            return false;
        }
    }

她在我要測試的方法中是這樣使用的:

    var driver = new ODriver();

    // Must be false except in the unit test
    var canDrive = driver.CanDrive();

我在單元測試中模擬了這樣的方法:

  var driverMoq = new Mock<ODriver>();
  driverMoq.Setup(d => d.CanDrive()).Returns(true);

運行測試時,CanDrive 方法的結果返回 false。 為了使用模擬的 class,我需要做什么?

謝謝你們 !

所以答案是:我修改了我測試的方法的代碼,並添加了 ODriver object 作為參數。

感謝您的幫助,我不知道它是如何工作的。

皮埃爾盧克

暫無
暫無

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

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