1

コンポーネントベース(別名プルベース)のWebフレームワーク(Tapestry、Wicketなど)を使用している場合、マークアップがW3C検証に合格したことをどのように判断しますか?2つのアプローチが思い浮かびます。

実行中のアプリをクロールする

プロ:

  • 検証に必要なすべてのマークアップがページに存在します。

短所:

  • すべてのページとすべてのケースをヒットするのは非常に複雑になる可能性があります。
  • 何かが間違っている場合、どのコンポーネントが問題を引き起こしているのかが明らかでない場合があります(特に大規模なアプリの場合)。
  • 同じコンポーネントを何度も検証している可能性があります(作業の重複)。
  • ページ/コンポーネントが多い場合は、非常に長い時間がかかる場合があります。

HTMLテンプレートをオフラインでクロールする

長所:

  • 各コンポーネントを検証する必要があるのは1回だけです。
  • 問題を見つけた場合は、どのコンポーネントが問題を引き起こしているのかを正確に知ることができます。

短所:

私が考えることができる短所のほとんどは、ページの完全なマークアップがないため、コンポーネントのコンテキストを失うことを含みます。

  • 特定のコンポーネントのDOCTYPEがわからない場合があります。
  • コンポーネントの親が何であるかを知るのは難しい場合があり、問題を引き起こす可能性があります。<span>たとえば、ブロックタグ(eg<form>または)を含むインラインタグ(eg)の無効なケースを検出します<p>
  • これらのタイプのフレームワークのHTMLテンプレートには、多くの場合、検証されない無効な属性と特別な記号(通常はフレームワークに何かを示すため)が含まれています。

したがって、問題は、コンポーネントベースのアーキテクチャを使用している場合、マークアップをどのように検証するかということです。これを行うための推奨されるテクニック、またはさらに良いツールはありますか?

編集:これに対する答えがこれ以上なかったことに少し驚いています。コンポーネントベースのフレームワークを使用するときにマークアップを検証することは珍しいですか?それとも、それらを使用している人はあまりいないのでしょうか。

4

1 に答える 1

1

フルサービスのドキュメントを使用して、このタイプの検証とテストのほとんどを実行したいと考えています。これにより、検証しているものが実際にWebブラウザーに表示されているものであることが保証されます。

検証する必要のあるURLの数に応じて、これに適したオプションは、WDGのバッチバリデーターサービスを使用することです。

http://htmlhelp.org/tools/validator/batch.html.en

または、wdgとw3cにはオフラインバリデーターがあり、スクリプトで使用してテスト結果を集約できます。クイックグーグル検索はあなたにそれらのいくつかを与えるでしょう、そしてあなたがそんなに傾いているならばそれらはあなた自身でするのは難しいことではありません。

クロールスクリプトを使用するか、データベースから、URLのリストを自分で生成する必要があります。エンドユーザーが「壊す」ことができない動的コンテンツを含むページがある場合は、実際に検証する必要のあるページ数を減らすことができます。

于 2010-02-05T17:34:56.423 に答える