簡體   English   中英

如何在rails上使用rspec和capybara測試API?

[英]How to test a API with rspec and capybara on rails?

我創建了一個控制器,可以通過特殊的URL讀取api數據。

def category
  @data = get_api_data(param1)
end

def get_api_data(param1)
  "http://my_api_url/param1=#{param1}"
end

創建視圖后,我可以看到瀏覽器的結果。

如果我使用rspec + capybara進行功能測試

visit category_path('param1')

然后我想確認api數據將在視圖中顯示

expect(page).to have_field('name', with: 'aaa')

@data值始終為null。 為什么? 是否有必要從測試代碼中獲取api url訪問帖? 如果有必要,該怎么辦? visit方法不能采取其他參數。

Capybara不是為測試API而設計的。 你應該選擇Rspec和Airbone: https//github.com/brooklynDev/airborne

暫無
暫無

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

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