После долгих поисков драгоценного камня, чтобы сделать это для меня, я обнаружил, что могу просто сделать сравнение строк между двумя проанализированными документами Нокогири:
def should_match_html(html_text1, html_text2)
dom1 = Nokogiri::HTML(html_text1)
dom2 = Nokogiri::HTML(html_text2)
dom1.to_s.should == dom2.to_s
end
Затем вы можете просто добавить это в вашу спецификацию:
should_match_html expected_html, actual_html
Самое приятное то, что встроенный инструмент сравнения rspec автоматически предоставит вам построчный результат сравнения несовпадающих строк.