Sto testando Entity Framework 4 (.NET 4 beta 2) con le relative Self-Tracking entities(dalla CTP 2) ed ho pensato di testare tramite un progetto di Unit Test.
Sto usando Visual Studio 2010, ma la stessa cosa vale anche per la versione 2008.
Nel testare direttamente un DAL e comunque in linea di principio se vogliamo testare dati che stanno realmente su un database(e quindi senza ricorrere a sistemi di mocking) è necessario poter lanciare uno script sql che all’inizio dei test prepari l’ambiente sul database(potresse essere valida anche l’esecuzione di uno script di cleanup alla fine del test).
Se create un progetto di tipo Test Project con VS, e fate doppio click su file .testrunconfig(vs2008) oppure .testsettings(vs2010) potete impostare una serie di configurazione per lo Unit Test tra cui “Setup and Cleanup Scripts”.
In “Setup and Cleanup Scripts” potete andare ad impostare un vostro file .bat che contiene internamente l’esecuzione di uno script sql tramite il comando SqlCmd.
Ho trovato queste indicazioni qui, metre qui riferimenti all’uso di SqlCmd.
Spero sia utile.