2

尝试为 cucumber/ruby 测试框架创建初始配置,我正在考虑在 env.rb 文件中定义一些全局路径,如下所示:

def project_path
 File.expand_path(File.dirname(__FILE__) + '/../../../')
end

def config_path
 "#{project_path}/features/support/config"
end

考虑然后从 ruby​​ 代码中调用这些路径。

我遇到的问题是,当我尝试运行测试时,它们失败了:

undefined local variable or method `config_path' for Configuration:Class (NameError)

我想在模块/类尝试使用它之前没有定义'config_path'?有没有办法表明我们希望在完成其他任何事情之前处理 env.rb 文件中的所有内容?(不确定这是否已经完成并且失败在另一点?)

4

1 回答 1

1

在 env.rb 中试试这个

ENV["RAILS_ENV"] ||= "cucumber"
require File.expand_path(File.dirname(__FILE__) + '/../../config/environment')

require 'cucumber/formatter/unicode'
require 'cucumber/rails/world'
require 'cucumber/rails/active_record'
require 'cucumber/web/tableish'
require 'webrat'
require 'webrat/core/matchers'

Webrat.configure do |config|
 config.mode = :rails
 config.open_error_files = false   
end

ActionController::Base.allow_rescue = false

Cucumber::Rails::World.use_transactional_fixtures = true
于 2012-09-28T06:58:19.173 回答