如何使用Karma + angular添加调试日志消息以及如何禁用它们?

and*_*ier 11 logging unit-testing angularjs karma-runner

当我用Karma运行角度单元测试时,输出包含:

  • Karma记者的输出(例如'SUCCESS Module X做到了这一点')
  • 单元测试日志消息(通过console.log记录)

卡玛输出并没有包含:

  • 应用程序日志消息(通过$ log记录) - 仅当我通过console.log而不是$ log登录时

我可以选择记录"强度"吗?

我想区分:

默认模式:仅显示Karma报告输出,但禁止显示所有应用程序日志消息或单元测试日志消息.

单元测试调试模式:显示Karma报告输出以及所有日志消息(应用程序日志消息以及单元测试日志消息).

是否可以以某种方式记录单元测试消息,以便可以轻松地"切换"打开和关闭,以选择上述用例之一(默认模式与单元测试调试模式)?

我的"想法"会是这样的:

默认模式:

karma --log-level=none
Run Code Online (Sandbox Code Playgroud)

单元测试调试模式:

karma --log-level=debug
Run Code Online (Sandbox Code Playgroud)

这可能吗?

SO *_*ser 5

您可以创建基本 karma 配置。比创建两个基于基础但覆盖 logLevel 的 karma 配置:

logLevel: config.LOG_DISABLE logLevel: config.LOG_DEBUG.

然后在您的任务管理器配置文件中创建两个单独的任务,例如Gruntfile.js使用这些 karma 配置。