Klasa ExpectedExceptionAttribute
Wskazuje, że wyjątek jest oczekiwany podczas wykonywania metody badania.Klasa ta nie może być dziedziczona.
Hierarchia dziedziczenia
System.Object
System.Attribute
Microsoft.VisualStudio.TestTools.UnitTesting.ExpectedExceptionBaseAttribute
Microsoft.VisualStudio.TestTools.UnitTesting.ExpectedExceptionAttribute
Przestrzeń nazw: Microsoft.VisualStudio.TestTools.UnitTesting
Zestaw: Microsoft.VisualStudio.QualityTools.UnitTestFramework (w Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll)
Składnia
'Deklaracja
<AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple := False, Inherited := True)> _
Public NotInheritable Class ExpectedExceptionAttribute _
Inherits ExpectedExceptionBaseAttribute
[AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple = false, Inherited = true)]
public sealed class ExpectedExceptionAttribute : ExpectedExceptionBaseAttribute
[AttributeUsageAttribute(AttributeTargets::Method, AllowMultiple = false, Inherited = true)]
public ref class ExpectedExceptionAttribute sealed : public ExpectedExceptionBaseAttribute
[<Sealed>]
[<AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple = false, Inherited = true)>]
type ExpectedExceptionAttribute =
class
inherit ExpectedExceptionBaseAttribute
end
public final class ExpectedExceptionAttribute extends ExpectedExceptionBaseAttribute
Typ ExpectedExceptionAttribute uwidacznia następujące elementy członkowskie.
Konstruktorzy
Nazwa | Opis | |
---|---|---|
ExpectedExceptionAttribute(Type) | Inicjuje nowe wystąpienie ExpectedExceptionAttribute klasy z oczekiwany wyjątek. | |
ExpectedExceptionAttribute(Type, String) | Inicjuje nowe wystąpienie ExpectedExceptionAttribute klasy i typ oczekiwany wyjątek i komunikat, który opisuje wyjątek. |
Początek
Właściwości
Nazwa | Opis | |
---|---|---|
AllowDerivedTypes | ||
ExceptionType | Pobiera typ oczekiwany wyjątek. | |
NoExceptionMessage | Infrastruktura. (Odziedziczone z ExpectedExceptionBaseAttribute). | |
TestContext | Infrastruktura. (Odziedziczone z ExpectedExceptionBaseAttribute). | |
TypeId | Po wdrożeniu w klasie pochodnej pobiera identyfikator unikatowy to Attribute. (Odziedziczone z Attribute). |
Początek
Metody
Nazwa | Opis | |
---|---|---|
Equals | Infrastruktura. Zwraca wartość, która wskazuje, czy to wystąpienie jest równa określonego obiektu. (Odziedziczone z Attribute). | |
GetHashCode | Zwraca kod skrótu dla tego wystąpienia. (Odziedziczone z Attribute). | |
GetType | Pobiera Type bieżącego wystąpienia. (Odziedziczone z Object). | |
IsDefaultAttribute | Gdy zastąpiony w klasie pochodnej, wskazuje, czy wartość to wystąpienie jest wartością domyślną dla klasy pochodnej. (Odziedziczone z Attribute). | |
Match | Gdy zastąpiony w klasie pochodnej, zwraca wartość wskazującą, czy to wystąpienie jest równa określonego obiektu. (Odziedziczone z Attribute). | |
ToString | Zwraca wartość typu ciąg, który reprezentuje bieżący obiekt. (Odziedziczone z Object). | |
Verify | Infrastruktura. (Odziedziczone z ExpectedExceptionBaseAttribute). |
Początek
Jawne implementacje interfejsu
Nazwa | Opis | |
---|---|---|
_Attribute.GetIDsOfNames | Zestaw nazw jest mapowany na odpowiedni zestaw identyfikatorów wysyłki. (Odziedziczone z Attribute). | |
_Attribute.GetTypeInfo | Pobiera informacje o typie dla obiektu, który można uzyskać informacji o typie dla interfejsu. (Odziedziczone z Attribute). | |
_Attribute.GetTypeInfoCount | Pobiera numer typu informacji interfejsów, że obiekt zawiera (0 lub 1). (Odziedziczone z Attribute). | |
_Attribute.Invoke | Zapewnia dostęp do właściwości i metod udostępnianych przez obiekt. (Odziedziczone z Attribute). |
Początek
Uwagi
Ten atrybut jest używany do testowania, czy wyjątek oczekiwane.Metoda badania będą przekazywać Jeśli oczekiwane wyjątek.Test zakończy się niepowodzeniem, jeśli wyjątek thrown dziedziczy oczekiwany wyjątek.
Jeżeli test ma zarówno atrybut ExpectedException i o Assert instrukcji, albo jedną może spowodować, że test zwróci błąd.Aby ustalić, czy atrybut lub instrukcja spowodował test zwróci błąd, kliknij dwukrotnie wynik badania, aby otworzyć stronę szczegółów wyników badania.Aby uzyskać więcej informacji na temat wyników badań, zobacz Test Results Reported.
Ten atrybut może być określona w metody.Może istnieć tylko jedno wystąpienie tego atrybutu metody.
Aby uzyskać więcej informacji na temat atrybutów, zobacz Rozszerzanie metadanych za pomocą atrybutów.
Przykłady
Poniższa klasa zawiera metoda badania:
using System;
namespace MyCSNamespace
{
public class DivisionClass
{
public int Divide(int numerator, int denominator)
{
return numerator / denominator;
}
}
}
Public Class DivisionClass
Public Function Divide(ByVal numerator As Integer, ByVal denominator As Integer) As Integer
Return numerator \ denominator
End Function
End Class
Następującej metody badawczej badania metody Divide obiektu DivisionClass.Badań istnienie DivideByZeroException.
using Microsoft.VisualStudio.TestTools.UnitTesting;
using MyCSNamespace;
namespace MyCSTestProject
{
[TestClass()]
public class DivisionClassTest
{
[TestMethod()]
[ExpectedException(typeof(System.DivideByZeroException))]
public void DivideTest()
{
DivisionClass target = new DivisionClass();
int numerator = 4;
int denominator = 0;
int actual;
actual = target.Divide(numerator, denominator);
}
}
}
Imports Microsoft.VisualStudio.TestTools.UnitTesting
Imports MyVBProject
<TestClass()> _
Public Class DivisionClassTest
<TestMethod()> _
<ExpectedException(GetType(System.DivideByZeroException), "MyMessage")> _
Public Sub DivideTest()
Dim target As DivisionClass = New DivisionClass
Dim numerator As Integer = 4
Dim denominator As Integer = 0
Dim actual As Integer
actual = target.Divide(numerator, denominator)
End Sub
End Class
Bezpieczeństwo wątku
Wszystkie publiczne static (Shared w języku Visual Basic) elementy członkowskie tego typu są bezpieczne dla wątków. Wystąpienia elementów członkowskich nie dają gwarancji bezpieczeństwa wątków.
Zobacz też
Informacje
Przestrzeń nazw Microsoft.VisualStudio.TestTools.UnitTesting