VS2015中进行单元测试

VS2015中进行单元测试

前沿

本机环境: VS2015

创建项目使用.net版本为 .net framework 4.0

1.1创建项目

新建一个项目,项目类型不定。我在这里选择创建了一个控制台应用程序

 

然后在当前项目下添加一个类Calculate.cs。新建并添加后的结构如下:

 

Calculate.cs文件中添加下面所示的内容:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

 

namespace Example

{

  public class Calculate

  {

    /// <summary>

    /// 累加器 1开始累加到传入的值

    /// </summary>

    /// <param name="ivalue">传入的值</param>

    /// <returns>累加的总值</returns>

    public static int GetSum(int ivalue)

    {

      int sum = 0;

      for (int i = 1; i <= ivalue; i++)

      {

        sum += i;

      }

      return sum;

    }

  }

}

1.2创建与之对应的单元测试

选择当前的解决方案,然后右键添加新的项目,选择测试中的单元测试项目。名称的命名方式为Test_项目名。

 

我们把默认添加的UnitTest1.cs改名为:Test_Calculate.cs(和我们要测试的类名称对应)。这时我们需要添加Example的引用这样才可以对该项目进行测试。

 

右键Test_Example中的引用,点击添加引用,选到项目中的Example然后点击确定即可。这样我们修改Test_Calculate.cs中的内容如下:

using System;

using Microsoft.VisualStudio.TestTools.UnitTesting;

using Example;

 

namespace Test_Example

{

  [TestClass]

  public class Test_Calculate

  {

    [TestMethod]

    public void TesGetSum()

    {

      Assert.IsTrue(Calculate.GetSum(10) == 55);

    }

  }

}

然后通过测试->运行->所有测试来查看测试结果,结果如下:

 

因为110的累积和刚好等于55,所以测试时正确的,如果我们把55换成60,再看下效果:

 

这样我们就可以很清楚的看到Assert.IsTrue这里是存在问题的。

1.3常用的Assert用法

Assert.Inconclusive() 表示一个未验证的测试;

Assert.AreEqual() 测试指定的值是否相等,如果相等,则测试通过;

AreSame() 用于验证指定的两个对象变量是指向相同的对象,否则认为是错误

AreNotSame() 用于验证指定的两个对象变量是指向不同的对象,否则认为是错误

Assert.IsTrue() 测试指定的条件是否为True,如果为True,则测试通过;

Assert.IsFalse() 测试指定的条件是否为False,如果为False,则测试通过;

Assert.IsNull() 测试指定的对象是否为空引用,如果为空,则测试通过;

Assert.IsNotNull() 测试指定的对象是否为非空,如果不为空,则测试通过;

小提示

如果你本机安装了VS2010和一个更高版本的VS,这时你用VS2010编写单元测试并运行时就会发现所有的单元测试都是处于挂起的状态。网上很多人遇到了这种情况,所以个人建议使用更高版本的VS

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值