Skip to content

neotest

项目核心内容总结:
Neotest 是一个用于 Neovim 的测试工具,支持运行、调试、收集测试结果,并提供丰富的可视化功能。

功能与特性:

  1. 测试运行与调试:支持运行单个测试、当前文件或整个项目,可通过 integrated(集成策略)或 dap(调试策略)执行测试,调试需配合 nvim-dap。
  2. 结果展示:提供输出窗口、输出面板、摘要窗口等,实时显示测试结果、错误信息及测试结构。
  3. 诊断与状态提示:在代码中直接显示错误位置,测试状态(如通过、失败)通过状态符号展示。
  4. 自定义适配器:支持通过解析测试文件、构建命令、收集结果等方式扩展适配器,适配不同语言和测试框架。
  5. 动态监控:文件修改后自动重新运行相关测试。

使用方法:

  • 运行测试:require("neotest").run.run()
  • 调试测试:require("neotest").run.run({strategy = "dap"})
  • 停止测试:require("neotest").run.stop()
  • 查看结果:通过 :h neotest.output 等命令打开输出窗口或摘要面板。

适配器开发要点:
需实现解析测试文件、构建运行命令、收集结果三项核心功能,支持通过 Treesitter 查询或正则表达式提取测试结构。