JBoss 记录 Java 单元测试?
JBoss Logging for Java Unit Test?
我继承了一些 java 显式使用 JBoss 日志记录实现的代码。我知道这通常被配置为 JBoss 子系统,并且当 运行 在服务器上时,我能够很好地观察各种日志调整操作。但是,我没有得到任何单元测试的日志消息输出。我在测试类路径中放置了几个配置文件,包括:
- logging.properties
- log4j.xml
- log4j2.xml
但还没有看到任何结果。有没有人能够配置 JBoss 日志系统,使它们在单元测试中在容器外可见?这可能吗? logging configuration guide 没有说明如何做到这一点。
我将尝试使用 Arquillian Test Cases 测试代码,它的特点是可以部署部分代码,仅在 "real environment" 中进行测试。
它在很多 RH JBoss 文档中被推荐。
您可以尝试重用您的 junit 代码,并使用本指南修改它们:http://arquillian.org/guides/getting_started/
我不是那种技术的大师。希望对你有帮助。
您可以使 log4j.xml 工作,但您需要确保在测试类路径上有一个兼容的 vanilla log4j 版本,例如1.2.17,并且您没有在类路径上没有读取 log4j.xml.
的修改版本 log4j-jboss-logmanager
详情。
参见。
我拿这个:
I would recommend you configure the log manager using the logging
subsystem provided with the application server. This is the only way
to configure the server logging.
意味着在测试中配置 JBoss 日志管理器基本上是不可能的,因为没有服务器子系统配置,也没有任何东西可以解析它。也许您可以通过编程方式配置它,但这太不方便了。
所以这让我们使用带有 log4j 的 JBoss 日志外观作为日志管理器,可以使用 log4j.xml.
轻松配置
现在,我想起来了,在 Wildfly 中有一个 logging.properties 文件,它在日志子系统初始化之前配置日志记录。这意味着您可以使用 logging.properties 配置 JBoss 日志管理器,您只需要将相关的 jar 放在测试类路径中,可能是 jboss-logmanager 和 log4j-jboss-日志管理器。
我继承了一些 java 显式使用 JBoss 日志记录实现的代码。我知道这通常被配置为 JBoss 子系统,并且当 运行 在服务器上时,我能够很好地观察各种日志调整操作。但是,我没有得到任何单元测试的日志消息输出。我在测试类路径中放置了几个配置文件,包括:
- logging.properties
- log4j.xml
- log4j2.xml
但还没有看到任何结果。有没有人能够配置 JBoss 日志系统,使它们在单元测试中在容器外可见?这可能吗? logging configuration guide 没有说明如何做到这一点。
我将尝试使用 Arquillian Test Cases 测试代码,它的特点是可以部署部分代码,仅在 "real environment" 中进行测试。 它在很多 RH JBoss 文档中被推荐。
您可以尝试重用您的 junit 代码,并使用本指南修改它们:http://arquillian.org/guides/getting_started/
我不是那种技术的大师。希望对你有帮助。
您可以使 log4j.xml 工作,但您需要确保在测试类路径上有一个兼容的 vanilla log4j 版本,例如1.2.17,并且您没有在类路径上没有读取 log4j.xml.
的修改版本 log4j-jboss-logmanager详情。
参见。 我拿这个:
I would recommend you configure the log manager using the logging subsystem provided with the application server. This is the only way to configure the server logging.
意味着在测试中配置 JBoss 日志管理器基本上是不可能的,因为没有服务器子系统配置,也没有任何东西可以解析它。也许您可以通过编程方式配置它,但这太不方便了。
所以这让我们使用带有 log4j 的 JBoss 日志外观作为日志管理器,可以使用 log4j.xml.
轻松配置现在,我想起来了,在 Wildfly 中有一个 logging.properties 文件,它在日志子系统初始化之前配置日志记录。这意味着您可以使用 logging.properties 配置 JBoss 日志管理器,您只需要将相关的 jar 放在测试类路径中,可能是 jboss-logmanager 和 log4j-jboss-日志管理器。