我是Rails测试的新手。这是我在控制器测试中的代码
UsersControllerTest.rb
require 'rails_helper'
require 'spec_helper'
class UsersControllerTest < ActionController::TestCase
tests Api::Users::UsersController
RSpec.describe 'UserController' do
describe 'POST login_user'do
it'returns a login user' do
post('/user')
json = JSON.parse(response.body)
expect(json['user'].to eql('ok'))
end
end
end
end
运行测试时,出现以下错误。如何解决此错误。
测试结果
F
失败:
1)UserController POST login_user返回一个登录用户 失败/错误:post('/ user')
RuntimeError:
@controller is nil: make sure you set it in your test's setup method.
# ./spec/controllers/users_controller_spec.rb:9:in `block (3 levels) in <class:UsersControllerTest>'
在0.07092秒内完成(文件加载需要1.67秒) 1例,1例失败 失败的例子:
rspec ./spec/controllers/users_controller_spec.rb:8 # UserController POST login_user returns a login user