Dan*_*fer 11 .net unit-testing mstest
我找到了TestExecution类,它暴露了一堆非常有用的事件.但是,除了MSDN的文档之外,我找不到对它的引用,并且文档没有提供任何关于如何使用它的提示,或者我如何在测试运行期间获得对实例的引用.
使用.NET Reflector查看也没有用 - TestExecution由另一个类实现UnitTestExecution,这是内部的.我无法在任何Microsoft.VisualStudio.QualityTools.*库中找到任何其他类的引用,既不是进一步实现的形式,也不是任何其他类中的属性类型引用.
我如何获得这些活动的访问权限?
J. *_*hon 10
TestExecution实现自定义时,会为您提供一个实例TestExtensionExecution.它提供了一个Initialize方法,您可以覆盖该方法以订阅测试事件.
这通常是MSTest中自定义测试属性实现的一部分.
编辑
要创建自己的测试扩展,首先要创建一个派生自的新属性Microsoft.VisualStudio.TestTools.UnitTesting.TestClassExtensionAttribute,这是一个抽象类,要求您TestExtensionExecution通过该GetExtension()方法提供.
将您的属性应用于您的一个测试方法,您应该能够在测试期间订阅这些事件(在TestExtensionExecution属性返回的实现内)
请注意,您还必须实现一个ITestMethodInvoker您应该能够从TetMethodInvokerContext.TestMethodInfo提供给该TestExtensionExecute.CreateTestMethodInvoker方法的属性创建的内容.
| 归档时间: |
|
| 查看次数: |
1876 次 |
| 最近记录: |