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

如何调试Kaocha测试?能否从REPL直接执行测试进行调试?

调试 Kaocha 测试的方法

从 REPL 直接执行测试

这是调试测试最直接的方式,你可以精准运行单个测试或指定命名空间的测试:

  • 先加载测试命名空间:
    (require '[your.test.namespace :as t] :reload)
    
  • 运行单个测试函数:
    (t/your-test-function)
    
  • 运行整个命名空间的测试:
    (clojure.test/run-tests 'your.test.namespace)
    
  • 利用 Kaocha 自带的 REPL 工具函数,还能按测试套件运行:
    (require '[kaocha.repl :as k])
    ;; 运行所有测试
    (k/run)
    ;; 运行指定套件(比如 :unit)
    (k/run :unit)
    ;; 运行指定命名空间
    (k/run 'your.test.namespace)
    

结合调试工具使用

在测试或被测代码中插入断点,配合 REPL 调试:

  • 如果使用 CIDER(Emacs)或 IntelliJ Cursive,直接在代码行设置断点,然后从 REPL 运行测试,程序会在断点处暂停,你可以检查变量、步进执行。
  • 也可以用 clojure.tools.namespace.repl/refresh 重新加载代码,配合调试库的暂停函数(比如 (break))手动触发断点。

Kaocha 调试插件的简单用法

如果你需要更详细的测试运行信息,可启用 Kaocha 的调试插件:

  • 在 tests.edn 配置文件中添加插件:
    #kaocha/v1
    {:plugins [:kaocha.plugin.debug]}
    
  • 运行 Kaocha 时会输出更详细的调试日志,帮助定位测试执行中的问题,比如哪些测试被选中、执行顺序、失败时的上下文信息。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 17:57:24