6

我想像这样在 NUnit 和 VS 测试之间切换:

#if !NUNIT
using Microsoft.VisualStudio.TestTools.UnitTesting;
#else
  using NUnit.Framework;
  using TestClass = NUnit.Framework.TestFixtureAttribute;
  using TestMethod = NUnit.Framework.TestAttribute;
  using TestInitialize = NUnit.Framework.SetUpAttribute;
  using TestCleanup = NUnit.Framework.TearDownAttribute;
  using TestContext = System.String;
  using DeploymentItem = NUnit.Framework.DescriptionAttribute;
#endif

我的问题是,我如何在一个地方声明 NUNIT 预处理器符号(App.config 左右,会很棒),以便在 NUnit 和 VSTests 之间轻松切换?因为当我使用时#define NUNIT,它仅适用于写入它的文件。

4

2 回答 2

10

使用项目属性对话框。您可以在那里定义全局符号:

右键项目 -> 属性 -> 构建选项卡 -> 条件编译符号

于 2009-03-28T10:50:13.610 回答
8

每个项目执行此操作的唯一方法是通过项目/构建本身(项目属性 -> 构建 -> 条件编译符号)。您可以为一个项目定义多个“配置”(定义了不同的符号),并使用您想要的那个。

要添加新配置,请使用配置管理器(在调试/发布下拉列表的底部)并基于现有的(调试/发布/等)创建一个新配置。现在在项目属性中,您可以选择此选项来为该配置设置不同的符号。

于 2009-03-28T10:52:01.607 回答