2011-12-28 26 views
2

私はWin7 x64を使ってプロジェクトを書いています。私のテストの中には、x86のサポートのみを表すSQLServer CEを使用する必要があります。私はVisual Studio 2010 Expressを使用しています。私は、* .cprojファイルを手動で編集するプロジェクトのプラットフォームターゲットを変更する必要があります。たとえば、schema export test (NHibernate)です。どのように私はプラットフォームのターゲットに応じてテストの一部を実行します。条件に応じてNUnitテストを実行する

ありがとうございます!

答えて

2

このシナリオを処理するためのNUnitに組み込まれたメカニズムがあるかどうかはわかりませんが、少なくともプリプロセッサディレクティブを使用できます。

たとえば、x86をターゲットにした "Debug x86"ソリューション構成を作成します。次に、(プロジェクトのプロパティで)DEBUG_X86条件付きコンパイルシンボルを定義します。最後に、プリプロセッサディレクティブを使用してユニットテストを囲む:

#if DEBUG_X86 
[Test] 
public void Test() 
{ 
    // This test will only run when compiled with Debug x86 
} 
#endif 

編集:それはプラットフォームに応じて条件付きのシンボルを定義することができますよう実際に、あなたも、新しいソリューション構成を作成する必要はありません(https://stackoverflow.com/a/1313450/869621 )。したがって、WIN32のコンパイルシンボルを定義し、テストを囲みます。

#if WIN32 
[Test] 
public void Test() 
{ 
    // This test will only run when compiled for x86 
} 
#endif 
関連する問題