我尝试用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?中解释
但我收到了下一条消息:
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知道这里发生了什么吗?我在调试模式下运行服务器,并运行播放测试,只在控制台模式下运行测试。不是作为服务器。
发布于 2013-05-25 03:39:44
默认情况下,SBT会派生一个新进程来执行测试。您的IDE连接到SBT主进程,但没有连接到"forked“进程,这就是调试不起作用的原因。
您可以通过在Build.scala文件中定义以下设置来覆盖此设置:
val main = play.Project(appName, appVersion, appDependencies).settings(
sbt.Keys.fork in Test := false
)现在,主进程将用于执行测试(当从play控制台执行test时),并且您的集成开发环境应该能够正确地调试它们。
https://stackoverflow.com/questions/16734920
复制相似问题