如何测试规范中的Bootstrap链接字形

时间:2017-12-01 16:06:21

标签: ruby-on-rails rspec

我试图在Rspec中找到一种简洁的方法来编写包含以下元素的视图测试:

<a href="/things/2/widgets">
  <span class="glyphicon glyphicon-share-alt inline"></span>
</a>

我想要做的是测试页面在视图测试中呈现时#glyphicon-share-alt&#39;指向widgets_things_path

的链接

有关您如何做到这一点的任何想法?

1 个答案:

答案 0 :(得分:2)

您可以使用have_css检查特定锚点,然后检查其中的特定标记:

require 'rails_helper'

RSpec.describe Model, type: :feature do
  before { visit some_path }
  let(:anchor) { 'a[href="url"]' }

  it 'has an anchor with specific url' do
    expect(page).to have_css anchor
  end

  it 'has a specific span inside anchor' do
    expect(page).to have_css "#{anchor} > span.glyphicon.glyphicon-share-alt.inline"
  end
end