我正在尝试测试我们的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" }