如何将构建参数传递给我的.NET单元测试

时间:2012-05-15 12:54:37

标签: .net variables tfs build

我需要将自定义构建设置传递给单元测试。我知道我可以在代码中使用System.EnvironmentVariable。我想知道如何将参数添加到TFS构建定义中,并将其作为代码中的env参数读取。它必须由我们的发布工程师在构建定义中指定。

2 个答案:

答案 0 :(得分:3)

听起来您想使用preprocessor directive来有条件地执行某些代码。

[TestMethod]
public void MyTestMethod () 
{
    bool buildArgumentIsSet = false;

    #if MY_BUILD_ARGUMENT
        buildArgumentIsSet = true
    #endif

    Assert.IsFalse(
        buildArgumentIsSet, 
        "The evil release engineer set the build argument.");        
}

然后,您的发布工程师可以使用/define参数进行编译,例如

/define:MY_BUILD_ARGUMENT

答案 1 :(得分:0)

为什么不将它放在app.config中并使用ConfigurationManager来阅读它?