8

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

我发现我可以public通过更改生成的文件夹来更改它jasmine.yml,但是,这不是我想要的,因为我仍然必须随身javascripts携带文件夹。

有没有办法自定义这个文件夹结构?

4

2 回答 2

5

以下是我使用 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 类的接口,这种方法将来会中断。

于 2012-01-04T22:03:21.153 回答
0

jasmine-browser-runner自 2021 年起,以下是在使用NodeJS时更改文件夹名称的方法。

安装 jasmine 并设置项目:

npm install --save-dev jasmine-browser-runner jasmine-core
npx jasmine-browser-runner init

spec将文件夹重命名为test并编辑jasmine-browser.json

"specDir": "test"

使用以下命令运行测试:

npx jasmine-browser-runner runSpecs --config=test/support/jasmine-browser.json
于 2021-12-25T00:24:34.350 回答