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 に答える