可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
I am writing an NUnit test that I want run only in the Release configuration. Is there an elegant way of doing this with a test case attribute? Right now, I am surrounding the entire function block with compiler directives:
I am using Nunit 2.5.6.10205.
#if !DEBUG [Test] public void MyReleaseOnlyTest() { // stuff } #endif
回答1:
You could use the [Category]
attribute. If you mark release only tests with [Category("Release")]
then exclude that category in your normal test run and include it in you release run.
So now your test becomes
[Test] [Category("Release")] public void MyReleaseOnlyTest() { // stuff }
回答2:
Add the Ignore attribute in #if preprocessor, rather than the entire test method.
#if DEBUG [Ignore("Only to be run in release")] #endif
http://msdn.microsoft.com/en-us/library/4y6tbswk.aspx
You can also use the Conditional
attribute
[System.Diagnostics.Conditional("RELEASE")]