Cobertura で単体テストを実行する Ant スクリプトをセットアップしました。何らかの理由で、Cobertura から log4j DEBUG 出力を取得しています。思いつく限りの診断ツールを使って何時間もこれを見つめてきましたが、なぜこれが起こっているのかわかりません。
SysInternals ProcessMonitor を使用して、「log4j.properties」または「log4j.xml」を手動でロードしたかどうかを確認しました。何も見つかりませんでした。
Ant で詳細なクラスの読み込みをオンにしましたが、「log4j.properties」または「log4j.xml」のいずれかが読み込まれるのを見たことはありません。「cobertura.jar」には次の内容を持つ「log4j.properties」があることがわかっているため、これはフォークされたプロセスに渡されなかったことを示しています。
# set default logging level and appender
log4j.rootCategory=WARN, console
#log4j.category.net.sourceforge.cobertura=WARN, console
#log4j.category.net.sourceforge.cobertura.check=DEBUG, console
#log4j.category.net.sourceforge.cobertura.coverage=DEBUG, file
#log4j.category.net.sourceforge.cobertura.coverage.CoverageDataFactory=INFO, file
#log4j.category.net.sourceforge.cobertura.coverage.SaveInstrumentationTimer=DEBUG, file
#log4j.category.net.sourceforge.cobertura.merge=DEGUG, console
#log4j.category.net.sourceforge.cobertura.reporting=DEBUG, file
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%-6p %M, %m%n
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=cobertura.log
log4j.appender.file.MaxFileSize=3000KB
log4j.appender.file.MaxBackupIndex=3
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d %-2p [%t] %c{3} - %m - (%F:%L) %n
ここでの唯一の無関係な問題は、"DEGUG" のスペルミスですが、それはコメントアウトされています。
これが他にどのように起こっているのかわかりません。私は Cobertura のメンテナの 1 人に尋ねてきましたが、彼はなぜこれが起こっているのかわかりません。