2017-02-28 30 views
2

假設我正在測試控制器StaticPages的動作index。在控制器測試中,我需要計算此頁面上的鏈接數量爲about_path使用RSpec計算頁面上的鏈接

我已經谷歌它,並沒有發現任何可以幫助我。我知道這很簡單,也是一個新手問題,但我剛開始學習RSpec,我就在這裏。

回答

2

首先,你需要記住,控制器規格不默認呈現意見。我建議您使用視圖或請求規範。

其次,如果你使用內置的斷言,那麼你可以檢查與鏈接數量:

assert_select %(a[href="#{about_path}"]), 5 # 5 is the expected number of links 

如果使用預期那麼下面應該工作:

expect(page).to have_selector(%(a[href="#{about_path}"]), count: 5) 

我建議你看看the RSpec docs

+0

謝謝格雷格 –

1

你可以解析響應體,然後計數。

doc = Nokogiri::HTML(response.body) 
doc.css('a').length