Поделиться через


TestPropertyAttribute - класс

Устанавливает для метода свойство, зависящее от теста. Этот класс не наследуется.

Иерархия наследования

System.Object
  System.Attribute
    Microsoft.VisualStudio.TestTools.UnitTesting.TestPropertyAttribute

Пространство имен:  Microsoft.VisualStudio.TestTools.UnitTesting
Сборка:  Microsoft.VisualStudio.QualityTools.UnitTestFramework (в Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll)

Синтаксис

'Декларация
<AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple := True)> _
Public NotInheritable Class TestPropertyAttribute _
    Inherits Attribute
[AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple = true)]
public sealed class TestPropertyAttribute : Attribute
[AttributeUsageAttribute(AttributeTargets::Method, AllowMultiple = true)]
public ref class TestPropertyAttribute sealed : public Attribute
[<Sealed>]
[<AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple = true)>]
type TestPropertyAttribute =  
    class
        inherit Attribute
    end
public final class TestPropertyAttribute extends Attribute

Тип TestPropertyAttribute предоставляет следующие члены.

Конструкторы

  Имя Описание
Открытый метод TestPropertyAttribute Инициализирует новый экземпляр класса TestPropertyAttribute со значениями свойств Name и Value.

В начало страницы

Свойства

  Имя Описание
Открытое свойство Name Получает имя свойства теста.
Открытое свойство TypeId При реализации в производном классе возвращает уникальный идентификатор для этого Attribute. (Унаследовано от Attribute.)
Открытое свойство Value Получает значение свойства теста.

В начало страницы

Методы

  Имя Описание
Открытый метод Equals Инфраструктура. Возвращает значение, указывающее, равен ли этот экземпляр указанному объекту. (Унаследовано от Attribute.)
Защищенный метод Finalize Позволяет объекту попытаться освободить ресурсы и выполнить другие операции очистки, перед тем как объект будет утилизирован в процессе сборки мусора. (Унаследовано от Object.)
Открытый метод GetHashCode Возвращает хеш-код данного экземпляра. (Унаследовано от Attribute.)
Открытый метод GetType Возвращает объект Type для текущего экземпляра. (Унаследовано от Object.)
Открытый метод IsDefaultAttribute При переопределении в производном классе показывает, является ли значение данного экземпляра значением по умолчанию для производного класса. (Унаследовано от Attribute.)
Открытый метод Match При переопределении в производном классе возвращает значение, указывающее, является ли этот экземпляр равным заданному объекту. (Унаследовано от Attribute.)
Защищенный метод MemberwiseClone Создает неполную копию текущего объекта Object. (Унаследовано от Object.)
Открытый метод ToString Возвращение строки, представляющей текущий объект. (Унаследовано от Object.)

В начало страницы

Явные реализации интерфейса

  Имя Описание
Явная реализация интерфейсаЗакрытый метод _Attribute.GetIDsOfNames Сопоставляет набор имен соответствующему набору идентификаторов диспетчеризации. (Унаследовано от Attribute.)
Явная реализация интерфейсаЗакрытый метод _Attribute.GetTypeInfo Возвращает сведения о типе объекта, которые могут использоваться для получения сведений о типе интерфейса. (Унаследовано от Attribute.)
Явная реализация интерфейсаЗакрытый метод _Attribute.GetTypeInfoCount Возвращает количество предоставляемых объектом интерфейсов для доступа к сведениям о типе (0 или 1). (Унаследовано от Attribute.)
Явная реализация интерфейсаЗакрытый метод _Attribute.Invoke Предоставляет доступ к открытым свойствам и методам объекта. (Унаследовано от Attribute.)

В начало страницы

Заметки

Чтобы увидеть свойство, сначала повторите построение проекта, а затем выделите тест в Редакторе списка тестов или в окне Представления теста. Свойство становится видимым в панели Свойства после того как проект будет построен заново.

Этот атрибут можно указать в методе теста. Для задания нескольких элементов можно использовать несколько экземпляров этого атрибута.

Дополнительные сведения об использовании атрибутов см. в разделе Расширение метаданных с помощью атрибутов.

Примеры

В следующем примере кода показано, как получить доступ к свойствам TestProperty из метода MyTestMethod().

using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System.Windows.Forms;
using System.Reflection;

namespace TestProperty
{
   [TestClass]
   public class TestPropertyTest
   {
      [TestMethod()]
      [TestProperty("MyProperty1", "Big")]
      [TestProperty("MyProperty2", "Small")]
      public void MyTestMethod()
      {
         // Get the current type
         Type t = GetType();

         MethodInfo mi = t.GetMethod("MyTestMethod");
         Type MyType = typeof(TestPropertyAttribute);
         object[] attributes = mi.GetCustomAttributes(MyType, false);

         for (int i = 0; i < attributes.Length; i++)
         {
            string name = ((TestPropertyAttribute)attributes[i]).Name;
            string val = ((TestPropertyAttribute)attributes[i]).Value;

            string mystring = string.Format("Property Name: {0}, Value: {1}", name, val);
            MessageBox.Show(mystring);
         }
      }
   }
}

Потокобезопасность

Любые открытые члены этого типа, объявленные как static (Shared в Visual Basic), являются потокобезопасными. Потокобезопасность членов экземпляров не гарантируется.

См. также

Ссылки

Microsoft.VisualStudio.TestTools.UnitTesting - пространство имен

MethodInfo

Другие ресурсы

Написание кода пользовательских модульных тестов с помощью платформы Unit Testing Framework