grape
api'yi test etmeye çalışıyorum ve testlerimde sorun yaşıyorum.Test etme Üzüm api. ActionController :: TestCase @controller nil
Raylar varsayılan testini kullanıyorum, bu benim Gemfile
test bölümüm.
group :development, :test do
gem 'sqlite3'
gem 'byebug' # Call 'byebug' anywhere in the code to stop execution and get a debugger console
gem 'spring' # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
gem 'factory_girl_rails'
gem 'capybara'
gem 'selenium-webdriver'
gem 'capybara-angular'
gem 'poltergeist'
gem 'phantomjs', :require => 'phantomjs/poltergeist', platforms: :ruby # linux
end
Benim denetleyicisi:
# app/controllers/api/v1/vehicules.rb
module API
module V1
class Vehicules < Grape::API
ve benim test:
1) Error:
API::V1::VehiculesTest#test_GET_/api/v1/vehicules?user_id=123:
RuntimeError: @controller is nil: make sure you set it in your test's setup meth
od.
test/controllers/api/v1/vehicules_test.rb:7:in `block in <class:VehiculesTes
t>'
yapamadım: Testi başlattığınızda, bu hata var
# test/controllers/api/v1/vehicules_test.rb
require "test_helper"
class API::V1::VehiculesTest < ActionController::TestCase
@controller = API::V1::VehiculesTest.new
test "GET /api/v1/vehicules?user_id=123" do
get("/api/v1/vehicules?user_id=123")
assert_response :success
json_response = JSON.parse(response.body)
assert_not(json_response['principal'], "principal devrait être faux")
end
test "PUT /api/v1/vehicules?user_id=123" do
put("/api/v1/vehicules?user_id=123", { 'princiapl' => true }, :format => "json")
assert_response :success
json_response = JSON.parse(response.body)
assert_not(json_response['principal'], "principal devrait être vrais")
end
end
controller
neden bulunamıyor. test_helper.rb
'uma bir şey eklemek zorunda mıyım?
class ActionController::TestCase
end