配置/初始化/ aws_config.rb:爲什麼RSpec的失敗,未定義的方法[]無:: NilClass爲AWS_CONFIG [ '鬥']
AWS_CONFIG = YAML.load_file("#{::Rails.root}/config/aws.yml")[Rails.env]
模型代碼:
self.bucket = AWS_CONFIG["bucket"]
測試結果:
Failure/Error: self.bucket = AWS_CONFIG['bucket']
NoMethodError:
undefined method `[]' for nil:NilClass
運行代碼的開發或生產沒有問題,爲什麼aws_config初始值設定項在RSpec下失敗?
當您打開「rails控制檯」時,AWS_CONFIG會給您什麼?我的猜測是'test'鍵在配置文件中沒有設置/正確。請確認! – oreoluwa
你可以粘貼你的aws.yml文件只是隱藏了憑據 – error2007s
rails控制檯工作正常,AWS_CONFIG ['bucket']設置的是正確的值。我將補充說這是我正在測試的一個rails引擎。 aws.yml文件基本上是在下面的答案中發佈的。 –