1

我想知道是否有这样的 Ruby on Rails 插件或 gem,在测试周期中包含 HTML 验证(SGML 或 Tidy)。

我只知道这个插件。寻找替代品...

4

3 回答 3

1

be_valid_asset与 rspec 和黄瓜一起使用。它使用公共的 W3C 验证器。它没有链接检查html_test

我在黄瓜的 webrat_steps.rb 的这两个步骤中使用它:

Given /^(?:|I )am on (.+)$/ do |page_name|
  visit path_to(page_name)
  response.should be_valid_xhtml if ENV['VALIDATE_HTML']
end

When /^(?:|I )go to (.+)$/ do |page_name|
  visit path_to(page_name)
  response.should be_valid_xhtml if ENV['VALIDATE_HTML']
end

然后我可以运行rake VALIDATE_HTML=1 cucumber以验证我的黄瓜功能文件访问的所有页面。

于 2009-11-27T06:04:12.163 回答
0

这是一个可以实时使用的基于 Rack 的验证器:http: //coderack.org/users/nerdEd/entries/95-rackvalidate

于 2009-11-27T13:41:54.003 回答
0

我正在为 Ruby On Rails 应用程序开发一个一体化的 HTML/CSS 验证 gem。它的名字是猎头

从文档:

Headhunter 是一个 HTML 和 CSS 验证工具,它可以将自己注入到 Rails 功能测试中,并自动检查所有生成的 HTML 和 CSS 的有效性。

此外,它还会查找未使用的(因此是多余的)CSS 选择器。

您所要做的就是gem 'headhunter'在测试环境中添加到您的 Gemfile 中:

group :test do
  gem 'headhunter'
end

其余的都是自动为您完成的,您将在测试结束时获得应用程序有效性的统计信息,如下所示:

Validated 42 HTML pages.
41 pages are valid.
1 page is invalid.
Open .validation/results.html to view full results.

Validated 1 stylesheets.
1 stylesheet is invalid.
  application.css:
  - Invalid css: line 1: Property bla doesn't exist

Found 23 CSS selectors.
20 selectors are in use.
3 selectors are not in use: a img, #flash.failure, input[type='file']
于 2014-01-19T20:43:56.013 回答