2013-05-24 3 views
5

Я пытаюсь отлаживать некоторые тесты с помощью intellij.Как отлаживать программу play framework 2.1.0 scala в intellij

Я сконфигурировано пульт отладки, как объяснить: How to make the debugging in playframework in IntelliJ Idea

И отлаживать контроллеры и прочее. При попытке отладки тестов, таких, как объяснить: Is it possible to debug Play! tests from IntelliJ, with a moduled that is located in a sub-folder?

Но я recibe следующее сообщение:

Action not found 

For request 'GET /@tests' 
These routes have been tried, in this order: 
1GET/controllers.Application.index 
2GET/assets/$file<.+>controllers.Assets.at(path:String = "/public", file:String) 
3GET/api/crawl/task/begincontrollers.services.crawler.CrawlingService.begin 
4GET/api/crawl/task/silk 

Любая идея, что случилось здесь? Я запускаю сервер в режиме отладки и запускаю тестовый тест, только запускайте тест в режиме консоли. Не как сервер.

ответ

7

По умолчанию SBT открывает новый процесс для выполнения тестов. Ваша IDE подключена к основному процессу SBT, но не к «разветвленной», поэтому отладка не работает.

Вы можете переопределить это, определив следующие параметры в файле Build.scala:

val main = play.Project(appName, appVersion, appDependencies).settings(
    sbt.Keys.fork in Test := false 
) 

Теперь основной процесс будет использоваться для выполнения тестов (при выполнении test из консоли игры) и ваш IDE должна иметь возможность правильно их отлаживать.

+5

В Play 2.3 это достигается добавлением 'fork in Test: = false' в ваш файл' build.sbt'. – cwc

+0

Это, конечно, также работает для затмения. – roterl

+1

В Play 2.3 это достигается добавлением 'Keys.fork in Test: = false' в ваш файл' build.sbt' (комментарий @cwc неверен, это может работать и в других версиях). См. [Documintation Play Framework] (https://www.playframework.com/documentation/2.3.x/Configuration). Это работает в NetBeans 8.0. – fishjd

Смежные вопросы