java - 通过 Maven 运行的 JUnit/Cucumber 测试未在 VS Code 中调试

标签 java maven junit visual-studio-code cucumber

我有一个用 Java 编写并利用 Cucumber 和 JUnit 的测试套件。该套件通常通过 Maven 运行,但我遇到了问题。我想在 Visual Studio Code 中调试这些测试。我已经获得了 Java 扩展包并在 launch.json 中设置了以下内容:

{
    "type": "java",
    "name": "Debug (Attach)",
    "request": "attach",
    "hostName": "localhost",
    "port": 8000
}

然后,我运行 mvnDebug "-DforkCount=0"test 让 Maven 监听端口 8000 并开始在 VS Code 中进行调试。我的断点都没有被击中,但是一旦调试开始,Maven 作业就会继续进行。我希望能够在 Maven 运行该套件时单步执行代码。有建议吗?

最佳答案

我放弃了 VS Code 并决定安装 Eclipse。在相关文档中,有一条注释将参数添加到 Maven 调试配置中。我决定尝试将它与 VS Code 一起使用,并且成功了!我运行了 mvnDebug test "-DforkMode=never" 而不是上述命令,使用与上面列出的相同的 launch.json 配置在 VSCode 中开始调试,并且我的断点成功命中!

希望这对在 Java 堆栈上使用 VS Code 的其他人有用。

关于java - 通过 Maven 运行的 JUnit/Cucumber 测试未在 VS Code 中调试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58306810/

相关文章:

Java 监控 GitHub 存储库

hibernate - 为什么 hikaricp 给我找不到方法 : setUrl at startup?

Java Spring - 使用 API 持久化对象可以工作,但我无法在测试中使用服务持久化对象,空指针

junit - "play test"类路径不同于 "sbt test"类路径

java - JDBC ClassNotFoundException 异常

java - 改变位图的颜色

java - 达尔维克虚拟机 : Could not find class 'android. *

maven - Maven pom.xml 中 "SNAPSHOT"版本的含义

eclipse - 如何使用 Eclipse IDE 调试基于 JavaFX 11 的 Maven 项目 (2019-03)

security - 在企业 bean 中使用 getUserPrincipal() 和 isCallerInRole() 方法时如何编写 JUnit 测试?