【问题标题】:Javascript class not being loaded on feature tests with Capybara使用 Capybara 进行功能测试时未加载 Javascript 类
【发布时间】:2016-12-23 00:35:08
【问题描述】:

我有一个在create.js.coffee 文件中调用的coffee 类。 它在开发中运行良好。 然而,在运行功能测试时(使用Capybaraweb-kit),这个类似乎没有被正确加载。

这些是文件:

assets/javascript/app_init.js.coffee

window.MyApp = { }

assets/javascript/modules/product_module.js.coffee

window.MyApp.ProductModule = class ProductModule
  @show: ->
    # Do stuff

assets/javascript/application.js

//= require app_init
//= require_tree .

还有create.js.coffee

console.log window.MyApp => Returns [Object Object]
console.log window.MyApp.ProductModule => Returns undefined

这些返回是我在运行规范和调试时得到的。有什么想法吗?

如果有帮助,我正在使用 Rails 5

【问题讨论】:

    标签: javascript ruby-on-rails coffeescript sprockets


    【解决方案1】:

    我运行 rails assets:precompile 并修复了测试。我不确定为什么我需要预编译资产来运行测试。我的配置可能有问题。想法?

    【讨论】:

      【解决方案2】:

      似乎test.rb 文件配置,不再包含资产编译。解决方法是将其添加到test.rb

      config.assets.compile = true
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-04-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多