Continuous integration .NET manual

xiaoxiao2021-03-06  86

Continuous integration .NET manual

First, concept

Martin Fowler's article: Continent Integration Chinese Translation: Continuous Integration

Second, tools

Traditional tools: Visualstudio.Net, VisualsourceSafe, Rational Clearcase

Auto Compilation Tools: Nant, NantContrib

Return test tool: NUnit

Code Check Tool: FXCOP

Continuous integration tool: cruiseControl.net

Third, step

CruiseControl.NET Monitor the change of the remote version control system CRUISEControl.net call compilation tool to compile (NANT or VISUALSTUDIO.NET) After successfully call NUNIT to return to the test compilation After successfully call FXCOP to compile the results, Test results, the code check results are sent to the developer, the supervisor manager, and released to the website

Illustration:

All this is automatically carried out according to the prepared script

Fourth, the implementation example

Currently we use Clearcase

The master software is CruiseControl.net, its script file is CCNET.CONFIG

Configure a remote version control system

-

<

SourceControl Type

= "

Clearcase

">

<

ViewPath

>

D: / cc_view / use_tech_dept / platage development / 2 Implementation /NuCleus1.0/source

ViewPath

>

<

Uselabel

>

False

Uselabel

>

SourceControl

>

Configure compilation tool

-

<

Build Type

= "

Nant

">

<

EXECUTABLE

>

F: /software/agile.net/nant-0.85- Nightly/bin/nant.exe

EXECUTABLE

>

<

BaseDirectory

>

F: /software/agile.net/nant-0.85- nightly/bin

BaseDirectory

>

<

Buildfile

>

Y: /nucleus.build

Buildfile

>

<

Logger

>

Nant.core.xmllogger

Logger

>

-

<

TargetList

>

<

Target

>

build

Target

>

<

Target

>

FXCOP

Target

>

TargetList

>

build

>

Configuring test case

-

<

Tasks

>

-

<

NUnit

>

<

Path

>

D: / program files / NUnit 2.2 / bin / NUnit-console.exe

Path

>

-

<

askEMBLIES

>

<

askSEMBLY

>

Y: /newpdObject/testnewpdobject/bin/debug/testnewpdObject.exe

askSEMBLY

>

askEMBLIES

>

NUnit

>

Tasks

>

Configuration report

<

Publishers

>

-

<

XMLLogger

>

<

logdir

>

../web/log

logdir

>

-

<

Mergefiles

>

<

File

>

Y: /nucleus.xml

File

>

Mergefiles

>

XMLLogger

>

-

<

Email from

= "

Ajaxchelsea@163.com

"

Mailhost

= "

163.com

"

Includedetails

= "

True

">

<

Projecturl

> http://

Ajaxchelsea / CCNetWeb

Projecturl

>

-

<

Users

>

<

User

Name

= "

Buildguru

"

group

= "

Buildmaster

"

Address

= "

Ajaxchelsea@163.com

"/>

<

User

Name

= "

Chelsea

"

group

= "

Developers

"

Address

= "

Chelsea@chelseafc.com

"/>

<

User

Name

= "

Ajax

"

group

= "

Developers

"

Address

= "

Ajax@ajaxfc.com

"/>

Users

>

-

<

groups

>

<

group

Name

= "

Developers

"

Notification

= "

Always

"/>

<

group

Name

= "

Buildmaster

"

Notification

= "

Always

"/>

groups

>

Email

>

Publishers

>

Where CruiseControl.NET does not provide the code check tool FXCOP, its document recommends using the NANT's task to call FXCOP until Task appears, there is a need to configure the NANT script file:

-

<

Target Name

= "

FXCOP

"

Depends

= "

build

">

<

EXEC

PROGRAM

= "

D: / Program Files / Microsoft FXCOP 1.30 / FXCOPCMD.EXE

"

CommandLine

= "

/p:y:/nucleus.fxcop /o :y :/nucleus.xml

"

Failonerror

= "

False

"/>

Target

>

Five, some prompts

CruiseControl.NET automatically records remote VIEW VIEW Monitoring Remote VOB actually in addition to monitoring remote version control systems can be done by nant, and CCNET is only responsible for monitoring changes and calls nant to configure Visualstudio.net to CCNET. Program "", but it cannot be configured FXCOP, at least in CCNetService.exe.config There is a "" should be the path to configure CCNet.config, but now it seems to be ccnet.config Put it in the server directory to avoid the Chinese path, otherwise you need to manually use files in several XML formats, such as .csproj, etc., "", Or the Chinese path map is virtual hard disk: "Subst Y:" D: / cc_view / use_tech_dept / platform / numberus / 2 Product Development / 2 Implement /Nucleus1.0/source "" NUNIT has VisualStudio.net plugin NUNITDIN, FXCOP, etc. It can be configured as a VisualStudio external tool. It is recommended to use various tools installation, use, in a very detailed in their documents, there are countless resources on the Internet, reference materials

DailyBuild Raiders Draco.net continues to integrate Java manual

转载请注明原文地址:https://www.9cbs.com/read-107847.html

New Post(0)