代码之家  ›  专栏  ›  技术社区  ›  Mike Baranczak

在TestNG中设置应用程序日志级别

  •  1
  • Mike Baranczak  · 技术社区  · 14 年前

    我有一个使用Commons日志记录的应用程序。它是用Maven构建的,使用TestNG进行测试。我试着在测试期间微调日志级别,但没有任何运气-无论我做什么,所有的东西都被设置为信息。我试着创造一个日志记录.properties文件在类路径上,它什么也不做。我还创建了一个log4测试属性文件-这一个正在被读取(我知道这是因为TestNG在我故意引入语法错误之后显示了一个错误),但是其中的设置没有任何效果。

    有什么建议吗?


    编辑:嗯,我还没有弄清楚潜在的问题(为什么java.util.logging日志忽略了我配置它的尝试),但是我可以通过在测试期间使Log4j可用,然后配置它来获得我想要的。我要结束这个问题,因为我现在真的不在乎。

    2 回复  |  直到 14 年前
        1
  •  1
  •   Ryan Reynolds    10 年前

    我找到了解决办法。创建自定义日志记录.properties在src/test/resources中,然后在setup调用中,按如下方式加载:

    @BeforeClass(alwaysRun = true)
    protected void setUp() throws SecurityException, IOException
    {
        FileInputStream fis = new FileInputStream(BaseRestTest.class.getResource("/logging.properties").getFile());
        LogManager.getLogManager().readConfiguration(fis);
    }
    

    这似乎是在TestNG掠夺根日志之后重新配置它。

        2
  •  0
  •   Cedric Beust    13 年前

    迈克,

    您可以在测试.xml:

    <suite verbose="3"...  (up to 10)
    

    TestNG不使用Log4J,也不使用java.util.logging日志.