1

我希望为我的所有测试文件提供一些常量,并且不确定使用 rspec 执行此操作的最佳方法。这种方式是否是声明实例变量的最佳实践?谢谢!

require File.join(File.dirname(__FILE__), '..', 'app.rb')
require 'rack/test'

set :environment, :test
set :run, false
set :raise_errors, true
set :logging, false

def access_token
   "xxxxx"
end

def api_token
  "xxxxx"
end

def app
   Sinatra::Application
end

RSpec.configure do |config|
  config.include Rack::Test::Methods
end

#no database debug messages
ActiveRecord::Base.logger.level = Logger::INFO
4

1 回答 1

0

RSpec 不会限制您为规范定义数据的方式。您可以使用常规方法、常量、本地、实例或类变量等。选择最合适的解决方案完全取决于您。

除了标准的 Ruby,RSpec 还支持在测试中显式命名主题协作者

就个人而言,我subject(:app)用于被测对象、let协作者(主要是类)、before块内或规范内的局部变量和实例变量,用于简单的东西,如用户名和密码,以及用于设置更复杂对象的(工厂)方法。

于 2013-02-24T14:03:11.193 回答