You need to enable JavaScript to run this app. QAF如何关闭控制台输出的WebDriverCommandLogger INFO级别日志
优惠活动
大模型
产品
解决方案
定价
更多

QAF如何关闭控制台输出的WebDriverCommandLogger INFO级别日志

解决方案

方案1:修正log4j.properties配置(推荐)

你当前配置未生效的核心原因是:log4j.rootCategory=OFF 虽然关闭了根日志,但QAF的特定类日志是单独配置了输出级别,且你配置里还有log4j.logger.org.apache.axis.enterprise=FATAL, CONSOLE 绑定了控制台输出,另外目标日志WebDriverCommandLogger属于com.qmetry.qaf.automation.ui包,需要单独指定级别关闭。
直接在你现有的log4j.properties中添加以下2行配置即可:

# 单独关闭WebDriverCommandLogger的所有日志
log4j.logger.com.qmetry.qaf.automation.ui.WebDriverCommandLogger=OFF
# 若要完全禁用所有控制台输出,直接修改控制台输出阈值为OFF
log4j.appender.CONSOLE.Threshold=OFF

如果要彻底关闭所有控制台日志,还可以注释掉所有配置中绑定了CONSOLE的logger行,比如注释掉log4j.logger.org.apache.axis.enterprise=FATAL, CONSOLE这行。

方案2:Java代码强制关闭(适合配置加载失败的场景)

在测试用例执行前的初始化逻辑(比如测试基类的@BeforeSuite方法,或者项目启动监听器)中添加以下代码,直接强制修改日志级别:

import org.apache.log4j.Logger;
import org.apache.log4j.Level;

// 关闭指定类的日志
Logger commandLogger = Logger.getLogger("com.qmetry.qaf.automation.ui.WebDriverCommandLogger");
commandLogger.setLevel(Level.OFF);

// 如果要完全关闭所有控制台日志,可以直接移除ConsoleAppender
Logger rootLogger = Logger.getRootLogger();
rootLogger.removeAppender("CONSOLE");

额外检查项

你当前pom里已经指定了log4j配置路径是file:///${resource.dir}/log4j.properties,确认resources目录下的log4j.properties在maven编译后被正确打包到classes根目录即可,不需要移动到src目录。

内容的提问来源于stack exchange,提问作者Renish

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.13 17:27:02