【问题标题】:Teamcity not DLL's for some NUnit Test projectsTeamcity 不是某些 NUnit 测试项目的 DLL
【发布时间】:2011-04-09 14:29:05
【问题描述】:

我在通过 Teamcity 5 运行 Moq 测试时收到此错误

测试失败。 System.IO.FileNotFoundException : 无法加载文件或程序集 'Moq, 版本=3.1.416.3,文化=中性, PublicKeyToken=69f491c39445e920' 或 它的依赖项之一。系统 找不到指定的文件。在 MyCode.Tests.SomeHandlerTests.Setup()

测试在我的本地运行良好;他们只是在构建服务器上失败了。

我确保程序集在 Bin 中(现在通过 RDP 查看它们,请务必确认)。

【问题讨论】:

    标签: nunit teamcity filenotfoundexception


    【解决方案1】:

    所以问题与 nunit 设置下的测试 DLL 搜索路径有关

    原来是:

    ..\Tests\**\*Test*.dll

    但现在是:

    ..\Tests\*\bin\Debug\*Test*.dll

    一切都很好

    更新

    http://confluence.jetbrains.com/display/TCD8/NUnit

    你可以使用这个模式

    **\*.dll

    只要你在“不运行测试”字段中添加这个模式

    **\obj\**\*.dll

    【讨论】:

    • 你知道为什么会这样吗?我有完全相同的问题,直到 RDP'ing 看到它在那里。
    • @Robert - 它对我有用,因为它最初也选择了 /obj/ 文件夹,它没有所有必需的依赖项。
    • 同样的事情发生在我身上,正如@MickieChan 所说,它正在 /obj 文件夹中运行测试,但不知道为什么在我的情况下,因为我的模式是 %system.teamcity.build.workingDir%\* *\bin\%system.Configuration%*.IntegrationTests.dll 所以不确定它为什么会选择 /obj 文件夹。发生这种情况的另一个迹象是在构建日志中,对于每个失败的测试,它都说“测试在构建中运行了 2 次,1 次失败”。
    【解决方案2】:

    我遇到了类似的问题,但发现我的 2 个测试项目之间的起订量版本不同。

    我遇到的问题是正确的版本不可用。

    做事

    Update-Package Moq
    

    从包管理器命令行

    【讨论】:

      猜你喜欢
      • 2011-08-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多