如何加速资产编译测试?

时间:2012-11-15 10:27:41

标签: ruby-on-rails rspec asset-pipeline guard

使用Spin运行Guard可以很好地保持我的测试速度,除非资产是相关的并且需要编译。似乎每当我更改其中的某些内容时,测试环境都会重新编译所有资产。我已经看到了部署脚本的示例,这些脚本只重新编译源已更改的资产。这可以用于测试吗?或者是否有另一种加速测试资产编译的方法?

我正在使用一个相当具体的设置,所以我很乐意在需要时提供更多信息,但我觉得这个问题的答案可能会在很多情况下使用而不仅仅是我的。

3 个答案:

答案 0 :(得分:1)

你可以看看两个月前写的this article。这似乎相当复杂。内森只对资产进行了gem that precompiles的修改。它可以用于开发和测试环境。

编辑:这是another article,与加快我们的测试有关。它对js测试有不同的观点。

答案 1 :(得分:0)

例如,您可以避免在应用程序js和css文件中添加require_tree

此外,使用适当的文件扩展名 - 如果某些内容是js - 那么将其命名为普通的js文件。对于css和scss也一样。

您也可以在本地对资产进行预编译,使其在开发时通过命令rake assets:precompile进行本地编译 - 但请记住在测试之后将其删除,以便下次查看资产的更改(可以在供应商文件夹中生成)

答案 2 :(得分:-2)

我确定你可以试试:

在application.js文件中按树的顺序写下所有js文件,如下所示:

// = require jquery

// = require jquery_ui

// = require jquery.ui.core