如何使用Eclipse调试由sbt驱动的测试?

EEC*_*LOR 8 eclipse scala sbt scala-ide

我有一组我想调试的测试用例(一步一步,读取值等).如何设置我的sbt构建,以便我可以连接eclipse调试器?

EEC*_*LOR 4

我找到了一种附加 Eclipse 调试器的方法。在Build.scala项目设置中,我添加了以下选项:

//required for the javaOptions to be passed in
fork := true

javaOptions in (Test) += "-Xdebug"

javaOptions in (Test) += "-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005"
Run Code Online (Sandbox Code Playgroud)

然后在 Eclipse 中我可以创建一个新的Debug configuration类型(错误图标旁边的箭头)Remote Java Application。我可以在那里选择Scala debugger (Socket Attach)并指定端口5005

我现在遇到的问题是我无法设置任何断点,但这是另一个问题,可能与我使用的 Scala IDE 版本有关。

编辑

设置断点的问题(很可能)与我的 specs2 规范中的奇异结构有关。我用一个方法创建了一个小对象,以便能够设置断点

object BreakPoint { 
  def set = {}
}
Run Code Online (Sandbox Code Playgroud)