3

HTML から PHP 経由で SQL に解析された後、データをテストするために提案できる効率的なテスト方法はありますか?

コンテキストを提供するために、連続して番号が付けられた HTML ページ (単一のテーブルを含む) から MySQL テーブルにデータを移行しています。Domdocument と XPath を使用して DAO スタイルのデータを抽出しており、出力は一貫しているようです。HTML とデータベース (ランダム ピック、シーケンシャル、プログラミング アルゴリズムなど) をチェックする最良の方法は何ですか?

4

2 に答える 2

1

生データにはアクセスできず、解析された HTML だけにアクセスできるため、できることはまったく同じことを 2 回行って比較することだけです。

抽出したデータに基づいて新しい DOM ドキュメントを作成し、DOM を比較することもできます。このようにして、誤ってインポートされたデータをテストできます。

しかし、これらすべての方法は、抽出に使用する方法と同じくらい信頼できます。また、すべてのインポートをテストするためにサーバーの負荷をかける価値はおそらくありません。

ランダムなテストでは、エラーを見つける成功率が非常に低く、おそらく人間の目で見たほうがよいでしょう。

少なくとも、奇妙な動作に気付くある種の確率アルゴリズムを構築できます。

fe 毎日のニュース HTML ページを解析し、特定の日に 3 つのニュース項目しか得られず、1 ページあたりの平均ニュース項目は約 10 であるとします。もちろん、これらのマージンを微調整することもできます。

于 2012-07-11T13:42:57.963 に答える
1

おそらく、差分アルゴリズムを使用して、元の HTML と解析されたテキストを比較し、パーセンテージを計算できます。明らかに、html タグなどのために 100% 一致することはありませんが、許容範囲を把握して、その方法でデータをテストすることはできます。

すべてをテストする時間と処理能力がない限り、ランダム サンプリングが最適だと思います。

これは差分アルゴリズムの PHP 実装です => http://paulbutler.org/archives/a-simple-diff-algorithm-in-php/

于 2012-07-11T13:42:32.720 に答える