VSTS2005
里面带了一个非常好的单元测试工具,据说很好,没用过。
MS
的产品和
VS
集成在一起,易用性是没得说。对于用惯了
NUnit
的人来说,这也不是一个非常充分的理由,非要从
NUnit
转换到
VSTS
的单元测试工具。本文讲述了如何将
NUnit
集成到
VS2005
中,算是给初学者或刚入门用
NUnit
的新手一个借鉴吧。
首先应说明的是,本文讲的“集成”,并不是以插件的形式将
NUnit
集成进
VS
。
NUnit
的
VS
插件也有,有一个免费的,有一个收费的,大家可以
Google
一下,具体名字记不清了。本文讲述的只是用
NUnit
来做单元测试和调试。你可以像其他工程一样,按
F5
来启动
NUnit
测试你的代码,可以在测试代码或功能实现代码中,按
F9
设置断点。
下面分步骤来介绍。
1.
安装
VS 2005
,本文用的是
VS2005
,
VS2008
也没有问题,如果是
VS2003
,你需要使用
NUnit
的
For 1.1
的版本。
2.
安装
NUnit
。最新版本为
2.4.8
. MSI
包和
ZIP
包无所谓,本位以
<NUNIT_ROOT>
来指代
NUnit
的安装目录。
3.
先介绍一点先导知识
(
1
)。
在【开始】
->
【运行】中,输入
CMD
打开命令窗口
(
2
)。进入到
NUNIT
的安装目录下的
bin
目录:
cd <NUNIT_ROOT>\bin
(
3
)。在命令行中输入:
nunit.exe /help
这就会弹出一个窗口,显示
nunit.exe
的参数信息(我一直觉得很奇怪,为什么
NUnit
会使用正斜杠‘
/
’作为参数的分隔符???)
(
4
)。在
NUNIT
的命令行参数中有两个需要注意的地方:
A.
nunit
的命令行格式为:
nunit [inputfile] [options]
在弹出的显示帮助的窗口中,会显示命令为
nunit-gui,
不要担心,以前是
nunit-gui.exe,
现在是
nunit.exe,
控制台下,不带
GUI
的
nunit
单元测试工具名为:
nunit-console.exe.
在
nunit
的命令行参数中,有一个
inputfile
的参数,他就是你单元测试代码的程序集名称,即,你在
CMD
中输入:
Nunit.exe someAssembly.dll
就可以用
nunit.exe
打开你的单元测试代码程序集了。
B
.在
nunit
的命令行参数中,还有一个
Options
,这个
Options
中有一个
/config=STR
参数,这是用来导入
NUnit
的项目的。可以用它来测试多个单元测试程序集组成的项目。
4.
测试单一的单元测试程序集。
代码就不重复写了,使用的示例为
<NUNIT_ROOT>\samples\csharp\money,
该项目现在还是
7.1
的(
VS2003
),用
VS2005
打开是需要转换一下。
将
money
中的
nunit.framework,
删掉,添加引用
<NUNIT_ROOT>\bin\nunit.framework.dll
编译
cs-money
项目。
现在进入了关键设定阶段,以前的铺垫都是为下面的设定做准备的,进行下面的设定后,就可以用
F5
进行调试了。
右键单击项目
->
【属性】
->
【调试】:
【启动操作】
->
【启动外部程序】:选择
nunit
程序。我的地址是
C:\Program Files\NUnit 2.4.8 \bin\nunit.exe
。将该地址换成你的地址。
【启动选项】
->
【工作目录】:选择你的单元测试程序集所在的目录。我的目录是:
C:\Program Files\NUnit 2.4.8 \samples\csharp\money\bin\Debug
【启动选项】
->
【命令行参数】:输入你单元测试程序集的名字。我的程序集的名字是:
cs-money.dll
。
保存该设置。
将单元测试程序设为启动工程。
OK
,一切就绪。按
F5
试试,工程起来了吧!
你可以再设个断点试试。
5.
测试多个单元测试程序集
接步骤
4.
先启动
nunit.exe
在
nunit
中新建一个工程,保存在
C:\Program Files\NUnit 2.4.8 \samples\csharp\money\bin\Debug
目录中。我新建的工程名为:
cs-money.nunit.
在
nunit
的菜单【
project
】
->
【
add assembly
】
,
添加你的单元测试程序集。本例中为
cs-money.dll
。当然可以添加多个单元测试程序集。
保存退出
nunit.
在
VS2005
中
右键单击项目
->
【属性】
->
【调试】:
将【启动选项】
->
【命令行参数】改为:
/config=cs-money.nunit
保存该设置。
按
F5
启动此单元测试。
~~The END~~
尹曙光