IDEA Play 2.4 junit 测试没有完整的 sbt 构建

IDEA Play 2.4 junit test without full sbt build

我想运行在 Intellij IDEA 14.1.4 中对我的 Play 2.4 应用程序进行 JUnit 测试,以利用完整的 JUnit 集成。

当我创建新的 JUnit 运行 配置时,测试执行得很好。然而,在每个测试 运行 中,都会执行完整的 SBT 构建,将测试延迟大约 30 秒。

如果我从 JUnit 运行 配置中删除 Make 的预启动步骤,则测试将直接执行而无需完整的 sbt 构建,但是测试和应用程序代码中的任何代码更改都不会被IDEA捡到。即使播放 运行 文件更改时自动编译,IDEA 也不会选择它们进行测试。

编辑 2015 年 7 月 9 日

我还用 SBT Action test:compile 交换了 Make,它只打开一个加载项目的 SBT 控制台,并在出现提示时停止。它没有执行操作 test:compile,因此根本没有开始测试。

我必须在 运行 配置 and/or 项目设置中更改什么才能在 IDEA 中为 Play 项目实现快速无缝的 JUnit 集成?

在挖掘 issue tickets of idea-sbt-plugin 时终于自己找到了答案。

将启动前步骤 Make 替换为 SBT Action test:compile 是正确的方法。然而,SBT 插件需要默认的 sbt shellPromt >。 Play projects 将自己的自定义提示定义为 [projectname] $.

我必须将以下行添加到 build.sbt 才能使 SBT 操作生效。

    shellPrompt := (_ => "> ")