nunit.framework 之 nuint 测试开发使用笔记

来源:互联网 发布:mac写脚本用什么软件 编辑:程序博客网 时间:2024/05/20 05:07
最近在写一个基于ASP.NET C#分层模式的WEB网站,并打算初次引入TDD的思想进行开发, 即  测试开发 ,在WEB页面没有实际内容制作出来之前,要程序与支持类库代码的正确性,就需要使用 nuint ,当然它是首选。

TDD的优点这个不多说了,反正让你每写完一个小段单元,就可以进行代码应用测试,而不是要等你全部完成了,制作一大堆N多的WEB页面时,通过浏览器一次次调试修改,这样的工作量容易引起连锁反应和混乱。

准备:
1、下载 NUnit 2.6.2 ,我下载的时候版本是这个了,MSI文件。
2、安装,安装之后会在安装目录中生成 nunit.framework.dll 这个文件, 在VS解决方案中新建立一全类库用于测试,如本人的NHTEST,把nunit.framework.dll引用到类库中。

nunit.framework 之 nuint  测试开发使用笔记 - 榕树下 - 你的?,我的?

按照图片项目中我的newsService类中写了一个查询的方法

public static class NewsService
    {
        public static IList<news> getAll() {
            ISession session = NHelper.GetCurrentSession();
            IQuery iq = session.CreateQuery("from news");
            return iq.List<news>();
        }
    }


到这一步的时候,我想进行一次查询测试,以达到的目的是   检查配置文件和数据库连接等书写的正确 或 查询数据库情况 ,

建立一个专门用于测试的类库NHTest, 新建立 一个 newsTest.cs 测试类,输入测试代码 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using NUnit.Framework;
using NHMODEL;
using NHMODEL.Entities;
using NHDAL;

namespace NHTest
{
    [TestFixture]
    public class newsTest
    {
        [Test]
        public void getCount() {
            IList<news> newsList = NewsService.getAll();
            Assert.AreEqual(0, newsList.Count);
        }
    }
}


红色部分是测试必须的参数标识,告诉nuint的,详细参考这方面资料,绿色是一个比较,0和newsList.Count 是否会相等,如果相等测试结果为绿色,如果不相等测试结果会是红色。

生成VS项目,打开程序nuint  
nunit.framework 之 nuint  测试开发使用笔记 - 榕树下 - 你的?,我的?

在nuint界面上的file  open file中打开编辑生成的 NHTest.dll路径。

nunit.framework 之 nuint  测试开发使用笔记 - 榕树下 - 你的?,我的?

即可看到相关的测试信息,点击RUN即可进行测试并查看结果,如下图。

nunit.framework 之 nuint  测试开发使用笔记 - 榕树下 - 你的?,我的?

目的已经达到, 数据库中记录总数是5636,与测试逻辑中的参考数字 0 不相等,故显示红色。

能够脱离浏览器并不制作WEB页面去测试程序,在每一小部分完成的时候就测试,我认为这就是TDD的美好,当你的项目变成多人分工合作开发的时候,它也许能更好的帮助于你。

附小清新女生图片一张,哈哈

nunit.framework 之 nuint  测试开发使用笔记 - 榕树下 - 你的?,我的?
 
 


 
 






原创粉丝点击