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 | |
---|---|---|
TestInitializeAttribute | Yeni bir örneğini başlatır TestInitializeAttribute sınıfı. |
Üst
Özellikler
Ad | Açıklama | |
---|---|---|
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 | |
---|---|---|
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ı.) | |
GetHashCode | Bu örnek için karma kodunu döndürür. (Attribute kaynağından devralındı.) | |
GetType | Alır Type geçerli örneğinin. (Object kaynağından devralındı.) | |
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ı.) | |
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ı.) | |
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 | |
---|---|---|
_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ı.) | |
_Attribute.GetTypeInfo | Bir arabirim türü bilgilerini almak için kullanılan bir nesne türü bilgilerini alır. (Attribute kaynağından devralındı.) | |
_Attribute.GetTypeInfoCount | Bir nesne (0 veya 1) sağlar türü bilgileri arabirimi sayısının alır. (Attribute kaynağından devralındı.) | |
_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:
Yöntemleri ile işaretli AssemblyInitializeAttribute.
Yöntemleri ile işaretli ClassInitializeAttribute.
Yöntemleri ile işaretli TestInitializeAttribute.
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.