Question

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.

Was it helpful?

Solution

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.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top