使用 TestContext 类

使用 TestContext 类

在单元测试中,TestContext 类可以用于多种用途。下面是一些最常见的用途:

获取 TestContext

运行单元测试时,如果包含单元测试方法的测试类定义了 TestContext 属性,则系统会自动提供 TestContext 类型的一个具体实例。这意味着,您不必在代码中实例化或派生 TestContext 类型。您可以立即开始使用它,并且它提供了 IntelliSense 支持。

并不是所有测试类都自动定义了 TestContext 属性。测试类是否定义该属性取决于您创建测试的方式。

自动定义 TestContext 属性的情况

当基于代码生成单元测试时,会自动定义 TestContext 属性。有关生成单元测试的方法的更多信息,请参见如何:生成单元测试

不自动定义 TestContext 属性的情况

可以通过多种方法来创建单元测试,而不是自动生成它们。如果使用以下方法中的任意一种来创建测试,测试类将不会自动定义 TestContext 属性:

  • 手动编写新测试类。

  • 向项目中添加新的单元测试文件。例如,您可以通过以下方法执行该操作:在“测试”菜单上选择“新建测试”,然后在“添加新测试”对话框中选择“单元测试”。

在上述情况下,必须手动添加 TestContext 属性。有关对单元测试进行编码的更多信息,请参见如何:创作单元测试

TestContext 示例

要使用 TestContext,应在测试类中创建一个成员和一个属性,如下面的 C# 示例所示。

复制代码

private TestContext testContextInstance;
/// <summary>
///Gets or sets the test context which provides
///information about and functionality for the current test run.
///</summary>
public TestContext TestContext
{
    get
    {
        return testContextInstance;
    }
    set
    {
        testContextInstance = value;
    }
}

测试框架会自动设置该属性,您随后即可在单元测试中使用该属性。

From:

http://msdn.microsoft.com/en-us/ms404699(zh-cn).aspx

http://msdn.microsoft.com/zh-cn/library/ms404699(VS.80).aspx

http://msdn.microsoft.com/zh-cn/library/ms182409(VS.80).aspx

原文地址:https://www.cnblogs.com/emanlee/p/1699033.html