用NUnit进行单元测试
转自:http://hi.baidu.com/chenying99/blog/item/b9b02423dab2de47935807b0.html
-------------------------------------------------------------------------------------------------------------
一、为什么要做单元测试
软件的生命是什么,是质量!而保证质量的唯一方法,就是测试。对自己编写的每一个功能类进行测试是一种负责的态度,尤其在团队合作开发大型软件的时候更是如此。在时下流行的测试驱动开发(TDD)和敏捷开发中,甚至要求“测试先行”,在编写代码之前就首先完成测试用例,根据测试用例再来编写代码,把你的需求用测试给描述出来。
二、为什么要用测试工具进行单元测试
利用测试工具来进行测试,需要编写测试代码,似乎远不如直接拉一个界面进行测试来得方便和熟练。我的理解是这样的:
⑴、测试代码易读性更高。编写测试代码的时候,很容易为代码加上注释,而拉界面测试,除非为每一个文本框都加上标签说明,否则其他测试人员无法了解到某个文本框的作用。
⑵、编写测试代码效率更高。出于第一条原因,在熟练掌握的前提下,编写测试代码所需要的时间更短。在一个复杂系统里面,需要做的单元测试数量会相当的多,编写代码测试会节省大量的时间。
⑶、测试代码可移植。这一条可能是最重要的一个原因,我们编写的测试代码,不论是控制台环境还是winform,抑或是webform,都可以直接使用而无需任何的修改,这一点是直接拉界面所无法比的。
三、如何使用NUnit进行单元测试
⑴、NUnit界面
单元测试的工具很多,在.NET里目前最著名的工具恐怕就是NUnit了。这个工具可以到http://www.nunit.org/去下载。
下载安装工具后,进入安装目录下的bin目录,可以看到NUnit-gui.exe,这个文件就是NUnit的图形化工具了,在具体使用它之前,首先简单介绍一下它的界面。
NUnit运行的第一种状态
NUnit运行的第二种状态
这个界面的左边是测试任务列表,右边上部是一个进度条,它的颜色可能会有三种情况:绿色表示所有的测试都通过;红色表示有测试没有通过;黄色表示有部分测试被用户跳过,但已经测试的部分没有错误。
⑵、编写测试类
在编写测试类之前,必须为项目添加指向nunit.framework.dll的引用,否则无法找到命名空间。步骤为:在资源浏览器中右击引用,然后选择添加引用NUnit.framework组件,在添加引用对话框中按选择和确认按钮。
我们用一个简单的例子来说明测试类基本的编写方法。
为工程加一个NumbersFixture类。这里是这个例子的代码。
1 using System;
2 using NUnit.Framework;
3
4 namespace NUnitQuickStart
5 {
6 [TestFixture]
7 public class NumersFixture
8 {
9 [Test]
10 public void AddTwoNumbers()
11 {
12 int a=1;
13 int b=2;
14 int sum=a+b;
15 Assert.AreEqual(sum,3);
16 }
17 }
18 }
第二行代码,为测试类添加命名空间。第六行代码,用[TestFixture]标记测试类,第九行代码,用[Test]标记测试方法,只有用这两个记号标记的类和方法才能显示在NUnit的任务列表中。第十五行,用Assert.AreEqual方法比较待测试值与预期值是否相符。
还需要注意的是,测试类必须有一个默认的构造函数,测试方法必须是无参数无返回值的,否则不会出现在测试列表中。
这个例子虽然简单,但已经是一个完整的单元测试类了,现在就可以开始进行单元测试了。
⑶、启动测试
在项目上右键,选择属性,切换到调试选项卡,在启动项目一栏中选择外部项目启动,点击后面的浏览按钮找到NUnit-gui.exe的路径。然后编译运行项目。
项目运行后会自动打开NUnit图形界面,如果是第一次开始NUnit-Gui,它打开时可能没有加载测试,这时需要在菜单栏中打开我们的项目。当测试类被加载后,就可以点击右上方的运行按钮进行测试了,如果进度条呈现绿色,那么恭喜你,你的单元测试通过了。
以上介绍的只是最基本的单元测试,如果想进一步学习,可以参考http://www.cnblogs.com/confach/archive/2005/06/20/177817.html
分享到:
相关推荐
本资源“winform 使用NUNIT进行单元测试源码”提供了一种将NUnit集成到WinForm项目中进行单元测试的方法。以下是对这个主题的详细说明: 1. **NUnit框架**:NUnit是一个功能强大的测试框架,支持.NET Framework、...
本文将详细介绍如何在C#项目中利用NUnit进行单元测试,特别是针对数据库操作的事务处理。 首先,为了在C#中使用NUnit支持数据库单元测试,你需要在项目中引入`System.EnterpriseServices`组件,这是为了利用事务...
这个“NUnit单元测试_c#版pdf”似乎是一个扫描版的教程,对于学习如何在C#项目中实施单元测试非常有帮助。 单元测试是一种软件开发实践,它允许程序员对代码中的最小可测试单元进行验证,通常是一个函数或方法。...
下面将详细解释如何使用NUnit进行单元测试,以"HelloWorld"项目为例。 1. **创建项目和类**: 首先,创建一个简单的控制台应用程序,如"HelloWorld"。在这个项目中,我们定义一个名为`Myclass`的类,包含两个方法`...
**NUnit单元测试工具** NUnit是一款开源的、广泛用于.NET框架的单元测试工具,它为.NET开发者提供了方便、强大的测试框架,以确保代码的质量和稳定性。NUnit不仅支持.NET Framework,还支持.NET Core和.NET ...
【NUnit单元测试详解】 单元测试是软件开发过程中的一个重要环节,主要目的是验证代码的各个独立部分(单元)是否按照预期正确工作。NUnit是一款流行的、开源的.NET框架,用于编写和执行单元测试。它提供了丰富的...
【Nunit单元测试】 NUnit 是一个开源的、基于.NET框架的单元测试框架,它为.NET程序员提供了构建和执行单元测试的强大工具。NUnit 支持多种.NET版本,包括.NET Framework 2.0,这也是“Nunit-2.4.8-net-2.0.msi”...
【Nunit单元测试使用方法】 NUnit 是一个广泛使用的开源单元测试框架,专门为.NET平台设计。它是xUnit家族的一员,源自JUnit(Java)并受到CPPUnit(C++)的启发。NUnit允许开发者编写和执行单元测试,以确保代码的...
本书的核心是介绍如何借助开源的NUnit框架进行高效的单元测试,同时,由于单元测试的原理和技术在很大程度上是跨语言的,因此书中讲述的内容对于使用其他编程语言和测试框架的开发者同样具有指导意义。 NUnit是.NET...
本书详细介绍了如何使用NUnit进行单元测试,涵盖了以下核心知识点: 1. **NUnit基本概念**:解释了测试的基本原理,包括测试驱动开发(TDD)和行为驱动开发(BDD)的工作流程,以及NUnit在这些过程中的作用。 2. *...
本实例将深入探讨如何利用NUnit进行单元测试,以及它的一些核心特性和用法。 首先,要开始使用NUnit,你需要安装NUnit框架和相应的测试运行器。通常,这可以通过NuGet包管理器在Visual Studio中完成。一旦安装,你...
在这个小例子中,我们将深入理解如何使用NUnit进行单元测试,这对于任何软件开发过程都是至关重要的,因为它确保了代码的质量和可靠性。 **安装NUnit** 在开始编写NUnit测试之前,首先需要安装NUnit 2.6.2版本。这...
微软的VS开发工具为我们提供了强大的单元测试环境,在VS当中可以直接对类库项目进行测试,极大的方便了程序员的自我纠错能力。除了官方的解决方案之外,还有一种非常好的免费开源的第三方测试工具,那就是NUnit。它...
很详细的Nunit单元测试讲解。基于C# + Nunit,单元测试可以有效降低调试,改善代码结构,高级开发必备。
### 使用NUnit进行单元测试 1. **安装NUnit**:通常通过NuGet包管理器或者直接下载NUnit的NuGet包来引入到项目中。 2. **创建测试类**:在项目中创建一个新的类,标记为`[TestFixture]`,表示这是一个测试类。 3. *...
### 使用NUnit进行单元测试 #### 安装与引用 首先,你需要通过NuGet包管理器或.NET CLI安装NUnit和NUnit3TestAdapter。NUnit3TestAdapter是Visual Studio测试探索器所需的适配器,用于发现和运行NUnit测试。 ```...
在“Nunit单元测试2.rar”这个压缩包中,可能包含了有关如何使用 NUnit 进行单元测试的教程、示例代码或者项目文件。这些资源可以帮助你深入理解和实践如何在 C# 和 .NET 项目中有效地利用 NUnit 进行单元测试,提高...