9

我在我们的一个解决方案中使用log4net。该解决方案包含多个项目,每个项目都是一个单元测试项目。我正在使用本文中描述的方法日志记录添加到各种项目中。

我正在使用滚动文件附加程序将所有测试记录到一个基于大小滚动的日志文件中。

我的每个项目都成功记录到日志文件中,但是,如果我从多个项目(多个测试程序集)运行测试,我只会看到第一个程序集的日志记录。

例如,如果我从Project_A和运行测试Project_B,我只会看到来自的日志语句Project_A(假设Project_A's测试在测试运行中首先运行)

我已经检查过的事情:

  • 我在每个项目中都包含了配置文件作为链接

  • 我已经添加[assembly: log4net.Config.XmlConfigurator(ConfigFile = "Log4Net.config", Watch = true)]到每个项目的程序集文件中。

  • 我已经分别测试了每个项目,以确保它们在自己运行时成功登录。

4

1 回答 1

9

弄清楚了这个问题,并认为我会为处于同样困境的其他人报告。

每个项目的链接配置文件的属性需要从 Copy Never 更改为 Copy If Newer。一旦我进行了这个更改,所有项目都按预期记录到同一个文件中。

于 2013-01-14T17:52:18.337 回答