Utilizzo di NUnit 2.5.10
, Sto testando un codice che fa riferimento a una libreria contenente un tipo di eccezione di base. TIBCO.EMS.NamingException
, da cui derivano altri tipi di eccezione, in particolare TIBCO.EMS.InvalidNameException
e TIBCO.EMS.NameNotFoundException
.Come posso ottenere l'attributo ExpectedException di NUnit per rilevare la classe base di un'eccezione?
Vorrei utilizzare l'attributo ExpectedException di NUnit per riconoscere quando è stata generata un'eventuale sottoclasse derivante da TIBCO.EMS.NamingException
.
mi può facilmente rilevare quando l'eccezione specifico è stato gettato:
[ExpectedException("TIBCO.EMS.NameNotFoundException")]
or
[ExpectedException(Typeof(TIBCO.EMS.InvalidNameException))]
ma vorrei fare in qualche modo NUnit "prevedere" se qualsiasi sottoclasse di TIBCO.EMS.NamingException
è stato gettato.
Cercando direttamente non funziona:
[ExpectedException("TIBCO.EMS.NamingException")]
or
[ExpectedException(typeof(TIBCO.EMS.NamingException))]
Tutte le idee?
Che ha funzionato perfettamente! Ero così innamorato dell'attributo ExpectedException, che ho usato così utile tante volte prima, che mi è mancato tornare a una parte diversa della documentazione. Stavo cercando di fare un guanto fare il dovere di uno stivale! Grazie, @silev per avermi insegnato un nuovo trucco utile! –
Ottimo, sei il benvenuto! Mi piace anche la versione generica Assert.Throws() e molto utile Assert.DoesNotThrow (() => {...}) –
sll