我正在使用名为AssemblyTest.nunit的项目运行NUnit.该测试调用另一个使用log4net程序集的程序集.这是使用带有.net 2.0框架的nunit版本2.4.3.
在TestFixtureSetup中,我调用log4net.Config.XmlConfigurator.Configure()并收到以下错误:
System.Configuration.ConfigurationErrorsException: Configuration system failed to initialize ---> System.Configuration.ConfigurationErrorsException: Unrecognized configuration section log4net. (C:\path\to\assembly.dll.config line 7)
有没有办法解决这个问题,而无需将配置文件重命名为'AssemblyTest.config'?
我遇到了同样的问题,因为我忘了在configSections元素中添加log4net定义.
因此,如果要将log4net -elements放入app.config,则需要在配置文件的顶部包含configSections元素(告诉log4net -elements的定义位置).
试试这样:
...
我不知道为什么你们被困在配置文件中,对于nunit如果你想在nunit test runner的Text Output窗口中看到运行的日志,你需要做的就是遵循代码行,
BasicConfigurator.Configure();
最佳点添加此行是Test类的构造函数
例如
[TestFixture] public class MyTest { log4net.ILog log = log4net.LogManager.GetLogger(typeof(MyTest)); public MyTest() { BasicConfigurator.Configure(); } [SetUp] public void SetUp() { log.Debug(">SetUp"); } [TearDown] public void TearDown() { log.Debug(">TearDown"); } [Test] public void TestNothing() { log.Debug(">TestNothing"); } }