Domanda

Voglio testare l'applicazione ASP.NET utilizzando NUnit, ma sembra che la raccolta WebConfigurationManager.ConnectionStrings sia vuota durante l'esecuzione dalla GUI di NUnit.

Potresti dirmi come inizializzare questa raccolta (probabilmente nella funzione [SetUp] di [TestFixture])? Devo copiare Web.config da qualche parte?

Grazie!

È stato utile?

Soluzione

Se si dispone dell'assembly del test di unità denominato Company.Component.Tests.dll, accertarsi che Company.Component.Tests.dll.config sia presente con la stringa di connessione corretta.

Inoltre, potrebbe essere una buona idea disaccoppiare la classe del provider di connessione dalla configurazione, in modo da avere flessibilità nella persistenza (ovvero passare da * .config a qualcos'altro) e test più facili.

Guarda anche " Come NUnit trova i file di configurazione "

Altri suggerimenti

Il percorso del file .config di NUnit dipende da come è stato creato il file di progetto NUnit

Dove si trovano i file .config per i test NUnit è un po 'più complicato di quanto suggeriscano altri post qui. Ci sono impostazioni per questo nella finestra di dialogo Progetto / Modifica della GUI di NUnit. I valori predefiniti dipendono tutti da come è stato creato il file di progetto NUnit.

Quando si apre la GUI di NUnit e si seleziona File / Apri, quindi si seleziona un file DLL, viene impostato un nuovo progetto con le impostazioni per cercare un file di configurazione con lo stesso nome della DLL nella stessa directory. Quindi, se hai caricato \ bin \ debug \ MyTests.dll NUnit cerca \ bin \ Debug \ MyTests.dll.config per impostazione predefinita. L'unico problema è che quando si crea una build di rilascio è necessario creare un progetto NUnit separato.

Se hai creato il progetto NUnit selezionando File / NewProject, l'impostazione predefinita è cercare un file di configurazione con lo stesso nome del progetto NUnit. Quindi, se hai creato \ MyNUnitProject.nunit NUnit cerca \ MyNUnitProject.config per impostazione predefinita.

È probabile che tu abbia usato Visual Studio per creare un file \ App.config e bloccarlo nella cartella di origine per la tua dll di prova. Quando puoi eseguire il tuo progetto di test, questo viene copiato in \ bin \ Debug \ MyTests.dll.config o \ bin \ Release \ MyTests.dll.config a seconda della configurazione che hai hai selezionato. Se hai aperto MyTest.dll direttamente in NUnit, funzionerà bene, tuttavia se hai creato un nuovo progetto NUnit sei nei guai in quanto non cercherà questi file per impostazione predefinita.

Per risolvere il problema è necessario aprire la finestra di dialogo Progetto / Modifica nella GUI di NUnit e verificare di avere due Configurazioni Debug & amp; Rilasciare per abbinare il tuo progetto .Net. Al termine, è possibile selezionare la configurazione di debug e impostare ApplicationBase su bin \ Debug \ e impostare il nome del file di configurazione su MyTests.dll.config . Fai lo stesso per la configurazione della versione e via.

Puoi usare app.config per le librerie (dove presumo siano i tuoi test) e metterli lì.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top