Quando si migra il proprio codice da NUnit a Team Test (Unit testing) e' necessario prestare molta attenzione non solo agli attributi ed al nemaspace (in questo caso non avrebbe successo la compilazione) ma anche al differente comportamento degli Assert.
Per differente comportamento intendo due tipologie di risultato classificabili come effetti indesiderati e come malfunzionamenti veri e propri.
Tanto per citare un esempio di effetto indesiderato possiamo prendere il caso dell'Assert.AreEqual su due stringhe. Nel caso di NUnit se le stringhe sono differenti verra' evidenziato l'indice del primo elemento differente. Con Team Test sapremo solo che sono differenti, ma non dove. Per una stringa corta non fa una gran differenza, ma se avete un testo di 10000 caratteri allora la differenza si fa notare.
Come esempio di malfunzionamento invece possiamo citare la comparazione di due Array. Il seguente codice:
int[] a1 = new int[] { 1, 2, 3 };
int[] a2 = new int[] { 1, 2, 3 };
Assert.AreEqual(a1, a2);
per NUnit va tutto bene, i due vettori sono uguali e contengono gli stessi elementi (purche' si usi NUnit 2.2 o superiore), per VSTT non va bene perche' compara i soli puntatori che ovviamente sono diversi.
E' fondamentale quindi, durante la migrazione riverificare il codice di test escludendo i falsi positivi e negativi magari implementandosi delle proprie procedure di Assert.