Использование членов Microsoft.VisualStudio.TestTools.UnitTesting в модульных тестах
Платформа Unit Testing Framework поддерживает выполнение модульных тестов в Visual Studio.При написании кода модульных тестов используются классы и члены пространства имен Microsoft.VisualStudio.TestPlatform.UnitTestFramework.Они используются как при создании модульных тестов с нуля, так и при доработке тестов, созданных из проверяемого кода.
Группы элементов
Для более четкого представления общих сведений о платформе Unit Testing Framework элементы пространства имен "UnitTesting" в данном разделе упорядочены по группам в зависимости от функциональности.
![]() |
---|
Элементы атрибутов, имена которых заканчиваются строкой "Attribute", могут использоваться как со строкой "Attribute", так и без нее.Например, следующие два примера кода выполняют одну и ту же задачу. [TestClass()] [TestClassAttribute()] |
Элементы, используемые для управляемого данными тестирования
Для настройки управляемых данными модульных тестов используются следующие элементы.Дополнительные сведения см. в разделах Практическое руководство. Создание модульного теста, управляемого данными и Пошаговое руководство. Использование файла конфигурации для определения источника данных.
DataAccessMethod
DataSourceAttribute
DataSourceElement
DataSourceElementCollection
Атрибуты, используемые для установки порядка вызовов
Кодовая точка, оформленная одним из следующих атрибутов, вызывается в указанный момент времени.Для получения дополнительной информации см. Составляющие модульного теста.
Для сборок
Методы "AssemblyInitialize" и "AssemblyCleanup" вызываются сразу после загрузки сборки и непосредственно перед ее выгрузкой.
AssemblyInitializeAttribute
AssemblyCleanupAttribute
Для классов
Методы "ClassInitialize" и "ClassCleanup" вызываются сразу после загрузки класса и непосредственно перед его выгрузкой.
ClassInitializeAttribute
ClassCleanupAttribute
Для методов теста
TestInitializeAttribute
TestCleanupAttribute
Атрибуты, используемые для идентификации тестовых классов и методов
Каждый тестовый класс должен иметь атрибут "TestClass", каждый тестовый метод — атрибут "TestMethod".Для получения дополнительной информации см. Составляющие модульного теста.
TestClassAttribute
TestMethodAttribute
Классы "Assert" и связанные с ним исключения
С помощью модульных тестов можно проверить поведение конкретного приложения, используя различные вид операторов, исключений и атрибутов "Assert".Для получения дополнительной информации см. Использование классов Assert.
Assert
CollectionAssert
StringAssert
AssertFailedException
AssertInconclusiveException
UnitTestAssertException
ExpectedExceptionAttribute
Класс "TestContext"
В окне свойств Visual Studio отображаются следующие атрибуты и связанные с ними значения для конкретного метода теста.Эти атрибуты не предназначены для доступа из кода модульного теста.Вместо этого они влияют на способ применения или выполнения модульного теста либо через интегрированную среду разработки Visual Studio, либо через обработчик тестов Visual Studio. Например, некоторые из этих атрибутов появляются в качестве столбцов в окне диспетчера тестов и окне результатов теста, что позволяет использовать их для группировки и сортировки тестов и их результатов.Одним из таких атрибутов является "TestPropertyAttribute", с помощью которого в модульные тесты добавляются произвольные метаданные.Например, его можно использовать для хранения имени области действия пройденного теста, пометив модульный тест с помощью [TestProperty("TestPass", "Accessibility")].Или его можно использовать для хранения индикатора типа теста: [TestProperty("TestKind", "Localization")].Созданное с помощью этого атрибута свойство и присвоенное ему значение отобразятся в окне свойств Visual Studio под заголовком Сведения теста.
OwnerAttribute
DeploymentItemAttribute
DescriptionAttribute
HostTypeAttribute
IgnoreAttribute
PriorityAttribute
TestPropertyAttribute
WorkItemAttribute
Классы конфигурации теста
TestConfigurationSection
Атрибуты, используемые для формирования отчетов
В этом разделе описаны атрибуты, связывающие метод теста, к которому они применены, с сущностями в иерархии командного проекта Team Foundation Server.
CssIterationAttribute
CssProjectStructureAttribute
Классы, использующие закрытые методы доступа
Как описывается в разделе Using Publicize to Create a Private Accessor, вы можете создать модульный тест для закрытого метода.При этом создается класс закрытых методов доступа, являющийся экземпляром объекта класса "PrivateObject".Класс "PrivateObject" является классом-оболочкой, использующим отражение в рамках процесса доступа через закрытые методы.Аналогичным является класс "PrivateType", но вместо вызова закрытых методов экземпляра используется вызов закрытых статических методов.
PrivateObject
PrivateType
См. также
Ссылки
Microsoft.VisualStudio.TestPlatform.UnitTestFramework