AssemblyInitializeAttribute Sınıf
Derlemesindeki tüm sınamaları çalıştırdığınız önce kullanılacak ve derleme tarafından elde edilen kaynak tahsis etmek için kod içeren bir yöntem tanımlar.Bu sınıf devralınamaz.
Devralma Hiyerarşisi
System.Object
System.Attribute
Microsoft.VisualStudio.TestTools.UnitTesting.AssemblyInitializeAttribute
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 AssemblyInitializeAttribute _
Inherits Attribute
[AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple = false)]
public sealed class AssemblyInitializeAttribute : Attribute
[AttributeUsageAttribute(AttributeTargets::Method, AllowMultiple = false)]
public ref class AssemblyInitializeAttribute sealed : public Attribute
[<Sealed>]
[<AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple = false)>]
type AssemblyInitializeAttribute =
class
inherit Attribute
end
public final class AssemblyInitializeAttribute extends Attribute
AssemblyInitializeAttribute türü aşağıdaki üyeleri ortaya koyar.
Oluşturucular
Ad | Açıklama | |
---|---|---|
AssemblyInitializeAttribute | Yeni bir örneğini başlatır AssemblyInitializeAttribute 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
Bu öznitelikle işaretlenen yöntem yöntemleri ile işaretlenmiş önce çalışacak ClassInitializeAttribute, TestInitializeAttribute, ve TestMethodAttribute öznitelikleri.Derleme içinde yalnızca bir yöntemi, bu öznitelik ile donatılmış.
Önemli |
---|
Bu özellik, asp kullanılmamalıdır.net birimi sınamaları, diğer bir deyişle, herhangi bir test [HostType("ASP.NET")] özniteliği.IIS ve asp durumsuz doğası nedeniyle.net, bu öznitelik ile donatılmış bir yöntem birden çok kez çalıştırmak test olarak adlandırılabilir. |
Bir yöntem bu özniteliği belirtilebilir.Bu öznitelik yalnızca bir örneği için bir yöntem uygulanabilir.
[!NOT]
Bu yöntem TestClass özniteliğiyle işaretlenmiş bir sınıf üyesi ise AssemblyInitialize özniteliğiyle işaretlenmiş bir yöntemi test motoru çalışır.
Öznitelikleri kullanma hakkında daha fazla bilgi için bkz: Öznitelikleri kullanarak meta verileri genişletme.
Örnekler
Aşağıdaki örnekler başlatma ve hangi yöntemleri test motoru tarafından test farklı dönemlerdeki çalıştırılmalıdır göstermek için kullanılan temizleme özniteliklerini göstermektedir.
Sınıf ve test yöntemi ilk kod örnekleri içerir.Bu örneği çalıştırmak için bir class library projesi oluşturun ve aaıdaki örnek kod Değiştir.
using System;
namespace SampleClassLib
{
public class DivideClass
{
public static int DivideMethod(int denominator)
{
return (2 / denominator);
}
}
}
Imports System
Namespace SampleClassLib
Public Class DivideClass
Shared Function DivideMethod(ByVal denominator As Integer) As Integer
Return 2 \ denominator
End Function
End Class
End Namespace
Aşağıdaki örnek test etmek için kod içeren DivideMethod() önceki kod örnekleri bulundu.Test bir proje oluşturduğunuzda ve bir sınama sınıf belgede aşağıdaki kodu yerleştirin.Uygun başvuruları projeye ekleyin.Bu kod, yöntem, sınıf ve derleme için başlatma ve temizleme yürütme sırasını denetlemek öznitelikleri içerir.
Özellikle, AssemblyInit () yöntemi AssemblyInitialize özniteliği dikkat edin.
using Microsoft.VisualStudio.TestTools.UnitTesting;
using SampleClassLib;
using System;
using System.Windows.Forms;
namespace TestNamespace
{
[TestClass()]
public sealed class DivideClassTest
{
[AssemblyInitialize()]
public static void AssemblyInit(TestContext context)
{
MessageBox.Show("AssemblyInit " + context.TestName);
}
[ClassInitialize()]
public static void ClassInit(TestContext context)
{
MessageBox.Show("ClassInit " + context.TestName);
}
[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.DivideMethod(0);
}
}
}
Imports Microsoft.VisualStudio.TestTools.UnitTesting
Imports SampleClassLib2.SampleClassLib
Imports System
Imports System.IO
Imports System.Windows.Forms
Namespace TestNamespace
<TestClass()> _
Public NotInheritable Class DivideClassTest
<AssemblyInitialize()> _
Public Shared Sub AssemblyInit(ByVal context As TestContext)
MsgBox("AssemblyInit " + context.TestName)
End Sub 'AssemblyInit
<ClassInitialize()> _
Public Shared Sub ClassInit(ByVal context As TestContext)
MsgBox("ClassInit " + context.TestName)
End Sub 'ClassInit
<TestInitialize()> _
Public Sub Initialize()
MsgBox("TestMethodInit")
End Sub
<TestCleanup()> _
Public Sub Cleanup()
MsgBox("TestMethodCleanup")
End Sub
<ClassCleanup()> _
Public Shared Sub ClassCleanup()
MsgBox("ClassCleanup")
End Sub
<AssemblyCleanup()> _
Public Shared Sub AssemblyCleanup()
MsgBox("AssemblyCleanup")
End Sub
<TestMethod()> _
<ExpectedException(GetType(System.DivideByZeroException))> _
Public Sub DivideMethodTest()
DivideClass.DivideMethod(0)
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ı