5

我正在尝试使用 Eclipse (Kepler) 在 Play 中调试我的单元测试!项目。我启动了播放调试。在 Eclipse 中,我使用命令行输出提供的端口在 Debug Configurations 中创建了一个远程 Java 应用程序。单击应用,然后单击调试,添加断点。在我的 Play 项目的命令提示符下,我启动了test。Eclipse 永远不会在断点处停止。这很烦人。我在 Windows 7 Pro 64 位。

谢谢你的帮助

4

2 回答 2

5

添加:

val main = play.Project(appName, appVersion, appDependencies).settings(
   // Add your own project settings here
   Keys.fork in (Test) := false
)

在您的 Build.scala 中,如此处所述

在您的 Play 中使用命令行!项目:

  • 干净利落
  • 玩编译
  • 玩调试
  • (在 Eclipse 中)运行你的调试遥控器
  • 测试

我只是在开普勒测试它,对我来说很好;)

于 2013-10-16T09:37:44.637 回答
4

基于@Pierre-Yves 的建议(我是 Play 2.2 和 SBT 的新手,所以这可能是可以避免的),要通过 IntelliJ 调试单个单元测试,我需要在 build.sbt 中进行以下操作(感谢Mike Slinn):

Keys.fork in Test := false

parallelExecution in Test := false

如果没有 build.sbt 更改,则在 Play 调试控制台(每个会话)中执行以下操作:

$ set sbt.Keys.fork in Test := false

在这些解决方案中的任何一个之后,我可以设置断点并通过以下方式远程调试单个测试类:

$ test-only *package.class*
于 2014-02-12T00:34:56.267 回答