TestInitializeAttribute – třída
Určuje způsob spuštění před zkouškou přidělit a prostředky potřebné pro všechny testy ve třídě test konfigurace. Od této třídy nelze dědit.
Hierarchie dědičnosti
System.Object
System.Attribute
Microsoft.VisualStudio.TestTools.UnitTesting.TestInitializeAttribute
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 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
Typ TestInitializeAttribute zveřejňuje následující členy.
Konstruktory
Název | Popis | |
---|---|---|
TestInitializeAttribute | Inicializuje novou instanci TestInitializeAttribute 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
Při spuštění testu zatížení metoda s tímto atributem budou spuštěny jednou pro každý virtuální uživatel iterace v testu. Pokud potřebujete provést inicializaci operace jednou, platnými pro celý zkušební použití ClassInitializeAttribute.
Je pořadí, ve kterém bude spuštěna metody:
Metody označena AssemblyInitializeAttribute.
Metody označena ClassInitializeAttribute.
Metody označena TestInitializeAttribute.
Metody označena TestMethodAttribute.
Tento atribut může být zadán pro metodu. Metody lze použít pouze jednu instanci tohoto atributu.
Tento atribut je ve výchozím nastavení generovaného kódu.
Další informace o použití atributů viz Rozšíření metadat pomocí atributů.
Příklady
Obor názvů SampleClassLib obsahuje třídu DivideClass, která obsahuje metodu chcete testovat. Tato metoda se nazývá DivideMethod().
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
Následující kód obsahuje třídu DivideClassTest test zkušební metoda se nazývá DivideMethodTest. Tento kód obsahuje také 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 TestInitialize na metodu Initialize().
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
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.