2013-05-24 4 views
5

provo a eseguire il debug di alcuni test con intellij.Come eseguire il debug play framework 2.1.0 scala tests in intellij

ho configurata il debug remoto come spiegare in: How to make the debugging in playframework in IntelliJ Idea

E può eseguire il debug di controllori e roba. Quando cerco di test di debug, come spiego in: Is it possible to debug Play! tests from IntelliJ, with a moduled that is located in a sub-folder?

Ma ho recibe il messaggio successivo:

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 

Qualsiasi idea di cosa succede qui? Sto eseguendo il server in modalità di debug ed eseguo test di riproduzione, eseguo il test solo in modalità console. Non come server.

risposta

7

Per impostazione predefinita, SBT sta eseguendo un nuovo processo per eseguire i test. Il tuo IDE è connesso al processo principale SBT ma non a quello "forked", ecco perché il debug non funziona.

È possibile ignorare questa definendo la seguente impostazione nel file Build.scala:

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

Ora, il processo principale verrà utilizzato per eseguire i test (durante l'esecuzione test dalla console di gioco) e la vostra L'IDE dovrebbe essere in grado di eseguirne il debug correttamente.

+5

In Play 2.3, questo si ottiene aggiungendo 'fork in Test: = false' al file' build.sbt'. – cwc

+0

Questo ovviamente funziona anche per Eclipse. – roterl

+1

In Play 2.3 questo si ottiene aggiungendo 'Keys.fork in Test: = false' al file' build.sbt' (il commento @cwc non è corretto, questo potrebbe funzionare in altre versioni). Vedi: [Play Framework Documintation] (https://www.playframework.com/documentation/2.3.x/Configuration) Funziona in NetBeans 8.0. – fishjd