【发布时间】:2022-01-08 13:13:42
【问题描述】:
我们在 Azure DevOps 上构建的持续集成刚刚开始在运行 MSTest 单元测试时遇到此问题。没有更新任何此代码。 Unity.Container.dll 版本 5.11.11.0 和旧项目中的 5.11.8.0 会发生这种情况。无法在视觉工作室本地重现。有任何想法吗??使用 .net Framework 4.8 测试 c# 类库。这是TestInitialize中的代码:
var container = new UnityContainer();
初始化方法 MyTestClass.ATestInitialize 抛出异常。 System.TypeInitializationException:类型初始化程序 'Unity.Lifetime.TransientLifetimeManager' 抛出异常。 ---> System.Security.VerificationException:操作可能会破坏 运行时..
Unity.Lifetime.TransientLifetimeManager..cctor() 中的堆栈跟踪 C:\projects\abstractions\src\Lifetime\Managers\TransientLifetimeManager.cs:line 26
这是使用运行 Windows 2019 的 Azure Pipelines 代理池。
【问题讨论】:
-
您能否提供更多有关
MyTestClass.ATestInitialize()方法中发生的情况的详细信息?这也是 xUnit、MSTest、NUnit 吗?它正在测试什么类型的项目(asp.net、wpf、类库等)? -
另外,因为这发生在您的构建服务器上而不是您的本地计算机上,您能否提供有关构建代理的更多详细信息?您是使用微软提供的云托管构建代理还是运行自托管构建代理。在两者中,请指定您使用的操作系统。
-
@byranbcook 感谢您的回复。我更新了 desc 以包含 MSTest 和 Azure Pipelines Windows 2019 服务器。它已经提到了它只是创建新 UnityContainer 对象的代码。这有帮助吗?我怎样才能找到这个?谢谢
-
正在测试什么类型的应用程序? Web 应用、类库等?
-
类库。 .Net Framework 4.8,c#,对不起,我忘了回答那部分谢谢
标签: .net azure-devops azure-pipelines unity-container