zoukankan      html  css  js  c++  java
  • VS2013单元测试

    原文地址:http://www.luacloud.com/2014/vs2013-unit-test-generator.html

    下载地址:http://visualstudiogallery.msdn.microsoft.com/45208924-e7b0-45df-8cff-165b505a38d7/view/Discussions/1 

    打开VS2013,选择工具-扩展和更新,搜索并安装Unit Test Generator,如下图。

    Install Unit Test Generator

    Install Unit Test Generator

    如果不安装这货是不会出现Generate Unit Test的选项的。

    于是,“举个栗子”;

    创建一个控制台项目MyUnitTest。

    然后创建一个类:TestFunction.cs,添加如下代码:

    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace MyUnitTest
    {
        public class TestFunction
        {
            /// <summary>
            /// 转换为Int
            /// </summary>
            /// <param name="value">要转换的文本</param>
            /// <returns>转换后的值</returns>
            public int ToInt(string value)
            {
                int result = 0;
                if (!string.IsNullOrWhiteSpace(value))
                {
                    if (!int.TryParse(value, out result))
                    {
                        throw new Exception("文本内容无法转换为Int类型。");
                    }
                }
                else
                {
                    throw new Exception("文本不能为空。");
                }
                return result;
            }
        }
    }

    然后在该页面ToInt方法体内右键后选择Generate Unit Test,弹出后直接选择OK,会自动生成测试项目。将代码进行如下修改:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using MyUnitTest;
    using Microsoft.VisualStudio.TestTools.UnitTesting;
    namespace MyUnitTest.Tests
    {
        [TestClass()]
        public class TestFunctionTests
        {
            [TestMethod()]
            public void ToIntTest()
            {
                TestFunction target = new TestFunction();
                string value = "5";
                int expected = 5;//预期的值
                int actual;//实际的值
                actual = target.ToInt(value);
                Assert.AreEqual(expected, actual);
                value = "5.5";
                expected = 5;
                actual = target.ToInt(value);
                Assert.AreEqual(expected, actual);
            }
        }
    }

    然后在ToIntTest方法上点右键选择运行测试,结果肯定引发了异常,这个异常是我们上面自己写的。如果去掉红框中的代码再运行,那么结果就是通过。

    exception

    exception

  • 相关阅读:
    js基础 数组reduce
    js基础 数组every some
    js基础 数组forEach
    js基础 数组排序
    js基础 数组findIndex
    nodejs+koa2微信app支付,小程序支付
    Iview-datePicker获取选中的日期,如果没有选,提示错误,选了,错误隐藏
    mongoose+koa2 按照_id更新多条数据,删除数组中的字段,然后添加新的字段,$pull和$or结合使用
    json数组去除重复的值
    mongoose根据_id更新,且如果数组中没有元素就添加
  • 原文地址:https://www.cnblogs.com/niaowo/p/3669133.html
Copyright © 2011-2022 走看看