gpt4 book ai didi

unit-testing - 单元测试不会在 TFS 2010 中使用多个构建配置运行

转载 作者:行者123 更新时间:2023-12-02 05:10:07 25 4
gpt4 key购买 nike

我在我的 TFS 构建过程中使用 MSBuild,使用 DefaultTemplate 来构建同一解决方案的多个配置(调试/发布)。当我仅构建发布或仅调试时,单元测试会运行,但当我使用两种配置运行构建时,单元测试不会运行。

当我运行多个配置时,我在 Process-> Items to Build-> Configurations to Build 下的构建定义中定义了每个配置,即混合平台|发布、混合平台|调试。当我运行单个配置时,我使用的是混合平台|发布或混合平台|调试。

我无法将整个日志放在这里(超过 6000 行)但它似乎找不到任何 testAssemblies。

编辑:

这里是日志的实际部分。我不确定搜索路径根中 Mixed Platforms\Release 的来源。

我还应该补充一点,我们将编译到我们的源文件夹中,因为我们的一些脚本只能在该布局中工作。

仅调试(有效)

为测试程序集运行 MSTestC:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\MSTest.exe/nologo/usestderr/testSettings:"C:\Builds\6\ProductName\BuildName\Sources\Product\Local.testsettings"/searchpathroot :"C:\Builds\6\ProductName\BuildName\Sources"/resultsfileroot:"C:\Builds\6\ProductName\BuildName\TestResults"/testcontainer:"C:\Builds\6\ProductName\BuildName\Sources\Test\UnitTestCommon\bin\Debug\UnitTestCommon.dll"/testcontainer:"C:\Builds\6\ProductName\BuildName\Sources\Test\UnitTestCommon\bin\Release\UnitTestCommon.dll"/testcontainer:"C:\Builds\6\ProductName\BuildName\Sources\Test\UnitTestWCF\bin\Debug\UnitTestWCF.dll"/testcontainer:"C:\Builds\6\ProductName\BuildName\Sources\Test\UnitTestWCF\bin\Release\UnitTestWCF.dll"/publish :"http://dctfs2010.company.dc:8080/tfs/Product"/publishbuild:"vstfs:///Build/Build/964"/teamproject:"ProductName"/platform:"混合平台"/flavor:"调试”加载 C:\Builds\6\ProductName\BuildName\Sources\Product\Local.testsettings...加载 C:\Builds\6\ProductName\BuildName\Sources\Test\UnitTestCommon\bin\Debug\UnitTestCommon.dll...加载 C:\Builds\6\ProductName\BuildName\Sources\Test\UnitTestCommon\bin\Release\UnitTestCommon.dll...

调试和发布(不起作用)

为测试程序集运行 MSTestC:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\MSTest.exe/nologo/usestderr/testSettings:"C:\Builds\6\ProductName\BuildName\Sources\Product\Local.testsettings"/searchpathroot :"C:\Builds\6\ProductName\BuildName\Sources\Mixed Platforms\Release"/resultsfileroot:"C:\Builds\6\ProductName\BuildName\TestResults"/testcontainer:"C:\Builds\6\ProductName\BuildName\Sources\Test\UnitTestCommon\bin\Debug\UnitTestCommon.dll"/testcontainer:"C:\Builds\6\ProductName\BuildName\Sources\Test\UnitTestCommon\bin\Release\UnitTestCommon.dll"/testcontainer:"C :\Builds\6\ProductName\BuildName\Sources\Test\UnitTestWCF\bin\Debug\UnitTestWCF.dll"/testcontainer:"C:\Builds\6\ProductName\BuildName\Sources\Test\UnitTestWCF\bin\Release\UnitTestWCF .dll"/publish:"http://dctfs2010.company.dc:8080/tfs/Product"/publishbuild:"vstfs:///Build/Build/962"/teamproject:"ProductName"/platform:"混合平台"/flavor:"释放"找不到目录“C:\Builds\6\ProductName\BuildName\Sources\Mixed Platforms\Release”。

最佳答案

如果单击解决方案的属性(作为构建的一部分构建的解决方案)。您将拥有配置管理器。在配置管理器中,您将能够看到“调试”、“已发布”、“混合”等您可能已定义的任何其他配置。你能看到在混合配置中选中要构建的测试项目吗?如果未构建,则 test.dll 将不可用,这意味着 MSBuild 将不会运行任何测试。

另一种验证为什么测试没有运行的方法是查看构建放置目录,看看您是否可以在那里看到 test.dll。如果 test.dll 不存在,那么问题出在配置管理器中配置项目的方式。

关于unit-testing - 单元测试不会在 TFS 2010 中使用多个构建配置运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6540203/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com