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

在Jest中如何禁用SuperTest REST调用的调试日志?(Strapi测试场景)

解决Strapi测试时禁用Debug日志的方法

Strapi的debug日志输出不受Jest的verbose配置管控,得从Strapi自身日志设置入手,以下几种方法可以解决:

  • 修改测试环境的Strapi全局配置
    找到项目中测试环境的服务器配置文件(比如config/env/test/server.js,若没有则新建;也可直接修改config/server.js并通过环境变量区分),调整日志级别:

    module.exports = ({ env }) => ({
      host: env('HOST', '0.0.0.0'),
      port: env.int('PORT', 1337),
      app: {
        keys: env.array('APP_KEYS'),
      },
      logger: {
        level: 'error', // 仅输出错误日志,debug级别的请求日志会被屏蔽
      },
    });
    
  • 在测试用例中动态调整日志级别
    不想修改全局配置的话,可在测试启动前临时切换Strapi的日志级别:

    beforeAll(async () => {
      await strapi.server.mount();
      strapi.log.level = 'error';
    });
    
  • 启用Jest的silent模式(慎用)
    在jest.config.js里添加silent: true,能抑制所有控制台输出,但会同时屏蔽测试本身的输出信息,适合只关心测试结果的场景:

    module.exports = {
      // 其他已有配置
      silent: true,
    };
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 13:01:03