使用Visual Studio进行单元测试

原文:使用Visual Studio进行单元测试

一、使用Visual Studio进行单元测试的几个建议

1.先写单元测试(依我愚见,应该是接口先行,如果有的话) -> 测试失败 -> 以最小的改动(即编写实际代码)使测试通过(而在VS2012中已经不能通过现有项目直接生成测试项目了,我觉得这个功能还是应该保留,微软总是这副德行,强迫用户适应他们的产品,但是又不得不适应);

2.不因单元测试而追加功能(代码),即逻辑不受单元测试影响;

3.改变了代码的逻辑(增删改),应及时运行单元测试;

4.在测试方法声明Attribute —— TestCategory("分类或特征名");

5.在单元测试项目添加Fakes程序集分离外部依赖(如数据库访问,获取配置信息等);

6.初始化单元测试类中的成员等信息,可添加方法并声明Attribute[TestInitialize](方法需为public);

二、下面我们以VS2012为例,来看一下如何在Visual Studio中进行单元测试

1.首先,右键点击解决方案(Solution)弹出右键菜单(Context)

选择添加(Add) - 新项目(New Project), 在给出的模版中,选择 Visual C# - Test -Unit Test Project 如图。

2.得到模版如图

3.在测试方法中(此处为默认的TestMethod1,一般修改为 需要测试的方法名+Test )添加自己需要测试的代码

例如添加类XmlSerializationTest,代码如下:

C# 代码   复制


   [TestClass]
    public class XmlSerializationTest
    {
        private XmlSerialization serialization;
        [TestInitialize]
        public void InitTest()
        {
            this.serialization = new XmlSerialization(@"F:\\usermodel.seri");
        }

        [TestMethod]
        public void TestWriteXml()
        {
            UserModel user = new UserModel();
            bool flag = serialization.WriteXml<UserModel>(user);
            Assert.IsTrue(flag);
            Assert.IsFalse(serialization.WriteXml<UserModel>(null));
        }

        [TestMethod]
        public void TestReadXml()
        {
            UserModel user = new UserModel();
            user.LoginName = "aa";
            serialization.WriteXml<UserModel>(user);
            UserModel model = serialization.ReadXml<UserModel>();
            Assert.IsNotNull(model);
            Assert.AreEqual(user.LoginName, model.LoginName);

            //路径不存在,应返回null
            UserModel modelnull = serialization.ReadXml<UserModel>(@"F:\\notexists.seri");
            Assert.IsNull(modelnull);
        }
    }

4。测试代码写好后, 即可点击上方菜单Test-Run- AllTests等,来进行测试

测试完毕后。下方会产生结果列表。红色为未通过的TestCase。若想对其进行DEBUG,可右击红色的TestCase,选择Debug selected Tests。修改后,也可右击想要重新测试的TestCase,选择Run Selected Tests.

时间: 2024-10-05 12:25:22

使用Visual Studio进行单元测试的相关文章

【MVC 4】4.MVC 基本工具(Visual Studio 的单元测试、使用Moq)

 作者:[美]Adam Freeman      来源:<精通ASP.NET MVC 4> 3.Visual Studio 的单元测试 有很多.NET单元测试包,其中很多是开源和免费的.本文打算使用 Visual Studio 附带的内建单元测试支持,但其他一些.NET单元测试包也是可用的. 为了演示Visual Studio的单元测试支持,本例打算对示例项目添加一个 IDiscountHelper 接口的新实现. 在 Models 文件夹下新建类文件 MinimumDiscountHelpe

Visual Studio 2010 单元测试--运行测试并查看代码覆盖率

原文:Visual Studio 2010 单元测试--运行测试并查看代码覆盖率 运行测试并查看代码覆盖率对程序集中的代码运行测试时,可以通过收集代码覆盖率数据来查看正在测试的项目代码部分. 运行测试并查看代码覆盖率请注意“解决方案资源管理器”中的解决方案的名称.假定解决方案的名称为 CUnitTest. 此解决方案包含测试代码.1)在“解决方案资源管理器”的“解决方案项”下,双击运行配置文件 Local.testsettings.随即出现 “测试设置”对话框. 2)单击 “数据和诊断”,选中“

