如何使用SBT在每个热重新编译上运行测试?

时间:2017-12-18 17:03:25

标签: unit-testing playframework sbt

我使用命令sbt run

运行我的Play Framework应用

当我在代码中更改某些内容时,它将"热重新编译"并提供我更新的应用程序。

我想在每次热重新编译时运行我的单元测试。

我尝试过类似的东西 sbt test run但它只会运行一次测试。然后,所有其他代码更改触发器"热重新编译"但没有单元测试。

我也尝试了sbt ~test run,但它将永远等待代码更改,永远不会启动应用。

有没有办法配置SBT,以便它始终运行命令" test"每次都有热重编译?

1 个答案:

答案 0 :(得分:2)

我能得到的最接近的是运行sbt,然后使用命令~ ;test;run,它将运行测试然后以连续周期启动应用程序(只要有更改)但仍然要求您使用Ctrl-D关闭应用程序以恢复运行测试。

我最初的方法是尝试禁用自动重新加载,但是它appears to be hard-coded,即使这样也不够自己,因为你需要自动重载挂钩用来关闭它的任何东西应用程序每次更改。所以...技术上可行,但不是没有创建自定义sbt任务。