2
我正在使用Win7 x64
編寫項目。我的一些測試部分需要使用僅代表x86支持的SQLServer CE。我正在使用Visual Studio 2010 Express
,我必須更改我的項目的平臺目標,手動編輯運行的* .cproj文件,例如schema export test (NHibernate)
。如何根據平臺目標運行我的測試的一部分。根據條件運行NUnit測試
謝謝!
我正在使用Win7 x64
編寫項目。我的一些測試部分需要使用僅代表x86支持的SQLServer CE。我正在使用Visual Studio 2010 Express
,我必須更改我的項目的平臺目標,手動編輯運行的* .cproj文件,例如schema export test (NHibernate)
。如何根據平臺目標運行我的測試的一部分。根據條件運行NUnit測試
謝謝!
我不知道在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