删除发布版本的NUnit参考

时间:2011-08-31 14:23:50

标签: c# .net sharpdevelop

我有一个包含许多NUnit测试的项目。我很高兴这些测试包含在Debug配置构建中,但我想删除对nunit.framework的依赖,以解决Release配置问题。有没有办法排除特定(发布)配置的NUnit引用和nunit测试对象?我正在使用Sharp Develop,但我很好奇你如何使用Visual Studio解决这个问题。

任何线索?

3 个答案:

答案 0 :(得分:12)

听起来你已经在与发布代码相同的项目中进行了测试。这不是一个好主意 - 将代码分成两个项目,一个是测试,一个是生产代码。只有测试项目需要引用NUnit。

这也意味着所有测试都不会附带发布代码,并且更容易浏览只是生产代码或只是测试代码。

答案 1 :(得分:4)

我更愿意将我的单元测试作为我正在尝试测试的项目的一部分进行开发。您可以将以下条件添加到单元测试文件和项目文件中的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' "/>

答案 2 :(得分:1)

将您的单元测试移动到其他程序集 - 即YourProject.UnitTests

这不会构成部署包的一部分,也不需要在主应用程序中包含nUnit引用。