AssemblyInitializeAttribute – třída
Určuje metodu, která obsahuje kód používali spustit všechny testy v sestavení a přidělení prostředků získaných sestavení. Od této třídy nelze dědit.
Hierarchie dědičnosti
System.Object
System.Attribute
Microsoft.VisualStudio.TestTools.UnitTesting.AssemblyInitializeAttribute
Obor názvů: Microsoft.VisualStudio.TestTools.UnitTesting
Sestavení: Microsoft.VisualStudio.QualityTools.UnitTestFramework (v Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll)
Syntaxe
'Deklarace
<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
Typ AssemblyInitializeAttribute zveřejňuje následující členy.
Konstruktory
Název | Popis | |
---|---|---|
![]() |
AssemblyInitializeAttribute | Inicializuje novou instanci AssemblyCleanupAttribute Třída |
Na začátek
Vlastnosti
Název | Popis | |
---|---|---|
![]() |
TypeId | Po implementaci v odvozené třídě získává tento jedinečný identifikátor Attribute. (Zděděno z Attribute.) |
Na začátek
Metody
Název | Popis | |
---|---|---|
![]() |
Equals | Infrastruktura. Vrátí hodnotu, která označuje, zda je zadaný objekt rovna této instance. (Zděděno z Attribute.) |
![]() |
Finalize | Umožňuje zkuste uvolnit prostředky a provádět další operace vyčištění před je převzaty systémem pro uvolnění objektu. (Zděděno z Object.) |
![]() |
GetHashCode | Vrátí kód hash pro tuto instanci. (Zděděno z Attribute.) |
![]() |
GetType | Získává Type aktuální instance. (Zděděno z Object.) |
![]() |
IsDefaultAttribute | Přepsat v odvozené třídě označuje, zda hodnota této instance je výchozí hodnota pro odvozené třídy. (Zděděno z Attribute.) |
![]() |
Match | Při přepsání v odvozené třídě vrátí hodnotu, která označuje, zda tato instance se rovná zadaný objekt. (Zděděno z Attribute.) |
![]() |
MemberwiseClone | Vytvoří kopii aktuální Object. (Zděděno z Object.) |
![]() |
ToString | Vrátí řetězec, který představuje aktuální objekt. (Zděděno z Object.) |
Na začátek
Explicitní implementace rozhraní
Název | Popis | |
---|---|---|
![]() ![]() |
_Attribute.GetIDsOfNames | Mapuje sadu názvů identifikátorů odeslání odpovídající sadu. (Zděděno z Attribute.) |
![]() ![]() |
_Attribute.GetTypeInfo | Načte informace o typu objektu, který lze získat informace o rozhraní typu. (Zděděno z Attribute.) |
![]() ![]() |
_Attribute.GetTypeInfoCount | Vyhledá číslo rozhraní typu informací, že objekt obsahuje (0 nebo 1). (Zděděno z Attribute.) |
![]() ![]() |
_Attribute.Invoke | Poskytuje přístup k vlastnostem a metodám vystaven objekt. (Zděděno z Attribute.) |
Na začátek
Poznámky
Metoda s tímto atributem bude spuštěn před metody označena ClassInitializeAttribute, TestInitializeAttribute, a TestMethodAttribute atributy. Pouze jednu metodu v sestavení může být dekorován tento atribut.
Důležité
Tento atribut by nepoužívá v prostředí ASP.SÍŤOVÉ jednotky testů, jakéhokoli testu s [HostType("ASP.NET")] atributu. Z důvodu příslušnosti povaha služby IIS a ASP.NET, dekorován tento atribut může být volána metoda více než jednou za zkoušky.
Tento atribut může být zadán pro metodu. Metody lze použít pouze jednu instanci tohoto atributu.
Poznámka
Zkoušený motor pracuje metoda, která je označen atributem AssemblyInitialize, pouze pokud je členem třídy, která je označena atributem Testovací_třída metodu.
Další informace o použití atributů viz Rozšíření metadat pomocí atributů.
Příklady
Následující příklady ukazují inicializaci a čištění atributy, které se používají k označení, které metody by měl být spuštěn test motoru v různých obdobích testu.
První ukázky kódu obsahují třídy a metody testování. Chcete-li spustit příklad vytvoření projektu knihovny třídy a nahradit kód v následujícím příkladu.
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
Následující příklad obsahuje kód test DivideMethod() v předchozí příklady kódu. Vytvoření projektu zkouška a zkouška třídy dokumentu vložte následující kód. Přidejte příslušné odkazy na projekt. Tento kód obsahuje atributy, které určují pořadí inicializace a čištění provádění metody, třídy a sestavení.
Všimněte si zejména atribut AssemblyInitialize metody AssemblyInit ().
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
Zabezpečení podprocesu
Všechny veřejné členy static (Shared v jazyce Visual Basic) tohoto typu jsou zabezpečeny pro používání podprocesů. Zabezpečení sdílených členů pro používání podprocesů není zaručeno.
Viz také
Odkaz
Microsoft.VisualStudio.TestTools.UnitTesting – obor názvů