You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Appium测试中,如何让Eclipse控制台仅显示System.out.print输出?

让Eclipse控制台仅显示自定义System.out输出的方法

当然可行,以下是几种实用的解决办法:

方法1:通过日志框架关闭非自定义输出

Appium的测试日志通常是通过Log4j、SLF4J这类日志框架输出的,和你用System.out.print的输出流相互独立。你可以修改日志配置文件,将框架日志的输出级别调至最高或直接关闭:

  • 如果项目用Log4j,修改log4j.properties:
    # 关闭根日志器,阻止所有框架日志输出到控制台
    log4j.rootLogger=OFF
    
  • 如果是Logback,修改logback.xml,将控制台appender的日志级别设置为一个不存在的级别,或者直接移除控制台输出的appender。

方法2:用Eclipse控制台过滤器精准筛选

Eclipse自带控制台过滤功能,可以直接过滤掉不需要的日志行:

  • 打开控制台视图,点击右上角的漏斗图标(过滤器)
  • 勾选「启用过滤器」,然后添加过滤规则:
    • 选择「排除所有包含以下字符串的行」,添加Appium日志常见的前缀(比如[Appium]、[HTTP]、[WD Proxy]等)
    • 如果你自己的输出有固定前缀(比如[MyTestLog]),也可以选择「仅包含包含以下字符串的行」,只保留你的自定义输出

方法3:重定向System.err到文件

很多Appium的运行日志会输出到System.err而非System.out,你可以把System.err的内容重定向到文件,只留System.out在控制台显示:

  • 在测试代码的入口处添加以下代码:
    import java.io.FileOutputStream;
    import java.io.PrintStream;
    
    public class TestSetup {
        static {
            try {
                // 将System.err输出到指定文件
                System.setErr(new PrintStream(new FileOutputStream("appium_logs.log")));
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 21:23:19