错误RSpec,而测试API
问题描述:
刚刚开始学习RSpec和TDD,并不能找出为什么它根本不工作。错误RSpec,而测试API
#spec/api/event_api_spec.rb
describe 'Messages API' do
it 'check response' do
get 'api.mydomain.dev/events'
json = JSON.parse(response.body)
# test for the 200 status-code
expect(response).to be_success
end
end
我已创建我的api.mydomain.dev API和我的文件夹结构看起来像应用程序/控制器/ API/events_controller.rb
所以,当我试图运行包EXEC rspec的它表明
NoMethodError:
undefined method `get' for #<RSpec::ExampleGroups::MessagesAPI:0x007fc34900cee0>
,如果我试图让水木清华像Event.creat!(:名称=>“我的活动”)在我的规格文件#规格/ API/event_api_spec.rb它说
NameError: uninitialized constant Event
,所以我不明白怎么要求我的应用程序/控制器/ API/events_controller.rb文件的规格文件让我的事件类的实例来得到它的工作。
在默认控制器它的做工精细,我只是在API设置有趣,THX
答
“得到”是控制器的规格提供的方法,尝试用类似
describe 'Messages API', type: :controller do
告诉rspec的你测试有点像控制器,或者只是做
describe EventsController do
关于“未初始化的常数事件”,试图用这种在规格/ API/event_api_sp的begning ec.rb
require 'rails_helper'
希望这会有所帮助,但你的文章是有点混乱,目前尚不清楚,如果你的API是在网上还是什么,你不应该测试agains网上API,你应该在本地测试,规格应除非真的有必要,否则不要与真实世界沟通。