MSTest命令行设置

时间:2011-05-04 20:00:14

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

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

之前我们在C#单元测试中创建了#if常量,这在MSBuild中进行了更改。

有更好的方法吗?这种方式看起来很漂亮。

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

1 个答案:

答案 0 :(得分:4)

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

在编译时,app.config被复制到bin文件夹并重命名为[assembly-name] .config。然后,您可以通过ConfigurationManager

从测试代码访问.config文件中的任何设置

在开发系统上,自定义.config文件,以针对开发人员正在使用的本地测试服务器运行测试。

我发现这是最干净的方法,因为它记录了如何在源代码管理中配置测试。

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