私のオープン ソース .NET ソフトウェアは、Log4net を問題なく使用しています。
しかし、NUnit でテストすると、2 回目のテストで以下のエラーが発生します。たとえば、テストを 2 回実行すると、テストが何であれ、1 回目は成功し、2 回目は失敗します。
System.IO.IOException : 別のプロセスで使用されているため、プロセスはファイル 'C:\Users\win7pro32bit\AppData\Roaming\cmissync\debug_log.txt' にアクセスできません。
ログ ファイルは、log4net.Config.XmlConfigurator.Configure(path) への静的呼び出しによって作成されます。
どうにかして TearDown でログ ファイルを閉じる必要があると思いますが、log4net の「閉じる」メソッドが表示されません。
log4net構成に追加<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
すると問題は解決しますが、これによりパフォーマンスが低下するため、本番コードに影響を与えないテスト側のソリューションをお勧めします.