gpt4 book ai didi

c# - MSTest取消机制

转载 作者:行者123 更新时间:2023-11-30 12:09:21 25 4
gpt4 key购买 nike

是否有任何机制为单元测试提供 CancellationToken(或者可能是 [TestInitialize] 之类的属性),可用于了解单元测试已取消?我找不到。

最佳答案

理论上,应该可以使用您自己的测试扩展(派生自 TestClassExtensionAttribute)来实现这一点,您可以使用它来代替标准的 [TestClass] 属性.

这有点挑战性,因为它需要部署/注册您的测试扩展(阅读 "Extending the Visual Studio Unit Test Type, part 1")。

这将使您能够访问 TestExecution.OnTestStopping 事件。在事件处理程序中,您可以在 CancellationTokenSource 的某个实例上请求取消。

这取决于您如何使 CancellationTokenSource.Token 可用于测试方法本身。例如,您可以使用 System.AppDomain.CurrentDomain.GetData。在这种情况下,您还需要处理 TestExecution.BeforeTestInitialize 并使用 System.AppDomain.CurrentDomain.SetData 来存储查找正确的 所需的信息CancellationTokenSource.您可能需要维护 TestContext-to-CancellationTokenSource 的字典,以确保您正在取消正确的测试。

关于c# - MSTest取消机制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24933333/

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