我正在尝试测试我们的play 2.4.x应用程序,该应用程序大量使用react来渲染表和类似内容。仅在正常运行应用程序时,所有javascript都会得到处理并正确输出。但是,在我们的集成测试阶段(在specs2示例中使用了WithWithBrowser扩展的功能来支持硒),资产显然不可用。

我们收到很多类似以下的错误(对于我们尝试加载的每个javascript文件,都会出现一个错误):

[error] - com.gargoylesoftware.htmlunit.html.HtmlPage - Error loading JavaScript from [http://localhost:19001/assets/lib/react/react-with-addons.js]


在测试/集成阶段之前,是否可以添加任何内容来告诉Play处理我们的javascript管道?

最佳答案

您是否在SBT中使用IntegrationTest配置?

我遇到了同样的问题,最后通过添加以下内容解决了该问题:

(managedClasspath in IntegrationTest) += (packageBin in Assets).value


到我的build.sbt

这对您来说可能并不相同,但是我正在使用Gulp生成我的css和js文件,并将它们放在“ out”目录中。因此,为了使它们被构建拾起,我还必须添加:

unmanagedResourceDirectories in Assets <+= baseDirectory { _ / "out" }

07-25 23:25
查看更多