如何使用 Quarkus 拦截日志消息以进行测试

时间:2021-07-14 09:45:52

标签: logging quarkus

Quarkus 新手问题:我有一个 A 类,它使用默认的 Quarkus 日志框架记录一些东西(我相信它是 jboss 日志)。接下来我想为 A 编写一个测试类,它必须能够验证 A 生成了哪些日志消息。我怎样才能用 Quarkus 做到这一点?

2 个答案:

答案 0 :(得分:1)

您需要使用 io.quarkus.test.InMemoryLogHandler 并将其添加到 rootLogger。这会将日志消息存储在内存中,以便以后可以随时访问。

例如,请查看此处:https://github.com/quarkusio/quarkus/commit/57fb0cc57bf435bbdb86ca0614bf03dc04bea383

答案 1 :(得分:1)

感谢罗伯托的好建议。但是,我开始使用 LogCaptor 库 (https://github.com/Hakky54/log-captor),它非常适合我的目的。它开箱即用,无需大惊小怪。