1 2 3 4

使用VS2013进行单元测试和查看代码覆盖率

之前一直不知道VS原来自带测试的相关组件,今天做软件测试的单元测试实验才知道VS这么强大。

实验要求如下:

 

 具体操作步骤如下:

新建一个C#类库项目,如下图:

 

 

 新建一个Cmp.cs,并将代码填入

 

 

 代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace UnitTest
{
    public class Cmp
    {
        public static int Largest(int[] list) 
        {
            if (list.Length == 0)
                throw new ArgumentException("Empty list");
            int index, max = Int32.MinValue;
            for (index = 0; index < list.Length; index++)
            {
                if (list[index] > max)
                    max = list[index];
            }
            return max;
        }
    }
}

右击解决方案管理器新建一个单元测试项目:

 

 

 右击引用将测试项目导入进去:

 

 

 

 

 

 在测试类的头部添加UnitTest的引用:

 

 

 测试代码如下:

using System;
using UnitTest;
using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace UnitTestProject1
{
    [TestClass]
    public class CmpTest
    {
        [TestMethod]
        public void TestMethod1()
        {
            int[] list = null;
            Assert.AreEqual(null, list);//对异常进行测试
            int[] list1 = new int[] { 0, 2, 5, 8, 6, 2 };//测试方法
            Assert.AreEqual(8, Cmp.Largest(list1));
        }
    }
}

点击测试资源管理器,在左侧就出现了,然后点击全部运行,就会运行你全部测试的内容:

 

 

 

 

 

 

 右击选中的测试方法,分析选中的测试的代码覆盖率:

 

 

 结果如下:

 

posted @ 2022-04-13 09:05  小陈的太阳  阅读(407)  评论(0编辑  收藏  举报