Asp.net单元测试及查看代码覆盖率详细示例
作者:网络转载 发布时间:[ 2014/12/22 16:11:00 ] 推荐标签:单元测试 软件测试 ASP
三,开始测试方法LogonInfo
在开始测试前,我们需要改写一下GetMaxTest()方法
/// <summary>
///GetMax 的测试
///</summary>
[TestMethod()]
public void GetMaxTest()
{
LogonInfo target = new LogonInfo();
int[] aryNum = new int[] { 1, 3, 4 }; // 这里为aryNum赋一个初始值
int expected = 4; // 这里设置是GetMax方法预期值,从上面的初始值及GetMax方法的本意我们知道预期值应该是4
int actual;
actual = target.GetMax(aryNum);
Assert.AreEqual(expected, actual); //这里判断expected与actual是否相等,如果相等,则判定测试成功,反之失败
//Assert.Inconclusive("验证此测试方法的正确性。");
}
注意Assert.AreEqual(expected, actual)这一行代码,Assert.AreEqua是测试expected和actual是不是相等,相等认为成功,不相等认为失败。同样用来判定的方法共有以下几个:
Assert.AreEqual() 测试指定的值是否相等,如果相等,则测试通过;
Assert.Inconclusive() 表示一个未验证的测试;
Assert.IsTrue() 测试指定的条件是否为True,如果为True,则测试通过;
Assert.IsFalse() 测试指定的条件是否为False,如果为False,则测试通过;
Assert.IsNull() 测试指定的对象是否为空引用,如果为空,则测试通过;
Assert.IsNotNull() 测试指定的对象是否为非空,如果不为空,则测试通过;
代码改写完成后,我们打开vs菜单上的"测试"->"窗口"->"测试视图",会出现测试视图窗口,如下图:
在测试视图窗口中列出了所有我们创建的测试方法,鼠标移动到GetMaxTest方法上面,在右键中选择"运行选定内容",测试开始啦。测试的结果会显示在"测试结果"的窗口中,如下图:
从上面的结果我们可以知道方法测试是否通过了。然后我们也可以改变测试方法GetMaxTest()中的初始值与预期值,再次运行测试方法查看测试结果。
代码覆盖率
代码覆盖率指的是在运行测试案例时,案例运行时所执行的代码范围程度。代码覆盖率越高,说明案例越好。被测代码中每个可执行语句都被执行到了,测试出来的结果也是越稳定。比如,在单元测试中,代码覆盖率必须达到80%或90%,这样,要求我们好好编写测试案例了。
那么要如何查看代码的覆盖率呢?我们双击文件夹Solution Items下的LocalTestRun.testrunconfig文件。在弹出来的窗口中来设置要查看代码覆盖率的方法,如下图:
运行测试方法后,我们打开vs菜单上的"测试"->"窗口"->"代码覆盖率结果"窗口,在窗口中双击要查看代码覆盖率的方法,如下图:
覆盖率的结果如下图:
其中橙色的代码表示部分执行了,红色代码表示没有执行,蓝色代码表示全部执行了。当然,这个颜色可以在"工具"->"选项"->"字体和颜色"中自定义。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11