2011-08-31 10 views
6

多くのNUnitテストがあるプロジェクトがあります。これらのテストがDebug構成ビルドに含まれてうれしく思いますが、Release構成のnunit.frameworkへの依存関係を削除したいと思います。 NUnitリファレンスとnunitテストオブジェクトを特定の(リリース)構成で除外する方法はありますか?私はSharp Developを使用していますが、Visual Studioでもこの問題にどのようにアプローチするのか不思議です。リリースビルドのNUnitリファレンスを削除します。

手がかりはありますか?

答えて

11

リリースコードと同じプロジェクトでテストしたようですね。これは素晴らしい考えではありません。コードを2つのプロジェクトに分割します.1つはテストで、もう1つはプロダクションコードで行います。テストプロジェクトだけがNUnitを参照する必要があります。

また、テストのどれもがリリースコードが付属しないことを意味し、それはだけ生産コードまたはだけテストコードを閲覧する方が簡単です。

+0

ありがとうジョンを、私はそれを見てよ...御馳走を作品 –

+0

、感謝します。 –

1
は異なるアセンブリに単体テストを移動

- すなわちYourProject.UnitTests

これは、配備パッケージの一部を形成しない、およびメインアプリケーションでのNUnitの参照を含める必要はありません。

1

私はテストしようとしているプロジェクトの一部としてユニットテストを開発することを好みます。プロジェクトファイルのユニットテストファイルとnunitリファレンスの両方に以下の条件を追加できます。

Condition=" '$(Configuration)'=='Debug' " 

これは、デバッグモードになっているときは、ビルド内のテストクラスだけでなく、nunitリファレンスも含みます。

だからあなたのプロジェクトファイルは、次のようなものかもしれません:

<Reference Include="nunit.framework, Version=2.6.3.13283, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL" Condition=" '$(Configuration)'=='Debug' "> 
    <HintPath>..\packages\NUnit.2.6.3\lib\nunit.framework.dll</HintPath> 
</Reference> 

<Compile Include="UnitTests.cs" Condition=" '$(Configuration)'=='Debug' "/> 
関連する問題