TypeMock은 자체 러너 프로그램 인 TMockRunner를 사용해야하므로 TeamCity의 GUI 옵션을 사용하여 모든 설정을 수행 할 방법이 없습니다.
대신, 내가 처음이 내용으로 사용자 지정 MSBuild에서 파일을 구축하는 것이었다하고 결국 무엇을 :
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<TypeMockLocation>C:\Program Files (x86)\TypeMock\Isolator\6.0</TypeMockLocation>
<NUnit>"C:\TeamCity\buildAgent\plugins\dotnetPlugin\bin\JetBrains.BuildServer.NUnitLauncher.exe"</NUnit>
<NCover>C:\Program Files (x86)\NCover\NCover.Console.exe</NCover>
</PropertyGroup>
<Import Project="$(TypeMockLocation)\TypeMock.MSBuild.Tasks"/>
<Target Name="TestWithTypeMock">
<TypeMockStart Link="NCover3.0" ProfilerLaunchedFirst="true" Target="2.0"/>
<Exec ContinueOnError="true" Command="$(NUnit) v2.0 x86 NUnit-2.5.9 SqlDatabases.Core.Tests\bin\Debug\SqlDatabases.Core.Tests.dll SqlDatabases.SqlServer.Tests\bin\Debug\SqlDatabases.SqlServer.Tests.dll /ncover:%22$(NCover)%22 /ncover-arg://ias /ncover-arg:SqlDatabases.Core /ncover-arg://ias /ncover-arg:SqlDatabases.SqlServer /ncover-arg://et /ncover-arg:.*Exception /ncover-arg://x /ncover-arg:c:\temp\coverage.xml"/>
<TypeMockStop/>
</Target>
</Project>
내 인 TeamCity 서버의 디렉토리에이 파일을 저장. 테스트 스크립트가 내 저장소에 포함되기를 원하지 않았기 때문에 소스 제어에 추가하지 않았습니다. Visual Studio 내에서 테스트를 만들고 마우스 오른쪽 단추로 클릭하고 실행할 수 있습니다. 서버를 만들면 나중에 결정을 바꿀 수 있습니다.) 또한 TeamCity 서버에 대한 빌드 에이전트는 1 개 밖에 없으므로 당분간은 나에게 적합합니다.위의 파일뿐만 아니라
, 나는 다음과 같은 배치 파일 추가 :
@echo off
setlocal
set CURDIR=%CD%
copy c:\dev\sqldatabases\tests.msbuild .\
msbuild tests.msbuild /target:TestWithTypeMock
rd /s /q c:\dev\sqldatabases\codecoverage
md c:\dev\sqldatabases\codecoverage
"c:\program files\ncover\ncover.reporting.exe" c:\temp\coverage.xml //or FullCoverageReport:Html:c:\dev\sqldatabases\codecoverage
cd \dev\sqldatabases\codecoverage
del %CURDIR%\coverage.zip
7z a -r %CURDIR%\coverage.zip
을 그리고 난 내 인 TeamCity 빌드 구성에 다음과 같은 두 가지 빌드 단계를 추가 :
- 비주얼 스튜디오 솔루션 : 디버그 구성을 작성하십시오.
- C를 실행합니다 : \ 데브 \ SqlDatabases Tests.bat (위의 배치 파일) \
내가
coverage.zip
내 빌드 구성에 유물 아래에 나열된 것을 확인했다
, 그리고 지금 가지고 코드 커버리지, typemock하고, 단위 테스트.
내가 지금까지 어떻게해야하는지 알지 못했다면, 정상적인 TeamCity GUI를 사용하여 (TypeMock 제외) 모든 것을 설정하는 빌드 구성 결과를 클릭하면, 코드 커버리지를 얻게된다. 짧은 요약은 위의 설정에는 없지만 전체 보고서는 TeamCity 빌드의 탭에 표시됩니다.
이렇게하면 누군가 다른 사람을 구제 할 수 있기를 바랍니다.
[TeamCity 포럼] (http://devnet.jetbrains.net/community/teamcity/teamcity?view=discussions)에서 더 많은 질문을 할 수 있습니다. – adrianbanks