IntelliTest初探

来源:互联网 发布:时差7小时 知乎 编辑:程序博客网 时间:2024/06/06 06:08

简单来说IntelliTest是VS2015在其企业版中加入的一个新功能,这项新功能能够自动为代码创建UT case并运行,能极大的方便创建我们进行UT测试并且提高测试覆盖率。

IntelliTest是在IL 层面上(Microsoft Intermediate Language是将.NET代码转化为机器语言的一个中间语言的缩写),对代码的各种分支进行分析后,自动生成测试代码和边界值测试。这些生产的测试用例可以方便的保存下来以便以后执行,也可以弃之不用这样便不会在项目中产生UT project,想运行UT的时候可以重新生成自动的case来运行。

下面写一个小例子来作一下Demo,在其中介绍一下这个功能是如何使用的。


首先打开VS2015 企业版,新建一个C#项目(可以是任何类型的了)并将其命名为 然后打开Class.cs文件并输入

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace IntillTestDemo{    public class Calcualate    {        public int AddValue(int a)        {            int b = 0;            if(a < 0)            {                b = 1;            }            if(a == 0)            {                b = 0;            }            else            {                b = 2;            }            return b;        }    }}
这段代码的功能是根据a的值来出去b的值,这里很明显有一个错误,就是第二个if少用了else

然后点击右键在弹出菜单中选择Run IntilliTest 菜单


编译运行后就会出现以下结果


三个测试用例覆盖了其三个逻辑分支,从传入参数a和result列就可以明显的看到哪里出错了,用例2 和用例3传入的参数不同,但是result确实相同的。

如果想保存这些用例,那么选中所有的用例后点击保持保存按钮VS2015就会自动创建一个行的UT项目,并把这些用例保持在新建的项目中。并且在所见的UT项目中可以写代码来定制相关的测试。


这里有一个视频,如果英语好的话可以看看.

Visual Studio 工具箱: IntelliTest:一个最新的channel 9 视频。


1 0
原创粉丝点击