ExpectedExceptionAttribute (Clase)
Indica que se espera una excepción durante la ejecución del método de prueba. Esta clase no puede heredarse.
Jerarquía de herencia
System.Object
System.Attribute
Microsoft.VisualStudio.TestTools.UnitTesting.ExpectedExceptionBaseAttribute
Microsoft.VisualStudio.TestTools.UnitTesting.ExpectedExceptionAttribute
Espacio de nombres: Microsoft.VisualStudio.TestTools.UnitTesting
Ensamblado: Microsoft.VisualStudio.QualityTools.UnitTestFramework (en Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll)
Sintaxis
'Declaración
<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
El tipo ExpectedExceptionAttribute expone los siguientes miembros.
Constructores
Nombre | Descripción | |
---|---|---|
ExpectedExceptionAttribute(Type) | Inicializa una instancia nueva de la clase ExpectedExceptionAttribute con una excepción esperada. | |
ExpectedExceptionAttribute(Type, String) | Inicializa una instancia nueva de la clase ExpectedExceptionAttribute con un tipo de excepción esperado y un mensaje que describe la excepción. |
Arriba
Propiedades
Nombre | Descripción | |
---|---|---|
AllowDerivedTypes | ||
ExceptionType | Obtiene el tipo de la excepción esperada. | |
NoExceptionMessage | Infraestructura. (Se hereda de ExpectedExceptionBaseAttribute). | |
TestContext | Infraestructura. (Se hereda de ExpectedExceptionBaseAttribute). | |
TypeId | Cuando se implementa en una clase derivada, obtiene un identificador único para este Attribute. (Se hereda de Attribute). |
Arriba
Métodos
Nombre | Descripción | |
---|---|---|
Equals | Infraestructura. Devuelve un valor que indica si esta instancia equivale a un objeto especificado. (Se hereda de Attribute). | |
Finalize | Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por la recolección de elementos no utilizados. (Se hereda de Object). | |
GetHashCode | Devuelve el código hash de esta instancia. (Se hereda de Attribute). | |
GetType | Obtiene el objeto Type de la instancia actual. (Se hereda de Object). | |
IsDefaultAttribute | Cuando se reemplaza en una clase derivada, indica si el valor de esta instancia es el valor predeterminado para la clase derivada. (Se hereda de Attribute). | |
Match | Cuando se reemplaza en una clase derivada, devuelve un valor que indica si esta instancia es igual a un objeto especificado. (Se hereda de Attribute). | |
MemberwiseClone | Crea una copia superficial del objeto Object actual. (Se hereda de Object). | |
RethrowIfAssertException | Produce la excepción de nuevo si se trata de AssertFailedException o AssertInconclusiveException. (Se hereda de ExpectedExceptionBaseAttribute). | |
ToString | Devuelve una cadena que representa el objeto actual. (Se hereda de Object). | |
Verify | Infraestructura. (Se hereda de ExpectedExceptionBaseAttribute). |
Arriba
Implementaciones explícitas de interfaces
Nombre | Descripción | |
---|---|---|
_Attribute.GetIDsOfNames | Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío. (Se hereda de Attribute). | |
_Attribute.GetTypeInfo | Obtiene la información de tipos de un objeto, que puede utilizarse para obtener la información de tipos de una interfaz. (Se hereda de Attribute). | |
_Attribute.GetTypeInfoCount | Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1). (Se hereda de Attribute). | |
_Attribute.Invoke | Proporciona acceso a las propiedades y los métodos expuestos por un objeto. (Se hereda de Attribute). |
Arriba
Comentarios
Este atributo se utiliza para comprobar si se inicia una excepción esperada. El método de prueba es correcto si se inicia la excepción esperada. Se producirá un error en la prueba si la excepción iniciada hereda de la excepción esperada.
Si una prueba tiene un atributo ExpectedException y una instrucción Assert, cualquiera de los dos puede provocar un error en la prueba. Para determinar si el error fue provocado por el atributo o por la instrucción, haga doble clic en el resultado de la prueba para abrir la página de resultados para esa prueba. Para obtener más información acerca de los resultados de pruebas, vea Test Results Reported.
Este atributo puede especificarse en un método. Solo puede haber una instancia de este atributo en un método.
Para obtener más información acerca de cómo utilizar los atributos, vea Extender metadatos mediante atributos.
Ejemplos
La clase siguiente contiene el método que se va a probar:
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
El siguiente método prueba el método Divide del objeto DivisionClass. Prueba la existencia de una 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
Seguridad para subprocesos
Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.
Vea también
Referencia
Microsoft.VisualStudio.TestTools.UnitTesting (Espacio de nombres)