是否有适用于 Ruby on Rails 的(本地)HTML 验证器? [已关闭]

问题描述 投票:0回答:2

我昨天一整天都在寻找一个可以工作的 HTML 验证器,我可以用它来检查我的 Rails 应用程序生成的代码。到目前为止,我已经尝试了几种不同的策略,例如 RailsTidy(从 Rails 1.9 开始不再工作)、tidy_ffi(在 Rails 控制台中运行时我很难“require”)以及 FireFox 的 Total Validator,无论我检查什么,它总是给我同样的错误。

我的目标是检查我的代码,而不必将任何内容上传到互联网。能够从终端运行测试(我使用的是 RedHat Linux)或在正在运行的本地主机服务器上运行测试将是最有帮助的。

为了让自己再避免一天(或可能更多)的挫败感,我在这里提出了这个问题,我想知道是否有其他人成功地使用了 Ruby on Rails 的验证器。

html ruby-on-rails validation local
2个回答
6
投票

尝试我的宝石,html_acceptance。它使用 HTML Tidy 在后台进行验证。我不久前就把它拿出来了,但到目前为止,它几乎没有引起人们的注意。它对我很有用,如果您报告问题/有功能请求,我会很乐意查看它们。

在示例中,我有一个自定义 RSpec 匹配器,因此如果您添加该自定义匹配器,则在规范/请求中的集成测试中您可以执行以下操作:

page.should have_valid_html

这个想法是你可以在集成测试中使用它,即使你收到你不关心的小警告/失败(例如,TIDY 抱怨一些 IE 特定的黑客攻击),你也可以进去,接受它们,然后只要验证结果不变,测试就会通过。

此外,您需要保持道路整洁。所以在 OS X 上:port install htmltidy 或 Ubuntu sudo apt-get install tidy。


3
投票

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

来自文档:

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

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

您所要做的就是将

gem 'headhunter'
添加到测试环境中的 Gemfile 中:

group :test do
  gem 'headhunter'
end

剩下的一切都会自动为您完成,您将在测试结束时获得应用程序有效性的统计数据,如下所示:

已验证 42 个 HTML 页面。
41 页有效。
1 页无效。
打开 .validation/results.html 查看完整结果。

已验证 1 个样式表。
1 个样式表无效。
应用程序.css:

  • 无效的 css:第 1 行:属性 bla 不存在

找到 23 个 CSS 选择器。
正在使用 20 个选择器。
3 个选择器未使用:img、#flash.failure、input[type='file']

© www.soinside.com 2019 - 2024. All rights reserved.