C#单元测试首测

题记:

写了这么久代码,从来没写过单元测试。刚开始只是看结果(黑盒测试),主观感受就是对与否。找不到问题所在。后来渐渐可以学会断点调试以及Debug单步调试。查找问题不会束手无策更加精准。再后来听说过自动化测试以及异常处理。原来还可以自己写个Tool和查看Log捕获问题。现在又学到了一个新东西单元测试,避免了编码过程中容易忽略的小问题。


单元测试(unit testing):

是指对软件中的最小可测试单元进行检查和验证。对于单元测试中单元的含义,一般来说,要根据实际情况去判定其具体含义。总的来说,单元就是人为规定的最小的被测功能模块。单元测试是在软件开发过程中要进行的最低级别的测试活动,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试。

创建单元测试:

移动“零”代码为例进行测试:

VS2013下可以利用扩展和新建添加Unit General Test插件,可直接添加单元测试工程。

VS2015集成了单元测试功能,可直接在所需要的Class上新建测试工程。

Example:

namespace MoveZero.Tests
{
    [TestClass()]
    public class MoveZeroTests
    {
        [TestMethod()]
        public void MoveZeroesTest()
        {
            Assert.Fail();
        }
    }
}

测试代码如下:
public void MoveZeroesTest()
        {
            MoveZero test = new MoveZero();
            int[] numsInA = { 0, 1, 0, 3, 12, 0 };
            int[] numsOutA = { 1, 3, 12, 0, 0, 0 };

            var numsIn = test.MoveZeroes(numsInA);
            var numsOut = new LinkedList<int>(numsOutA);

            Assert.AreEqual(numsIn, numsOut);
        }

Assert 下有多种验证函数,可以参考  MSDN
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值