TeamCity与msunit:如何将DLL复制到输出文件夹?

时间:2015-01-18 11:44:36

标签: unit-testing resources teamcity

我想用teamcity运行我的(工作)msunit测试。在我的测试中,我需要使用以下任一方法成功复制的几个文件(在VS中运行测试时):

  1. 文件属性 - >复制到输出目录
  2. 或使用xcopy
  3. 使用构建后步骤复制它们

    作为后期构建操作,我尝试过:

    xcopy /Y "$(ProjectDir)*somelib*.dll" "$(TargetDir)"
    

    xcopy /Y "$(ProjectDir)*somelib*.dll" "$(OutDir)"
    

    如您所见,我有 somelib .dll文件需要复制。这是由于使用了库,我将其列为参考。这个lib是相应复制的,但它需要一些较旧的(c ++)dll,它们不包含在参考包中。

    不幸的是,我找不到让TeamCity在bin / debug /文件夹中运行msunit测试,或者将所有必要文件复制到工作临时文件夹的方法。

    (我的目标是从多个测试套件中运行所有单元测试,并从dotCover收集所有测试的结果。)

    处理这种情况的好方法是什么?我注意到有可能将文件作为资源打包到程序集中,并在需要之前将它们解压缩到单元测试中。我将在每次测试中都需要这些dll并且想要干掉它 - 这是一种明智的方式来对待#34;只是"复制文件?

1 个答案:

答案 0 :(得分:0)

就TeamCity而言,您可以确保从命令行(在TeamCity代理计算机上,在同一目录etc中)运行该过程时,然后在一个目录中复制相同的步骤。 TeamCity构建。由于TeamCity只是将MSBuild作为外部进程启动并执行已配置的命令,因此不应该存在TeamCity特有的特性。