语言

Assert.That 属性

定义

获取 Assert 功能的单一实例。

public static Microsoft.VisualStudio.TestTools.UnitTesting.Assert That { get; }
static member That : Microsoft.VisualStudio.TestTools.UnitTesting.Assert
Public Shared ReadOnly Property That As Assert

属性值

示例

以下示例将自定义 IsPrime 断言定义为扩展方法, Assert 并通过以下方法调用它 Assert.That:

using System;
using System.Linq;
using Microsoft.VisualStudio.TestTools.UnitTesting;

public static class CustomAssertExtensions
{
    public static void IsPrime(this Assert assert, int value)
    {
        if (value < 2 || Enumerable.Range(2, (int)Math.Sqrt(value) - 1).Any(i => value % i == 0))
        {
            throw new AssertFailedException($"Assert.That.IsPrime failed. Value <{value}> is not a prime number.");
        }
    }
}

[TestClass]
public class CalculatorTests
{
    [TestMethod]
    public void NextPrime_ReturnsPrime()
    {
        int result = new Calculator().NextPrime(10);
        Assert.That.IsPrime(result);
    }
}

注解

用户可以通过 C# 扩展方法插入自定义断言。 例如,自定义断言提供程序的签名可以是 public static void IsOfType<T>(this Assert assert, object obj) 调用站点 Assert.That.IsOfType<Dog>(animal);。 有关详细信息,请参阅 使用 Assert 创建自定义断言。该断言。

适用于