• 体验VS2017的Live Unit Testing


    相对于传统的Unit Test,VS2017 带来了一个新的功能,叫Live Unit Testing,从字面意思理解就是实时单元测试,在实际的使用中,这个功能就是可以在编写代码的时候进行实时的background的单元测试.

    在体验之前,有几点注意事项是需要了解的:

    1.目前 live unit tesing仅仅支持 C#和VB的传统.net版本,不支持.net core,当然,我觉得也不支持其他的语言,这点是暂时让我遗憾的,因为从体验的结果来看,如果能支持其他的语言,无疑是非常非常吸引人的功能.

    2.可以和第三方的测试框架结合,不仅仅是MSTEST,我就是用的NUnit,当然XUnit也没有问题.

    要想启用测试,本身来讲是非常简单的.

    只需要在Test 菜单 启用Live Unit Testing就可以了.

    如果你使用NUnit的话,需要安装Nunit test adpater Install-Package NUnite3TestAdapter

    测试的过程就比较简单了.

    我们可以按照我们的需要,写一些需要测试的内容,然后创建TestMethod,就可以进行测试,与传统测试不同的是,所有的单元测试,不需要手工触发,可以自动进行.

    public class Item
    {
    public string Name { get; set; }
    public decimal Price { get; set; }
    }

    public class ShoppingCart
    {
    public int UserID { get; set; }
    public string UserName { get; set; }

    public DateTime LastUpdated { get; set; }

    public List<Item> Items { get; set; }

    public decimal Total { get { return Items.Sum(i => i.Price); } }

    }

    然后我们可以创建一个测试的类,并编写测试的方法.

    在我们的编写过程中,启动了Live Unit Testing的VS2017 会帮我们进行持续的测试,并根据测试的结果,标注在每一行中.

    同样,针对已经完成了单元测试的代码,也会进行实时的标记,如下图所示:

     这样,我们可以很清楚的看到整个代码的测试覆盖情况.

    而且在整个编码过程中,我们完全不需要停止测试的过程,只要我们进行编码,随时都会进行测试,并显示代码测试的覆盖情况,而且会立即显示代码的错误.

    例如:

    我们保存以后,马上就有提示,然后紧接着会进行单元测试.然后实时的显示测试失败的情况,如下图:

    而且这个错误会同时显示在我们的TestMethod和我们的代码编写中,可以想见,这样的方式,将会极大的提升我们编写代码的效率.

    但是这样也带来了一个问题,在我们写代码的过程中,可能不希望所有的单元测试都是这样实时的进行的,这个时候,我们可以简单的进行单个测试文件的排除:

    只要在Explorer里面,选择不希望包含的类,直接在右键菜单里面排除就行了.

  • 相关阅读:
    postman的使用方法详解!最全面的教程
    免费使用的加速器
    Windows添加启动项的两种方法
    Python版本微信跳一跳,软件配置
    Inno Setup教程
    Go开发环境安装配置
    Linux下安装Phantomjs
    Python的url解析库--urlparse
    Python处理HTML转义字符
    Python使用base64编码的问题
  • 原文地址:https://www.cnblogs.com/fireinwind/p/6689732.html
Copyright © 2020-2023  润新知