zoukankan      html  css  js  c++  java
  • C# 单元测试案例

    测试单元代码:

    使用了Mock框架,得提前导入Moq程序包,使用Nuget搜索

    using Moq;

    namespace UnitTestProject1.test
    {
        [TestClass]
        public class UnitTest1
        {
            [TestMethod]
            public void TestMethod1()
            {
                var mock = new Mock<IPower>();
                mock.Setup(pw => pw.GetPower()).Returns(() => 0);
                var powtest = new DeskFun(mock.Object);
                var expect = "不能工作";
                var actual = powtest.Work();
                Assert.AreEqual(expect, actual);
            }
    
            [TestMethod]
            public void warnWork()
            {
                var mock = new Mock<IPower>();
                mock.Setup(pw => pw.GetPower()).Returns(() => 220);
                var fun = new DeskFun(mock.Object);
                var expected = "警告";
                var actual = fun.Work();
                Assert.AreEqual(expected,actual);
            }
        }
    
    }

    测试类和接口:

     1 public interface IPower
     2 {
     3     int GetPower();
     4 }
     5 
     6 /// <summary>
     7 /// 接口实现方法
     8 /// </summary>
     9 public class PowerSupper : IPower
    10 {
    11     public int GetPower()
    12     {
    13         return 100;
    14     }
    15 }
    16 
    17 public class DeskFun
    18 {
    19     private IPower _powerSupper;
    20 
    21     public DeskFun(IPower powerSupper)
    22     {
    23         _powerSupper = powerSupper;
    24     }
    25 
    26     /// <summary>
    27     /// 工作方法
    28     /// </summary>
    29     /// <returns>返回工作状态</returns>
    30     public string Work()
    31     {
    32         int power = _powerSupper.GetPower();
    33 
    34         if (power <= 0)
    35         {
    36             return "不能工作";
    37         }
    38         else if (power < 100)
    39         {
    40             return "工作慢";
    41         }
    42         else if (power < 200)
    43         {
    44             return "正常工作";
    45         }
    46         else
    47         {
    48             return "警告";
    49         }
    50     }

    本文来自博客园,作者:云辰,转载请注明原文链接:https://www.cnblogs.com/yunchen/p/13885883.html

  • 相关阅读:
    VUE.js入门学习(2)-基础精讲
    VUE中的MVVM模式
    VUE.js入门学习(1)-起步
    Vuex 是什么
    Proxy
    VUE常见的语法
    ES6的一些语法
    Element
    Mock.js
    第一阶段:Python开发基础 day14 三元表达式 生成器 匿名函数
  • 原文地址:https://www.cnblogs.com/yunchen/p/13885883.html
Copyright © 2011-2022 走看看