【问题标题】:MSTest Command Line SettingsMSTest 命令行设置
【发布时间】:2011-05-04 20:00:13
【问题描述】:

我们需要能够将服务器地址传递给我们的测试套件的 MSTest 命令行,该套件由 TeamCity 持续集成 (CI) 软件调用。

之前我们在 C# 单元测试中创建了 #if 常量,这使得 MSBuild 发生了变化。

有没有更好的方法?这种方式看起来很hacky。

有没有办法创建配置文件并传递要在 MSTest 中使用的参数?

【问题讨论】:

    标签: c# .net unit-testing continuous-integration mstest


    【解决方案1】:

    我在我的测试项目中使用app.config 文件来配置我的测试。源代码管理包含在 TeamCity 中用于运行测试的 app.config。

    在编译时,app.config 被复制到 bin 文件夹并重命名为 [assembly-name].config。然后,您可以通过 ConfigurationManager 从您的测试代码访问 .config 文件中的任何设置。

    在开发系统上,.config 文件经过定制,可以针对开发人员使用的任何本地测试服务器运行测试。

    我发现这是迄今为止最简洁的方法,因为它记录了测试在源代码控制中的配置方式。

    如果您需要更大的灵活性,您可以在 TeamCity 中设置一个额外的构建步骤,根据需要使用自定义 MSBuild 脚本中的一些 XML 转换或字符串替换来修改 .config 文件。

    【讨论】:

    • 我认为这会奏效。我将不得不创建几个 app.config 并将它们复制过来,以便在构建步骤中成为合适的配置。
    猜你喜欢
    • 2011-07-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多