2010-07-13 10 views

risposta

12

Si potrebbe decorare la vostra unit test con l'attributo [ExpectedException]:

[ExpectedException(typeof(ArgumentException))] 
[TestMethod] 
public void Foo() 
{ 
    throw new ArgumentException("foo"); 
} 

Non chiedere se circa affermare il messaggio di eccezione :-)

+0

Quindi, perché i test unitari non dovrebbero testare più di una cosa. Cosa succede se hai provato Try/Catch e poi hai elaborato l'eccezione rilevata con un Assert? –

+1

Beh, certo che potresti farlo ma in questo caso scriverò, fammi contare, altre 7 righe di codice (probabilmente un po 'meno se metti il ​​'{' sulla stessa riga), e ogni riga di codice scrivi, nascondi un potenziale errore e diminuisci la leggibilità del codice, quindi perché farlo quando puoi evitarlo :-) –

Problemi correlati