Visual Studio 2010 单元测试之一---普通单元测试

原文:Visual Studio 2010 单元测试之一---普通单元测试 本文以Visual Studio 2010为例,来介绍如何在Visual Studio里面进行单元测试. 首先来介绍普通单元测试,这是进行顺序测试.压力测试的基础.如果在Visual Studio 2010(2008)里面没有发现下图中的Test菜单,请用Visual Studio安装光盘进行安装,因为Visual Studio单元测试插件安装时可能不是默认选项. 测试之前,我们要准备一些测试代码.或者从下面的链接下载完

MVC 基本工具(Visual Studio 的单元测试、使用Moq)

3.Visual Studio 的单元测试 有很多.NET单元测试包,其中很多是开源和免费的.本文打算使用 Visual Studio 附带的内建单元测试支持,但其他一些.NET单元测试包也是可用的. 为了演示Visual Studio的单元测试支持,本例打算对示例项目添加一个 IDiscountHelper 接口的新实现. 在 Models 文件夹下新建类文件 MinimumDiscountHelper.cs : namespace EssentiaTools.Models { public

Visual Studio 2010 单元测试

Visual Studio 2010 单元测试共分七个部分: 普通单元测试.顺序单元测试.压力测试,Generic测试.数据库测试.UI界面测试和Web性能测试. Visual Studio 2010 单元测试之一---普通单元测试:http://blog.csdn.net/tjvictor/archive/2011/02/09/6175362.aspx Visual Studio 2010 单元测试之二---顺序单元测试:http://blog.csdn.net/tjvictor/archiv

[转]Visual Studio 2010单元测试(2)--运行测试并查看代码覆盖率

Visual Studio 2010 单元测试--运行测试并查看代码覆盖率 运行测试并查看代码覆盖率对程序集中的代码运行测试时,可以通过收集代码覆盖率数据来查看正在测试的项目代码部分. 运行测试并查看代码覆盖率请注意“解决方案资源管理器”中的解决方案的名称.假定解决方案的名称为 CUnitTest. 此解决方案包含测试代码.1)在“解决方案资源管理器”的“解决方案项”下,双击运行配置文件 Local.testsettings.随即出现 “测试设置”对话框. 2)单击 “数据和诊断”,选中“代码覆

[转]Visual Studio 2010单元测试(1)--运行和定义普通单元测试

Visual Studio 2010 运行和定义单元测试 在VS2010中,单元测试的功能很强大,使得建立单元测试和编写单元测试代码,以及管理和运行单元测试都变得简单起来,通过私有访问器可以对私有方法也能进行单元测试,并且支持数据驱动的单元测试. 1.建立单元测试项目 1.1.从被测试代码生成单元测试 1)实例:创建VC#模式下的控制台应用程序,工程名为CUnitTest 2)输入简单的加.减.乘.除函数代码,如下图所示 [csharp] view plaincopy namespace CUn

Visual Studio 单元测试之六---UI界面测试

原文:Visual Studio 单元测试之六---UI界面测试 UI界面测试其实就是录制操作路径(Mapping),然后按照路径还原操作顺序的一个过程.这个方法对于Winform和Webform都同样适用.下面以winform为例,来介绍如何进行录制. 1.新建一个Coded UI Test 2.然后选择录制. 3.屏幕右下方会出现UIMap. 4.打开一个Winform,使用“查看UI控件属性”这个功能可以查看所选控件的属性. 5.点击红色的开始录制,然后对被测的Winform程序进行一些操

Visual Studio 单元测试之二---顺序单元测试

原文:Visual Studio 单元测试之二---顺序单元测试 此文是上一篇博文:Visual Studio 单元测试之一---普通单元测试的后续篇章.如果读者对Visual Studio的单元测试不熟悉的话,请先参看上一篇.http://blog.csdn.net/tjvictor/archive/2011/02/09/6175362.aspx 本文会自动略去上篇中提到过的相关概念.方法.本文的例子可以使用下面的链接下载: http://download.csdn.net/source/30