`
coconut_zhang
  • 浏览: 541902 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

图解在VS2005利用NUnit进行测试

阅读更多

一、介绍
NUnit是一款用于在.net环境进行单元测试的工具,它的官方网站是:http://www.nunit.org,需要了解历史和下载最新版本的朋友可以去官方网站下载,目前最新版本是2.4.6了,提供msi安装文件和压缩包形式下载,并且支持.net1.1和.net2.0。

二、开发

NUnit的运行界面
利用NUnit进行开发之前,需要先添加类库引用,如下图:

添加对NUnit.framework.dll的引用

然后编写代码


using System;
using System.Collections.Generic;
using System.Text;

namespace NUnitDemo
{
    /// <summary>
    /// 说明:这是一个类,用于测试。
    /// </summary>
    public class Person
    {
        private int personId;
        private string name;
        private DateTime birthday;
        /// <summary>
        /// 生日
        /// </summary>
        public DateTime Birthday
        {
            get { return birthday; }
            set { birthday = value; }
        }
   
        /// <summary>
        /// 姓名
        /// </summary>
        public string Name
        {
            get { return name; }
            set { name = value; }
        }
   
        /// <summary>
        /// 编号
        /// </summary>
        public int PersonId
        {
            get { return personId; }
            set { personId = value; }
        }
   
    }
}用于测试的类:
using System;
using System.Collections.Generic;
using System.Text;
using NUnit.Framework;

namespace NUnitDemo
{
    [TestFixture]
    /// <summary>
    /// 说明:这是一个测试类,用来展示NUnit的用法。
    /// </summary>
    public class Test
    {
        Person p = new Person();
        public Test()
        {
        }
        [Test]
        public void CheckPersonId()
        {
            Assert.AreEqual(p.PersonId, 0);//检查对值类型数据未明确赋值之前是不是为0
        }
        [Test]
        public void CheckPersonNameNull()
        {
            Assert.AreEqual(p.Name, null);//检查对字符串类型数据未明确赋值之前是不是为null
        }
        [Test]
        public void CheckPeronBirthday()
        {
            Assert.AreEqual(p.Birthday, DateTime.MinValue);//检查对日期时间类型数据未明确赋值之前是不是为DateTime.MinValue
        }

        [Test]
        public void CheckSum()
        {
            int i = 2, j = 6;
            int num = 2 + 6;
            Assert.AreEqual(num, 9);
        }
        [Test]
        [Ignore("忽略的原因")]
        public void CheckClassType()
        {
            Assert.IsInstanceOfType(typeof(object), p);
        }
    }
}
第一次使用NUnit的人可能对上面的代码有些地方感到陌生,因为NUnit通过反射来获取程序中的相关信息,从而得知哪些类中的哪些方法需要进行测试,所以有必要对NUnit的一些常用属性进行了解:
TestFixture属性:用来标识类,表示这个可能包含有用于测试的方法。
Test属性:用来标识方法,表示这个方法需要进行测试(前提是该方法所在的类是可以测试的)。
SetUp属性:用来标识方法,在开始所有测试之前执行,用来在测试前初始化一些资源,比如初始化类。
TearDown属性:用来标识方法,在所有测试完成之后执行,用来释放一些资源。
Ignore属性:用来标识方法,指示这个方法由于某些原因暂时不需要测试(比如没有完成相关代码)。

分享到:
评论

相关推荐

    Nunit单元测试工具

    安装NUnit后,开发者可以在VS的测试探索器中看到和运行NUnit测试,享受IDE提供的便捷测试管理功能。VS版本的不同可能会影响集成方式,但大部分版本都可以通过NuGet包管理器安装NUnit和适配器,使得VS能够识别并执行...

    Nunit测试的一个小例子

    在这个小例子中,我们将深入理解如何使用NUnit进行单元测试,这对于任何软件开发过程都是至关重要的,因为它确保了代码的质量和可靠性。 **安装NUnit** 在开始编写NUnit测试之前,首先需要安装NUnit 2.6.2版本。这...

    Nunit单元测试报告

    在测试方法内部,实例化`Myclass`,调用要测试的方法,并使用`Assert.AreEqual`来验证返回值是否与预期相符。 4. **运行程序并生成可执行文件**: 编译项目,生成"HelloWorld.exe"可执行文件。这个文件包含了我们...

    NUnit单元测试实例

    本实例将深入探讨如何利用NUnit进行单元测试,以及它的一些核心特性和用法。 首先,要开始使用NUnit,你需要安装NUnit框架和相应的测试运行器。通常,这可以通过NuGet包管理器在Visual Studio中完成。一旦安装,你...

    单元测试—NUnit测试

    微软的VS开发工具为我们提供了强大的单元测试环境,在VS当中可以直接对类库项目进行测试,极大的方便了程序员的自我纠错能力。除了官方的解决方案之外,还有一种非常好的免费开源的第三方测试工具,那就是NUnit。它...

    winform NUNIT的测试初始化和清理

    在WinForm应用中,我们可能需要在测试开始前设置特定的UI状态或者初始化某些依赖对象,这就需要用到NUnit的`SetUp`方法。`SetUp`是在每个测试方法执行前调用的,用于准备测试环境。例如,你可以在这里打开WinForm...

    winform 使用NUNIT进行单元测试源码

    总之,这个资源为WinForm开发者提供了一个使用NUnit进行单元测试的实际应用案例,帮助他们了解如何在传统的桌面应用中引入现代测试实践,提升代码质量和开发效率。通过深入研究并实践这个源码,开发者可以增强自己的...

    软件测试Nunit单元测试

    在测试数据库相关的代码时,通常需要模拟数据库环境,避免实际操作数据库。这可以通过使用虚方法、依赖注入或专门的测试库如Moq和NSubstitute来实现。测试完成后,确保清理任何临时数据或状态,以保持测试环境的一致...

    Nunit单元测试,pdf讲解使用说明,安装文件

    VS2005虽然较老,但仍支持插件扩展,可以通过安装NUnit的VS插件,使得在IDE内部直接运行和查看测试结果变得简单。 总的来说,NUnit为C#开发者提供了一套强大的单元测试工具,配合详细的PDF教程,可以帮助他们构建高...

    NUnit测试代码报告

    在NUnit中,可以使用各种断言方法来进行边界值测试。例如,`Assert.AreEqual(expected, actual)`用于验证预期结果和实际结果是否相等,而`Assert.Throws(Action action)`则可以用来检测是否在执行某个操作时抛出了...

    NUnit单元测试_c#版pdf

    NUnit是.NET开发人员广泛使用的单元测试框架之一,尤其在C#编程中,它为开发者提供了强大而灵活的工具来验证代码的各个独立组件。这个“NUnit单元测试_c#版pdf”似乎是一个扫描版的教程,对于学习如何在C#项目中实施...

    单元测试之道C#版——使用NUnit(中文版)

    本书的核心是介绍如何借助开源的NUnit框架进行高效的单元测试,同时,由于单元测试的原理和技术在很大程度上是跨语言的,因此书中讲述的内容对于使用其他编程语言和测试框架的开发者同样具有指导意义。 NUnit是.NET...

    NUnit单元测试工具,测试框架Moq

    4. **测试分组**:`[TestFixture]`用于组织相关的测试,`[Category]`可以对测试进行分类。 5. **异常测试**:`Assert.Throws`方法可检查代码是否抛出预期的异常。 **Moq** 是一个轻量级且易用的Mock对象框架,它...

    在.NET环境中使用单元测试工具NUnit

    在.NET环境中,单元测试工具NUnit是一个不可或缺的开发辅助工具,它主要用于确保代码的质量和可靠性。单元测试是一种软件开发...无论是在个人项目还是大型团队开发中,NUnit都是.NET开发者进行单元测试的首选工具之一。

    单元测试工具NUnit-2.5

    VS2008的集成还包括了生成和运行测试的功能,以及在测试失败时的调试支持,这对于快速定位问题和修复代码非常有帮助。 NUnit还支持参数化测试,这是一种强大的功能,允许通过不同的输入数据多次执行同一个测试方法...

    利用NunitFramework进行普通类库和涉及数据库操作的类库的单元测试(源代码)

    总结,利用NUnit Framework进行单元测试可以有效地提高代码质量和可靠性,无论是对普通类库还是涉及数据库操作的类库。通过创建独立的测试用例、模拟外部依赖以及执行断言,我们可以确保代码在各种情况下都能正确...

Global site tag (gtag.js) - Google Analytics