我在Java中进行单元测试,我想在测试中添加一些测试信息。
我想用Maven - mvn clean install –Pstaging
和Jenkins
我尝试使用Logger
:
private static final Logger LOG = LoggerFactory.getLogger(S2STest.class); and then
LOG.info("message")
并将其添加到pom.xml
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.6</version>
<scope>provided</scope>
</dependency>
但是,当我运行测试时,我没有看到任何信息。
如何在Maven和Jenkins中为测试添加信息?
答案 0 :(得分:1)
Jenkins默认不包含SLF4J实现。您可以看到in their pom
:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4jVersion}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-nop</artifactId>
<version>${slf4jVersion}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jdk14</artifactId>
<version>${slf4jVersion}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>${slf4jVersion}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>log4j-over-slf4j</artifactId>
<version>${slf4jVersion}</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.3</version>
</dependency>
因此,您需要做的是在您自己的pom中包含您自己的SLF4J实现,例如Log4J或Logback,或者通过使用{将其配置为使用slf4j-jdk14
实现{3}}。在前两种情况下,您还必须配置该框架的相应配置文件。
一旦你打开了你已经决定的这些日志框架中的任何一个,你就可以使用该配置生成日志信息的目标,并且你将拥有该文件。但是,深入了解究竟该怎么做的细节对于Stack Overflow而言是一个过于宽泛的问题;我建议选择一个并阅读他们的教程。