2017-02-28 46 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