我正在使用 “ go test -v ”运行一堆单元测试。我想用delve调试它们。当我尝试运行调试器时,出现 “无法调试非主程序包”
错误。因此,如何使用delve调试器调试单元测试?
用途dlv test
:
$ dlv test -- -test.v
Type 'help' for list of commands.
(dlv) continue
=== RUN TestReadFileError
--- PASS: TestReadFileError (0.00s)
=== RUN TestReadFile
--- PASS: TestReadFile (0.00s)
[..]
PASS
Process 8014 has exited with status 0
(dlv) quit
Process 8014 has exited with status 0
您还可以通过-test.run
选择要运行的测试(就像go test -run
)。
在内部,这与Flimzy的答案相同(它使用编译测试二进制文件go test -c
),但更加精简,不会留下.test文件供您清理。
目前Go语言支持GDB、LLDB和Delve几种调试器。其中GDB是最早支持的调试工具,LLDB是macOS系统推荐的标准调试工具。但是GDB和LLDB对Go语言的专有特性都缺乏很大支持,而只有Delve是专门为Go语言设计开发的调试工具。而且Delve本身也是采用Go语言开发,对Windows平台也提供了一样的支持。本节我们基于Delve简单解释如何调试Go汇编程序。 3.9.1 Delve入门
问题内容: 答: 基于putus的答案,我一键搞清楚了以下配置以进行构建和调试 首先,您需要添加一个任务以使用相应的标签构建二进制文件。 该任务应在调试器启动之前执行。 原始问题 :我正在使用构建标记来编译Go程序的不同版本,并使用“ go build -tags THISISAFLAG”进行编译 这很完美。但是有没有办法告诉调试器使用这些标志。我曾尝试使用类似以下的启动配置,但没有用。 问题答案
Delve 是一个 Go 语言的调试器,目标是给 Go 提供一个简单和特性齐全的调试工具,并且是容易调用和使用的。 更多关于delve Building Usage Command reference Installation Tips & Troubleshooting Upcoming Features Contributing
22.13.2.调试 测试任务提供了Test.getDebug()属性,可使JVM等待调试器附加到5005端口后在进行调试. 通过调用--debug-JVM任务选项,这也可以启用调试任务(since Gradle1.12)。
当你在制作应用的时候,有点小错误和发生点小报错的啥的是很正常的。有时候错误不明显,所以知道怎样去追踪错误是非常重要的。 本节课将会研究如何最好的去调试Ionic 2应用,但是不会讲什么是调试或者如何使用调试工具(例如,查看源代码,设置断点,监听网络请求等等)。如果你不熟悉基于浏览器的Javascript调试,那么强烈建议一定要先你看看这个。 浏览器调试 开发应用的时候第一发通常是桌面浏览器。能够通
问题内容: 我正在使用JavaScript测试运行程序“摩卡”。 我的测试失败了,因此我将使用进行调试。 但是运行测试时,没有输出(仅来自Mocha的测试结果)。看来Mocha已捕获并抑制了我的输出! 如何让Mocha显示输出?(对于失败的测试)? 编辑: 抱歉!- 在测试期间可以正常工作!我肯定一直期望它抑制输出,而且我没有正确检查自己的代码。感谢您的回应。所以…话虽如此…也许抑制通过测试的输出