Se un assembly contiene un file app.config, ConfigurationManager
lo caricherà fino a quando si trova nella stessa directory del progetto NUnit in esecuzione tramite NUnit-Gui. Per illustrare considerare la seguente struttura di cartelle.Come si ordina a NUnit di caricare il file dll.config di un assieme da una directory specifica?
+ TestFolder
testProject.nunit
+ AssemblyAFolder
assemblyA.dll
assemblyA.dll.config
+ AssemblyBFolder
assemblyB.dll
assemblyB.dll.config
Sia AssemblyA
e AssemblyB
codice di esercizio che mette in ConfigurationManager
. Se eseguo questi assembly di test in modo indipendente in NUnit-Gui, ConfigurationManager
risolverà correttamente i file di configurazione locali.
Tuttavia, se carico testProject.nunit
in NUnit-Gui (che contiene i riferimenti a entrambi AssemblyA
e AssemblyB
), ConfigurationManager
cerca il file di configurazione in TestFolder
indipendentemente da quale di montaggio è attualmente in esecuzione.
C'è un modo per indirizzare NUnit per ricaricare la configurazione dell'applicazione su quella presente nella directory dell'assembly corrente?
Ecco il contenuto della testProject.nunit
:
<NUnitProject>
<Settings activeconfig="Debug" />
<Config name="Debug" binpathtype="Auto">
<assembly path="AssemblyAFolder\assemblyA.dll" />
<assembly path="AssemblyBFolder\assemblyB.dll" />
</Config>
</NUnitProject>
Non è una risposta esatta, ma è possibile unire i due file di configurazione e crearne uno per l'intero progetto di test? – TrueWill
Fortunatamente, questo dovrebbe funzionare nel mio caso poiché sto leggendo sezioni di configurazione distinte in ogni assembly.Sono curioso di sapere se esiste un approccio migliore o più generale. –