在env.rb文件中初始化全局路径(ruby / cucumber)

时间:2012-09-27 14:27:12

标签: ruby cucumber

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

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

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

考虑从ruby代码调用那些Path。

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

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

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

1 个答案:

答案 0 :(得分: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