web-dev-qa-db-ja.com

.NET Core 1.1以降でモッキングと偽物をどのように使用すればよいですか?

.NET Framework 4.Xを何年も使用していて、.NET Coreに切り替えたところです。 TDDをしたいので、モックフレームワークとマイクロソフトの偽物を使用したいと思います。ただし、従来のソリューションはサポートされていないため、.NET Coreでそれを行う方法はわかりません。

誰かが.NET Core 1.1でモッキングと偽物をどのように使用すべきか教えてもらえますか?

24
Daan
  1. Nugetを使用して「Moq」をインストールする
  2. NUnitなどを使用して単体テストを作成する
  3. このようなものを書きます:

        // Arrange
        var mock = new Mock<IRepository>();
        mock.Setup(repo=>repo.GetAll()).Returns(GetTestPhones());
        var controller = new HomeController(mock.Object);
    
        // Act
        var result = controller.Index();
    
        // Assert
        var viewResult = Assert.IsType<ViewResult>(result);
        var model = Assert.IsAssignableFrom<IEnumerable<Phone>>(viewResult.Model);
        Assert.Equal(GetTestPhones().Count, model.Count());
    
4
Dzianis Yafimau