对于软件的安装不用多记,网上很多,但是大家说得比较简单要么比较复杂,对于刚介入的人来说,不知道代码应该写在哪里,该怎么写。下面参考http://docs.ncover.com/how-to/continuous-integration/cruisecontrol-net/的,算是“较”为详细。下面是配置NCover和CI服务器的集成部分,也是比较繁琐的环节。下面记录一下我的方法:
第一步:环境清单
软件版本列表如下:
NCover: NCover-3.1.2.5168(被好心人破解的)
NUnit: NUnit-2.5.9.10348(没什么好说的)
CI服务器:CruiseControl.NET-1.5.7256.1-Setup(没什么好说的)
CCTray: CruiseControl.NET-CCTray-1.5.7256.1-Setup(没什么好说的)
SVN: VisualSVN-Server-2.1.5(这个说下,一开始用VSS,但是我的生产环境是在SVN下,用它方便)
操作系统: Windows Server2003 SP2(WindowsServer2003-KB914961-SP2-x86-CHS.exe)
.Net环境: dotNetFx35setup.exe
注:后面没有加粗的地方是因为我的系统一开始是SP1,.net环境时2.0,我的项目环境现在定在3.5上,用2.0编译有些问题,懒得解决,直接装了3.5的环境。如果你参考我的安装方法,不要被这里迷惑。
第二步:安装
安装的方法,在google上很多,而且都比较详细,直接双击,一路确定,最后完成。
第三步:规划文件夹目录
为什么要规划目录?因为在配置CruiseControl.Net时,会出现很多让你输入的文件夹目录或输出的文件,这个文件夹或者目录如果不统一把他们安排到一个指定的地方,默认会放到“%Cruise安装目录%/CruiseControl.NET/server”目录下,这个目录会被感染,变得乱七八糟。所以,我建议自己“约定”一下自己的目录(下面图1是我自己的目录):
图1
TempReports:用来存储NUnit处理后的结果和NCover生成的结果文件
Workplaces: CruiseControl的工作目录--我觉得Eclipse的工作区的名字很不错
CCNetStates:用来保存CruiseControl的状态信息
HistoryVersions:发布的历史版本,可以打Tag的版本
Artifacts:日志、统计等信息
SrcCodes:从SVN上下载的源代码
注意:CCNetStates、HistoryVersions,在ccnet.config中配置后不会被创建,需要手动创建,也可以用脚本搞定。
第四步:配置ccnet.config文件,文件如下:
ccnet.config文件网上有很多说明,这里不同的是使用了2个msbuild任务,前一个msbuild用于编译代码,有一个msbuild用于生成nunit和ncover的处理和报告文件,两个msbuild唯一不同的是projectfile处,前者是C#的解决方案;后面一个msbuild的projectfile是单独的一个MSBuild.proj文件,该文件要手动创建。创建的位置和testCI.sln放在同一目录下:
图2
文件内容如下:
说明:上面的MSBuild中的target,可以在ccnet.config中北msbuild调用,上面指定<targets/>中的两个target就是来自这个文件
通过上面的几个步骤完成了NCover、NUnit和CruiseControl.net的集成,为了让NCover集合后的文件能够在Dashboard中显示出来:
最后:参考http://docs.ncover.com/how-to/continuous-integration/cruisecontrol-net/
1)移动文件
把"[ncover installation directory]/CC.Net/NCoverReporting30.xsl" 拷贝到"[cc.net installation directory]/webdashboard/xsl/" 文件夹下.
把"[ncover installation directory]/CC.Net/g.png" 拷贝到"[cc.net installation directory]/webdashboard/images/" 文件夹下.
把"[ncover installation directory]/CC.Net/r.png" 拷贝到"[cc.net installation directory]/webdashboard/images/" 文件夹下.
把"[ncover installation directory]/CC.Net/y.png" 拷贝到"[cc.net installation directory]/webdashboard/images/" 文件夹下.
2)配置dashbord.config文件:
完毕~~~
结果如下: