Aracılığıyla paylaş


TestInitializeAttribute Sınıf

Sınama ayırmak ve test sınıfındaki tüm sınamaları tarafından gerekli kaynaklarını yapılandırmak için önce çalıştırılacak yöntemi tanımlar.Bu sınıf devralınamaz.

Devralma Hiyerarşisi

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

Ad alanı:  Microsoft.VisualStudio.TestTools.UnitTesting
Derleme:  Microsoft.VisualStudio.QualityTools.UnitTestFramework (Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll içinde)

Sözdizimi

'Bildirim
<AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple := False)> _
Public NotInheritable Class TestInitializeAttribute _
    Inherits Attribute
[AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple = false)]
public sealed class TestInitializeAttribute : Attribute
[AttributeUsageAttribute(AttributeTargets::Method, AllowMultiple = false)]
public ref class TestInitializeAttribute sealed : public Attribute
[<Sealed>]
[<AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple = false)>]
type TestInitializeAttribute =  
    class
        inherit Attribute
    end
public final class TestInitializeAttribute extends Attribute

TestInitializeAttribute türü aşağıdaki üyeleri ortaya koyar.

Oluşturucular

  Ad Açıklama
Genel yöntem TestInitializeAttribute Yeni bir örneğini başlatır TestInitializeAttribute sınıfı.

Üst

Özellikler

  Ad Açıklama
Genel özellik TypeId Türetilmiş bir sınıf içerisinde uygulanan, bunun için benzersiz bir tanımlayıcı alır Attribute. (Attribute kaynağından devralındı.)

Üst

Yöntemler

  Ad Açıklama
Genel yöntem Equals Altyapı. Bu örnek, belirtilen bir nesneye eşit olup olmadığını gösteren bir değeri döndürür. (Attribute kaynağından devralındı.)
Genel yöntem GetHashCode Bu örnek için karma kodunu döndürür. (Attribute kaynağından devralındı.)
Genel yöntem GetType Alır Type geçerli örneğinin. (Object kaynağından devralındı.)
Genel yöntem IsDefaultAttribute Türetilmiş bir sınıfta geçersiz kılınmış, bu örneğin değeri türetilmiş bir sınıf için varsayılan değer olup olmadığını gösterir. (Attribute kaynağından devralındı.)
Genel yöntem Match Türetilmiş bir sınıfta geçersiz kılınmış, bu örnek, belirtilen nesne eşit olup olmadığını gösteren bir değeri döndürür. (Attribute kaynağından devralındı.)
Genel yöntem ToString Geçerli nesneyi temsil eden bir dize döndürür. (Object kaynağından devralındı.)

Üst

Açık Arabirim Uygulamaları

  Ad Açıklama
Açık arabirim uygulamasıÖzel yöntem _Attribute.GetIDsOfNames Adlar kümesi dağıtma tanımlayıcıları karşılık gelen bir dizi eşleştirir. (Attribute kaynağından devralındı.)
Açık arabirim uygulamasıÖzel yöntem _Attribute.GetTypeInfo Bir arabirim türü bilgilerini almak için kullanılan bir nesne türü bilgilerini alır. (Attribute kaynağından devralındı.)
Açık arabirim uygulamasıÖzel yöntem _Attribute.GetTypeInfoCount Bir nesne (0 veya 1) sağlar türü bilgileri arabirimi sayısının alır. (Attribute kaynağından devralındı.)
Açık arabirim uygulamasıÖzel yöntem _Attribute.Invoke Özellikleri ve yöntemleri bir nesnesinin kullandığı erişim sağlar. (Attribute kaynağından devralındı.)

Üst

Notlar

Yük sınamada çalıştırdığınızda, bu özniteliğiyle işaretlenmiş yöntemi sınama sanal kullanıcı her tekrarda için bir kez çalışır.Kez başlatma işlemleri yapmanız gerekiyorsa, kullanımı tüm sınama uygulanan ClassInitializeAttribute.

Yöntemleri çalıştırma sırası aşağıdaki gibidir:

  1. Yöntemleri ile işaretli AssemblyInitializeAttribute.

  2. Yöntemleri ile işaretli ClassInitializeAttribute.

  3. Yöntemleri ile işaretli TestInitializeAttribute.

  4. Yöntemleri ile işaretli TestMethodAttribute.

Bir yöntem bu özniteliği belirtilebilir.Bu öznitelik yalnızca bir örneği için bir yöntem uygulanabilir.

