zoukankan      html  css  js  c++  java
  • 使用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.

  • 相关阅读:
    Idea启动多服务时的Dashboard展示
    通过maven动态配置spring boot配置文件
    辅域抢夺五大角色命令
    H3C交换机堆叠技术
    KMS激活专用:所有Windows版本的GVLK密钥对照表
    Windows Server 2012从Evaluation版转成正式版
    u盘装系统无法引导
    [调优]彻底解决RDP连接过程缓慢的问题
    [排错]无法初始化 vGPU“grid_p40-1q”的插件“/usr/lib64/vmware/plugin/libnvidia-vgx.so”
    Virtual Apps and Desktops 7 1912 LTSR集成DB迁移到SQL Server 2016 AlwaysOn生产环境
  • 原文地址:https://www.cnblogs.com/rr163/p/4065208.html
Copyright © 2011-2022 走看看