8

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

有什么线索吗?

4

3 回答 3

12

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

这也意味着任何测试都不会随发布代码一起发布,并且浏览生产代码或浏览测试代码会更容易。

于 2011-08-31T14:25:00.267 回答
5

如果您更喜欢将我的单元测试作为您尝试测试的项目的一部分进行开发,您可以将以下条件添加到您的单元测试文件和项目文件中的 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' "/>
于 2014-08-11T15:27:41.950 回答
1

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

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

于 2011-08-31T14:26:17.153 回答