测试失败并显示“找不到方法”错误

时间:2015-03-06 03:00:25

标签: unit-testing continuous-integration mstest biztalk tfs2012

我已将BizTalk UnitTest项目配置为在每次检查TFS时运行,但测试运行失败并出现以下错误:

  

找不到方法:   ' Microsoft.VisualStudio.TestTools.TestManagement.ControllerProxy   Microsoft.VisualStudio.TestTools.TestManagement.Tmi.GetControllerProxy(Microsoft.VisualStudio.TestTools.Common.TestRunConfiguration,   System.Object的)'

错误详情:

C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\MSTest.exe /nologo /usestderr /searchpathroot:"C:\Builds\29\BizTalk\<proj>\Binaries" /resultsfileroot:"C:\Builds\29\BizTalk\<proj>\TestResults" /testcontainer:"C:\Builds\29\BizTalk\<proj>\Sources\BizTalk\<solution>\C<proj>.UnitTest\bin\Release\<proj>.UnitTest.dll" /publish:"<TFS path>" /noprompt /publishbuild:"vstfs:///Build/Build/2592" /teamproject:"BizTalk" /platform:"Any CPU" /flavor:"Release" 
Loading C:\Builds\29\BizTalk\<proj>\Sources\BizTalk\<soln >\<proj>.UnitTest\bin\Release\<proj>.UnitTest.dll...
Starting execution...
Microsoft (R) Test Execution Command Line Tool Version 12.0.21005.1
Copyright (c) Microsoft Corporation. All rights reserved.
For switch syntax, type "MSTest /help"
**Method not found: 'Microsoft.VisualStudio.TestTools.TestManagement.ControllerProxy Microsoft.VisualStudio.TestTools.TestManagement.Tmi.GetControllerProxy(Microsoft.VisualStudio.TestTools.Common.TestRunConfiguration, System.Object)'.**

1 个答案:

答案 0 :(得分:1)

如果在Build Server中并排安装了多个版本的VS,请确保构建服务器使用正确版本的MSTest.exe来执行单元测试。

我已经通过将MStest.exe的确切路径设置为&#39; ToolPath属性&#39;来实现它。 &#39;运行MSTest活动&#39;在BTDF默认构建定义中。