如何使用rspec2和RubyonRails3测试控制器的正确XML输出?

如何使用rspec2和RubyonRails3测试控制器的正确XML输出?,xml,ruby-on-rails-3,rspec2,functional-testing,rspec-rails,Xml,Ruby On Rails 3,Rspec2,Functional Testing,Rspec Rails,在rspec1中有一个matcher have_标记,它不再在RSpec2中了 如何简单地检查RoR控制器的XML输出?XPath将非常好…使用webrat并具有\u选择器,如下所示: response.should have_selector("foo") do |tag| tag.should have_selector("bar", :content => "Hello World") end 例如,请参见问题在于它会自动在html标记前面加上前缀。它不将其视为xml。它不能修

在rspec1中有一个matcher have_标记,它不再在RSpec2中了


如何简单地检查RoR控制器的XML输出?XPath将非常好…

使用webrat并具有\u选择器,如下所示:

response.should have_selector("foo") do |tag|
  tag.should have_selector("bar", :content => "Hello World")
end

例如,请参见

问题在于它会自动在html标记前面加上前缀。它不将其视为xml。它不能修改输入。have_选择器不预加任何内容。确保在测试中,您实际上调用的是XML版本,而不是HTML版本。它是XML,内容类型是正确的。但是通过调用have_selector,它会在html前面加上doctype等。!