测试热加载。 playframework怎么样?

时间:2018-08-02 14:34:57

标签: java playframework-2.3

所以Im目前在一个我们使用Java Playframework 2.3.7和Activator的项目中。 我喜欢播放框架的一件事是热重载功能。我可以修改保存的Java文件,并在运行时编译和刷新更改。

除了测试外,我如何获得该功能?我希望能够使用此热重装功能运行一个测试,以便在保存时使用。给定文件(由“仅测试”指定)的测试会自动重新运行。

2 个答案:

答案 0 :(得分:1)

没有这样的解决方案,但是您有两种选择:

  1. 使用IntellJ :要在IntellJ中重新运行以前的测试,请按shift + F10

  2. 写一个监视程序:编写一个文件/目录监视程序,例如question/answer here,然后一旦有更改,程序将重新运行测试命令,例如sbt clean compile testactivator compile test

关于自动运行测试的小建议:我不知道您的应用程序有多复杂,但是一旦您到处都进行了两次注入并增加了并发性;您不想在插入char后立即运行测试。

关于测试驱动开发的小建议:您的方法应该相反!您编写了一个测试,由于没有实现,该测试失败了。那么你就别管它了。您去编写实现,然后重新运行测试以通过它或获得反馈。同样,您需要cpu /内存功能专注于一件事,而您又不想强行实施。希望这是有道理的!

有关您的Play版本的小建议:Play 2.6比Play 2.3更好;您应该缓慢但确定地更新您的应用程序;至少出于安全考虑。

答案 1 :(得分:0)

好,所以我找到了想要的东西。 对于需要在特定版本的游戏中使用该特定功能的人(我不确定其他版本),您要做的事情确实很简单。运行激活器,并在测试之前放置~前缀。例如

#activator
[my-cool-project]~test

进行更改时,这将重新加载测试。如果您想针对特定测试执行此操作,则必须执行相同操作,但只能进行测试

#activator
[my-cool-project]~test-only MyCoolTest

希望它可以帮助寻找相同事物的人