簡體   English   中英

Rspec Rails API控制器索引測試

[英]Rspec rails api controller index test

我正在嘗試使用rspec測試api控制器動作,但是由於我對rspec相當陌生,因此無法使其正常工作。 我有以下索引操作:渲染json:@ website.jobs

我必須按名稱查找與網站相關的所有工作。 這是我的規格:

let(:endpoint) { FactoryGirl.create(:website) }
let(:job) { FactoryGirl.create(:job) }

subject do
  get :index, params: { format: :json, 
                       name: endpoint.name }
end

expect(subject.body).to include(:job)

我是在做錯什么,還是想念什么?

您不能直接使用JSON響應檢查對象。 您可以執行以下操作:

it "response with JSON body containing expected jobs" do
  hash_body = JSON.parse(response.body)
  expect(hash_body).first.to match({
    id: job.id,
    title: job.title
  })
end

您需要根據Job模型更改屬性。

一個使用Rspec測試JSON的好教程: Pure RSpec JSON API測試

希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM