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


TestPropertyAttribute - класс

Обновлен: Ноябрь 2007

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

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

Синтаксис

'Декларация
<AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple := True)> _
Public NotInheritable Class TestPropertyAttribute _
    Inherits Attribute
'Применение
Dim instance As TestPropertyAttribute
[AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple = true)]
public sealed class TestPropertyAttribute : Attribute
[AttributeUsageAttribute(AttributeTargets::Method, AllowMultiple = true)]
public ref class TestPropertyAttribute sealed : public Attribute
public final class TestPropertyAttribute extends 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);
         }
      }
   }
}

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

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

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

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

См. также

Ссылки

TestPropertyAttribute - члены

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

MethodInfo