RSpec 2 View test to validate accessible markup?

2019-07-24 18:17发布

I want to make some basic accessibility tests in RSpec (obviously, to be further validated by other tools and users later; this is to catch the low-hanging fruit like finding images w/o alt tags and such)

Most of the examples have just checking content is present is similar; what I want to do is get a list of tags, and then make assertions that "all" the tags found meet certain criteria (e.g. all images have to have either an alt or a longdesc; each form input needs either a label or title, etc).

Can RSpec do this, or if not, is there a tool that can?

Thanks.

1条回答
Juvenile、少年°
2楼-- · 2019-07-24 19:16

You can use webrat to test for XPath selectors on your view specs:

describe 'my/view.html.erb' do
  it 'should not have images without alt or longdesc attributes' do
    render
    rendered.should_not have_xpath('//img[not(@alt) and not(@longdesc)]')
  end
end

Capybara supports XPath selectors, too.

查看更多
登录 后发表回答