2009-05-27 2 views
0

VS2008 slnファイルのTeam City Pro(v4.0.2ビルド8222)を実行しています。.NET + TeamCity:プライベートアクセサリーがコンパイルされていない

今私は、テストプロジェクトのプライベートアクセサの自動生成コードが生成されず、それらの(自動生成された)クラスを見つけることができないためにコンパイルエラーが発生するという問題に直面しています。

ビルドランナーは、デフォルトのsln2008です。

すべての設定を変更する必要がありますか?私はVSビルドログをチェックし、自動生成されたクラスのmsbuildエントリは表示しません。自動生成されたクラスのDLLはまさにそこにあります。

注:プライベートメソッドのテストは単体テストを実行する最も良い方法です。

+0

MSBuildのと alt text http://www.deploylx.com/so/tcbuildrunner.jpg

実行NUnitのテストはどのようにこれらのクラスが自動生成されますか? msbuildスクリプトのカスタムステップ? –

+0

@mausch:もし私が知っていれば、私はその質問をしないでしょう。私が言ったように、autogenクラスのmsbuildエントリはなく、.accessorファイルにはビルドコマンドに関係するものは何も含まれていません。 –

+1

ok、まずそれを見つけ出す必要があります。これらのクラスはどのように見えるのですか?少しコードスニペットを投稿してください。 –

答えて

0

AFAIK、TeamCityはソリューションを構築するためにmsbuildユーティリティを使用しません。 ask TeamCity developersにしたくないですか?

+0

はい、まだ答えられていません: http://www.jetbrains.net/devnet/thread/281914 –

+0

サンプルアプリケーションを投稿できますか? – vpolozov

0

MSBuildのバージョンが3.5で、MSBuild ToolsVersionが3.0または3.5であることを確認してください。

<PropertyGroup> 
     <NUnitCommandArgs Condition="'$(NUnitCommandArgs)' == ''">$(NUnitCommandArgs) /noshadow /timeout=30000</NUnitCommandArgs> 
     <NUnitCommandArgs Condition="'$(TestGroupInclude)' != ''">$(NUnitCommandArgs) /[email protected](IncludeTestGroups, ',')</NUnitCommandArgs> 
     <NUnitCommandArgs Condition="'$(TestGroupExclude)' != ''">$(NUnitCommandArgs) /[email protected](ExcludeTestGroups, ',')</NUnitCommandArgs> 
    </PropertyGroup> 

    <ItemGroup> 
     <NUnitAddinFiles Include="$(teamcity_dotnet_nunitaddin)-2.5.0.*" /> 
    </ItemGroup> 

    <ItemGroup> 
     <NUnitRuntimeFiles Include="$(ToolsPath)\nUnit\nunit.core.dll" /> 
     <NUnitRuntimeFiles Include="$(ToolsPath)\nUnit\nunit.core.interfaces.dll" /> 
     <NUnitRuntimeFiles Include="$(ToolsPath)\nUnit\log4net.dll" /> 
    </ItemGroup> 

    <Target Name="RunUnitTests" > 

     <Message Text="[email protected](IncludeTestGroups), [email protected](ExcludeTestGroups)" Importance="High" /> 

     <MakeDir Directories="$(ToolsPath)\addins" /> 

     <Copy SourceFiles="@(NUnitAddinFiles)" 
       DestinationFolder="$(ToolsPath)\addins" 
       /> 

     <Copy SourceFiles="@(NUnitRuntimeFiles)" 
       DestinationFolder="$(TestFolder)" /> 

     <Exec 
      WorkingDirectory="$(ToolsPath)\nUnit\" 
      Command="&quot;$(ToolsPath)\nUnit\nunit-console-x86.exe&quot; &quot;%(TestAssemblies.FullPath)&quot; $(NUnitCommandArgs)" 
      /> 

    </Target> 
+0

現在「sln2008」ランナーを実行しており、「MSBuild」に切り替えるとNUnitテストを実行するオプションが削除されます。 –

+0

MSBuildオプションを使用して、nUnitテストを実行します。 MSBuildとTCでnUnitを実行するために追加したコードスニペットを見てください。 –

+0

そしてこのスニペットはどこに追加しますか? slnファイルですか? –

関連する問題