javascript - 如何自定义 Jasmine 的目录结构?

标签 javascript unit-testing jasmine

当使用 Jasmine Rubygem 时,我发现非常烦人的是我必须符合生成的目录结构,该目录结构在 spec 文件夹中有一个 javascripts 子文件夹。我发现它没用,因为我完全用 Javascript 编写。

我发现我可以通过更改生成的 jasmine.ymlpublic 文件夹中更改它,但是,这不是我想要的,因为我仍然必须保留javascripts 文件夹给我。

有什么方法可以自定义这个文件夹结构吗?

最佳答案

这是我用 jasmine gem 1.0.2.1 做的:

1)自定义jasmine_config.rb文件覆盖simple_config_file方法指向正确的yml文件路径。该文件最初生成于 spec/javascripts/support/jasmine_config.rb。如 github 源代码 (https://github.com/pivotal/jasmine-gem/blob/v1.0.2.1/lib/jasmine/config.rb) 所示,该方法被硬编码为使用:

def simple_config_file
  File.join(project_root, 'spec/javascripts/support/jasmine.yml')
end

我想将我的“spec”目录重命名为“test”,所以我的 jasmine_config.rb 文件的顶部如下所示:

module Jasmine
  class Config
    def simple_config_file
      File.join(project_root, 'test/javascripts/support/jasmine.yml')
    end
  end
end

2) 强制 rake 加载配置文件。我通过添加行来做到这一点:

require 'test/javascripts/support/jasmine_config.rb'

在我的 Rakefile 中需要 jasmine 后立即。

3) 更新 jasmine.yml(也在支持文件夹中)以指示您的 javascript 测试文件所在的位置。我的 yml 文件现在以此结尾:

# EXAMPLE:
#
# spec_dir: spec/javascripts
#
spec_dir: test/javascripts

当然,您需要将“测试”路径调整为您想要的。

我认为这种方法应该适用于最新版本的 gem,但如果他们更改该 Config 类的接口(interface),这种方法将来会失效。

关于javascript - 如何自定义 Jasmine 的目录结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8274396/

相关文章:

javascript - 使用 JQuery Datepicker 的 getDate 函数

unit-testing - 最小起订量新手测试设置

c++ - 是否可以使用 MSTest 从 c++ dll 测试 "internal"类?

node.js - 使用 Jasmine 进行单元测试时避免副作用

Jasmine /Protractor : stop test on failure in beforeEach

javascript - 计算页面上的 javascript 函数数量(使用 javascript)

javascript - 使用 Javascript 对象为具有两个背景图像的 DIV 设置样式时遇到问题

javascript - 带有 JavaScript 的树在 Internet Explorer 7 上无法正常工作

unit-testing - MVP总是值得的吗?

javascript - Jasmine 测试说模块未定义