Bu özniteliği varsayılan olarak üretilen kod kullanılır.

Öznitelikleri kullanma hakkında daha fazla bilgi için bkz: Öznitelikleri kullanarak meta verileri genişletme.

Örnekler

DivideClass sınıfı, test etmek istediğiniz yöntemi içerir SampleClassLib ad alanı içerir.DivideMethod() bu yöntemi çağrılır.

using System;
using System.Collections.Generic;
using System.Text;

namespace SampleClassLib
{
   public class DivideClass
   {
      public int DivideMethod(int a)
      {
         return 2 / a;
      }
   }
}
Imports System
Imports System.Collections.Generic
Imports System.Text

Namespace SampleClassLib
    Public Class DivideClass
        Public Function DivideMethod(ByVal a As Integer) As Integer
            Return 2 \ a
        End Function
    End Class
End Namespace

Aşağıdaki kodda, DivideMethodTest adlı bir test yöntemi DivideClassTest test sınıfı içerir.Bu kod, yöntem, sınıf ve derleme için başlatma ve temizleme yürütme sırasını denetlemek özniteliklerini de içerir.

Özellikle, ilk olarak Initialize() yöntemini TestInitialize özniteliği dikkat edin.

using Microsoft.VisualStudio.TestTools.UnitTesting;
using SampleClassLib;
using System;
using System.IO;
using System.Windows.Forms;

namespace TestNamespace
{
   [TestClass()]
   public class DivideClassTest
   {
      [AssemblyInitialize()]
      public static void AssemblyInit(TestContext context)
      {
         MessageBox.Show("Assembly Init");
         }

      [ClassInitialize()]
      public static void ClassInit(TestContext context)
      {
         MessageBox.Show("ClassInit");
      }

      [TestInitialize()]
      public void Initialize()
      {
         MessageBox.Show("TestMethodInit");
      }

      [TestCleanup()]
      public void Cleanup()
      {
         MessageBox.Show("TestMethodCleanup");
      }

      [ClassCleanup()]
      public static void ClassCleanup()
      {
         MessageBox.Show("ClassCleanup");
      }

      [AssemblyCleanup()]
      public static void AssemblyCleanup()
      {
         MessageBox.Show("AssemblyCleanup");
      }

      [TestMethod()]
      [ExpectedException(typeof(System.DivideByZeroException))]
      public void DivideMethodTest()
      {
         DivideClass target = new DivideClass();
         int a = 0; 
         int actual;
         actual = target.DivideMethod(a);
      }
   }
}
Imports Microsoft.VisualStudio.TestTools.UnitTesting
Imports System.Windows.Forms
Imports SCL2 = SampleClassLib2.SampleClassLib
Imports System
Imports System.IO

Namespace TestNamespace

   <TestClass()> _
   Public Class DivideClassTest

      <AssemblyInitialize()> _
      Public Shared Sub AssemblyInit(ByVal context As TestContext)
         MessageBox.Show("Assembly Init")
      End Sub

      <ClassInitialize()> _
      Public Shared Sub ClassInit(ByVal context As TestContext)
         MessageBox.Show("Test Class Init")
      End Sub

      <TestInitialize()> _
      Public Sub Initialize()
         MessageBox.Show("Test Initialize")
      End Sub

      <TestCleanup()> _
      Public Sub Cleanup()
         MessageBox.Show("Test Cleanup")
      End Sub

      <ClassCleanup()> _
      Public Shared Sub ClassCleanup()
         MessageBox.Show("Test Class Cleanup")
      End Sub

      <AssemblyCleanup()> _
      Public Shared Sub AssemblyCleanup()
         MessageBox.Show("Test Assembly Cleanup")
      End Sub

      <TestMethod()> _
      <ExpectedException(GetType(System.DivideByZeroException))> _
      Public Sub DivideMethodTest()
         Dim target As SCL.DivideClass = New SCL.DivideClass
         Dim a As Integer = 0
         Dim actual As Integer
         actual = target.DivideMethod(a)
      End Sub

   End Class
End Namespace

İş Parçacığı Güvenliği

Bu türün tüm genel statik (Visual Basic'te Shared) üyeleri iş parçacığı açısından güvenlidir. Hiçbir örnek üyesinin iş parçacığı açısından güvenliği garanti edilemez.

Ayrıca bkz.

Başvuru

Microsoft.VisualStudio.TestTools.UnitTesting Ad Alanı