VSTS单元测试错误,使用xUnit.net开发机器通行证

时间:2017-06-21 18:51:38

标签: azure xunit azure-pipelines

所以我们一直处理这个问题已经有一段时间了,似乎无法找出问题所在。

正如标题所述,我们的开发机器可以在本地运行单元测试而没有问题,但是当在VSTS中运行单元测试时,Microsoft.WindowsAzure.ServiceRuntime.dll似乎会导致问题。

除此之外,VSTS的构建代理是我的开发机器,在Visual Studio 2015中,运行单元测试没有问题......

任何指导都会非常有帮助!

System.TypeInitializationException : The type initializer for *** threw an exception

---- System.TypeInitializationException : The type initializer for 'Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironment' threw an exception.

System.TypeInitializationException : The type initializer for '<Module>' threw an exception.

<CrtImplementationDetails>.ModuleLoadException : The C++ module failed to load while attempting to initialize the default appdomain.

System.Runtime.InteropServices.COMException : Failed to load the runtime. (Exception from HRESULT: 0x80131700)

1 个答案:

答案 0 :(得分:0)

所以我想对此进行跟进,以防其他人使用xunit.net在VSTS中发现相同的问题。

问题主要围绕 Visual Studio测试构建步骤中的其他控制台选项 /平台:64

enter image description here

我在纠正此问题后遇到的下一个问题是此错误System.ArgumentException : Keyword not supported: 'metadata'.

这是一个误导性的错误,因为问题的根源是某些单元测试项目引用了各种帮助方法的其他单元测试项目以及这些其他测试项目dll在单独的测试项目中的存在,导致重复发现和重复运行的那些测试项目。将这些帮助程序移动到共享测试项目后,删除对不同测试项目的引用,并确保共享测试项目不会被发现通过在Visual Studio测试步骤中输入以下内容在VSTS中运行测试 - &gt;执行选项 - &gt;测试程序集-:**\xunit.runner.visualstudio.testadapter.dll;-:**\*.Test.Shared.dll;

我希望这有助于其他人...