Classe ExpectedExceptionAttribute
Indica che è prevista durante l'esecuzione del metodo di test.questa classe non può essere ereditata.
Gerarchia di ereditarietà
System.Object
System.Attribute
Microsoft.VisualStudio.TestTools.UnitTesting.ExpectedExceptionBaseAttribute
Microsoft.VisualStudio.TestTools.UnitTesting.ExpectedExceptionAttribute
Spazio dei nomi: Microsoft.VisualStudio.TestTools.UnitTesting
Assembly: Microsoft.VisualStudio.QualityTools.UnitTestFramework (in Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll)
Sintassi
'Dichiarazione
<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
Il tipo ExpectedExceptionAttribute espone i seguenti membri.
Costruttori
Nome | Descrizione | |
---|---|---|
ExpectedExceptionAttribute(Type) | Inizializza una nuova istanza di ExpectedExceptionAttribute classe con un'eccezione prevista. | |
ExpectedExceptionAttribute(Type, String) | Inizializza una nuova istanza di ExpectedExceptionAttribute classe con e tipo di eccezione previsto e un messaggio che descrive l'eccezione. |
In alto
Proprietà
Nome | Descrizione | |
---|---|---|
AllowDerivedTypes | ||
ExceptionType | ottiene il tipo di eccezione previsto. | |
NoExceptionMessage | Infrastruttura. (Ereditato da ExpectedExceptionBaseAttribute) | |
TestContext | Infrastruttura. (Ereditato da ExpectedExceptionBaseAttribute) | |
TypeId | Quando implementato in una classe derivata, ottiene un identificatore univoco per questa Attribute. (Ereditato da Attribute) |
In alto
Metodi
Nome | Descrizione | |
---|---|---|
Equals | Infrastruttura. Restituisce un valore che indica se l'istanza è uguale a un oggetto specificato. (Ereditato da Attribute) | |
GetHashCode | Restituisce il codice hash per l'istanza. (Ereditato da Attribute) | |
GetType | Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) | |
IsDefaultAttribute | Una volta sottoposto a override in una classe derivata, indica se il valore di questa istanza è il valore predefinito per la classe derivata. (Ereditato da Attribute) | |
Match | Una volta sottoposto a override in una classe derivata, restituisce un valore che indica se questa istanza equivale a un oggetto specificato. (Ereditato da Attribute) | |
ToString | Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) | |
Verify | Infrastruttura. (Ereditato da ExpectedExceptionBaseAttribute) |
In alto
Implementazioni esplicite dell'interfaccia
Nome | Descrizione | |
---|---|---|
_Attribute.GetIDsOfNames | Esegue il mapping di un set di nomi a un set corrispondente di ID dispatch. (Ereditato da Attribute) | |
_Attribute.GetTypeInfo | Recupera le informazioni sui tipi per un oggetto, che può essere utilizzato per ottenere informazioni sul tipo per un'interfaccia. (Ereditato da Attribute) | |
_Attribute.GetTypeInfoCount | Recupera il numero di interfacce di informazioni sui tipi che un oggetto garantisce (0 o 1). (Ereditato da Attribute) | |
_Attribute.Invoke | Fornisce l'accesso a proprietà e metodi esposti da un oggetto. (Ereditato da Attribute) |
In alto
Note
Questo attributo viene utilizzato per verificare se è prevista un'eccezione viene generata un'eccezione.Il metodo di test avrà esito positivo se l'eccezione prevista viene generata un'eccezione.Il test avrà esito negativo se l'eccezione generata eredita dall'eccezione prevista.
Se un test dispone sia di un attributo ExpectedException che Assert l'istruzione, l'uno o l'altro può causare l'esito negativo del test.Per determinare se l'attributo o l'istruzione ha causato un esito negativo del test, fare doppio clic sul risultato del test per aprire la pagina dei dettagli dei risultati per il test.Per ulteriori informazioni sui risultati dei test, vedere Risultati test ha restituito.
Questo attributo può essere specificato in un metodo.Può esistere un'unica istanza di questo attributo su un metodo.
per ulteriori informazioni su come utilizzare gli attributi, vedere Estensione di metadati mediante attributi.
Esempi
La classe seguente contiene il metodo per verificare:
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
Il seguente metodo di test verifica il metodo di divisione fra dell'oggetto di DivisionClass.Verifica l'esistenza di un oggetto 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
Codice thread safe
Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.
Vedere anche
Riferimenti
Spazio dei nomi Microsoft.VisualStudio.TestTools.UnitTesting