微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Ruby单元测试:这是一个有效(格式良好)的XML Doc吗?

我正在创建一个 XML文档:我想至少进行单元测试,以确保它的格式正确.
到目前为止,我只能通过使用REXML库中的’hasElements’来估算它.

有没有更好的办法 ?
最好使用内置库(我的意思是随标准Ruby 1.8.x发行版一起提供的库).

require "test/unit"
require 'rexml/document'
require 'test/unit/ui/console/testrunner'

include REXML

class TestBasic < Test::Unit::TestCase

    def test_createXML
     my_xml=...create doc here...
     doc = Document.new(my_xml);
     assert(doc.has_elements?);
    end

end

Test::Unit::UI::Console::TestRunner.run(TestBasic);

解决方法

You can use Nokogiri.
它不是标准的Ruby库,但您可以轻松地将其安装为Gem.
begin
  bad_doc = Nokogiri::XML(badly_formed) { |config| config.options = Nokogiri::XML::ParSEOptions::STRICT }
rescue Nokogiri::XML::SyntaxError => e
  puts "caught exception: #{e}"
end
# => caught exception: Premature end of data in tag root line 1

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