JP2006323812A - ウェブページの諸相を評価する方法および装置 - Google Patents

ウェブページの諸相を評価する方法および装置 Download PDF

Info

Publication number
JP2006323812A
JP2006323812A JP2005349474A JP2005349474A JP2006323812A JP 2006323812 A JP2006323812 A JP 2006323812A JP 2005349474 A JP2005349474 A JP 2005349474A JP 2005349474 A JP2005349474 A JP 2005349474A JP 2006323812 A JP2006323812 A JP 2006323812A
Authority
JP
Japan
Prior art keywords
link
web page
input
command
act
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
JP2005349474A
Other languages
English (en)
Other versions
JP2006323812A5 (ja
Inventor
Ryan W Farber
ダブリュー.ファーバー ライアン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2006323812A publication Critical patent/JP2006323812A/ja
Publication of JP2006323812A5 publication Critical patent/JP2006323812A5/ja
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】ウェブページに含まれるリンクの有効性を評価する自動化された方法を提供する。
【解決手段】ウェブページはダイナミックHTMLやその他の埋込みコマンドのようなコマンドを含み得る。このコマンドはユーザによる入力の供給のようなイベントの発生時に実行されるように構成される。一実施形態によれば、本方法は、入力の発生をシミュレートすることにより、リンクを生成することを含む。リンクの生成後、それらの有効性を判定し、リンクが有効であるかどうかを示すレポートを生成することができる。
【選択図】図4

Description

本発明は、コンピュータソフトウェアに関し、より詳細には、ウェブサイトの諸相を検証するために使用可能なソフトウェアに関する。
多くの人々がインターネットを用いてワールドワイドウェブ(「ウェブ」)を利用している。ウェブ環境では、サーバコンピュータが、クライアントコンピュータから要求される情報をウェブページの形で提供する。ウェブページに含まれる情報として、特に、Hypertext Markup Language(HTML:ハイパーテキスト・マークアップ言語)やExtensible Markup Language(XML:拡張マークアップ言語)のようなマークアップ言語フォーマットで提供される一連の命令あるいは「タグ」が挙げられる。クライアントコンピュータ上で実行されるブラウザプログラムが、タグを受け取って処理することにより、ユーザに対するディスプレイ(表示)を作成する。タグは、テキスト要素のフォント等、ページ要素のプレゼンテーション(提示)を定義することができる。また、タグは、Uniform Resource Locator(URL)によって別のウェブリソースを識別するハイパーテキストリンクを定義することもできる。ユーザは、リンクを「クリック」することにより(例えばマウスを用いてカーソルをリンク上に移動しマウスのボタンを押すことにより)リンクを呼び出すことができ、それにより、URLによって指定されるリソースへのアクセスを求める要求がサーバコンピュータ宛に発せられる。
ウェブページに含まれる要素には、ページがブラウザによって表示される時にユーザにとってすぐには分からないものがある。例えば、ウェブページは、ダイナミックHTML(DHTML)フォーマットで提供されるような埋込みコマンドを含み得る。これは、イベント発生時に、ある特定のページ要素を表示するために実行される。埋込みコマンドの実行を引き起こすような例示的なイベント(事象)として、特定のユーザ入力の受信がある。例えば、ユーザがある特定のページ要素(例えばある特定のリンク)上にカーソルを移動したことを検出すると、ディスプレイ上でそのページ要素の近くに新たなメニューを出現させるコマンドが実行されることが可能である。この種のディスプレイ要素は一般に「フライアウトメニュー」と呼ばれる。メニュー上の各エントリは通常、ユーザがウェブリソースにアクセスすることを可能にするハイパーテキストリンクであり、それぞれ、別のフライアウトメニューを出現させるようなイベントを定義することができる。
図1A〜図1Bは、典型的なフライアウトメニューディスプレイ要素を例示している。図1Aはインタフェース101を含む。インタフェース101は、ブラウザプログラムによって提示されるウェブページのディスプレイである。インタフェース101は、リンク105、110、115および120、ならびにメニュー104上のエントリ103等、ウェブページに共通の種々の要素を示す。図示した例示的インタフェースにおいて、右向き矢印を含む各エントリ103(すなわち、エントリ103A、103C、103D、103Eおよび103F)は、そこからフライアウトメニューが出現し得る要素である。すなわち、これらのエントリのいずれかに関する特定のイベントの発生時に(例えばユーザが要素の上にマウスを持って行くと)、インタフェース101上でその要素の近くにフライアウトメニューを出現させるコマンドが実行されることが可能である。
図1Bは、ユーザがエントリ103Aの上にカーソルを移動するとフライアウトメニュー130が露呈(revealing)される様子を例示している。フライアウトメニュー130はエントリ106A〜106Eを含み、それらの各エントリがハイパーテキストリンクを定義する。
一般に、DHTML機能はドキュメントオブジェクトモデル(DOM)によって実現される。DOMは、ページ要素の処理を可能にするブラウザコンポーネントである。具体的には、ブラウザは、ページのタグ、コマンド等の要素をDOMにロードすることによってページを処理する。Microsoft(登録商標) Internet Explorer(マイクロソフト・インターネット・エクスプローラー) ブラウザの場合、DOMによって提供される1つまたは複数の配列に要素をロードし、DOM宛に命令を発することで、例えば埋込みコマンドを呼び出し得るユーザ入力を受け取った時の特定のページ要素処理を実行する。図1A〜図1Bに示したフライアウトメニューの例を用いると、ユーザが「Windows (登録商標)XP(ウィンドウズ(登録商標)XP)」メニューエントリの上にカーソルを移動した時に埋込みコマンドを呼び出すようにDOMに命令し、埋込みコマンドの実行によりフライアウトメニューを出現させることができる。
複雑な機能を提供するような一部のウェブページは保守が面倒なことがある。ウェブページに共通する不備として、無効なリンク、すなわち、無効なURLを指定するリンクの提供がある。このため、管理者その他のユーザがウェブページ上のリンクの有効性を判定することを可能にする自動化ツールがいくつか出現している。一般に、これらのツールは、ユーザがウェブページ上に提供されたリンクの有効性および性質を見ることを可能にするグラフィカルユーザインタフェース(GUI)を提供する。
本発明の一実施形態によれば、ウェブページに含まれる少なくとも1つのリンクを評価する自動化された方法が提供される。ウェブページはブラウザプログラムを通じてユーザに対して表示を行うように構成され、ウェブページは実行時に上記少なくとも1つのリンクを生成するコマンドを含み、コマンドはユーザによる入力の供給時に実行されるように構成される。本方法は、(A)上記入力の供給をシミュレートすることにより上記少なくとも1つのリンクを生成することを含む。また、本方法は、(B)上記少なくとも1つのリンクの有効性を判定し、(C)上記少なくとも1つのリンクが有効であるかどうかを示すレポートを生成することも含み得る。
本発明の別の実施形態によれば、命令がエンコードされたコンピュータ可読媒体が提供される。命令は、実行時に、ウェブページに含まれる少なくとも1つのリンクを評価する方法を実行する。ウェブページはブラウザプログラムを通じてユーザに対して表示を行うように構成され、ウェブページは実行時に上記少なくとも1つのリンクを生成するコマンドを含み、コマンドはユーザによる入力の供給時に実行されるように構成される。本方法は、(A)上記入力の供給をシミュレートすることにより上記少なくとも1つのリンクを生成することを含む。また、本方法は、(B)上記少なくとも1つのリンクの有効性を判定し、(C)上記少なくとも1つのリンクが有効であるかどうかを示すレポートを生成することも含み得る。
さらに別の実施形態によれば、ウェブページに含まれる少なくとも1つのリンクを評価する自動化された方法を実行するシステムが提供される。ウェブページはブラウザプログラムを通じてユーザに対して表示を行うように構成され、ウェブページは実行時に上記少なくとも1つのリンクを生成するコマンドを含み、コマンドはユーザによる入力の供給時に実行されるように構成される。本システムは、上記入力の供給をシミュレートすることにより上記少なくとも1つのリンクを生成する生成コントローラを備える。また、本システムは、上記少なくとも1つのリンクの有効性を判定する有効性コントローラと、上記少なくとも1つのリンクが有効であるかどうかを示すレポートを生成するレポートコントローラも含み得る。
添付の図面は、一定の縮尺で描くことを意図していない。図面において、いくつかの図に示される同一のコンポーネントは同一番号で表される。必ずしも、あらゆる図であらゆるコンポーネントに符号を付けてはいない。
本発明の諸態様は、ウェブページに含まれるリンクを識別する自動化された方法に関する。例えば、一実施形態では、典型的に、特定のユーザ入力の受信のようなイベントの発生時にのみ露呈されるリンクを識別する自動化された方法が提供される。例えば、典型的に特定のユーザ入力の受信時に出現するフライアウトメニュー(fly-out menu:飛び出しメニュー)内のエントリとして提供されるリンクが露呈され得る。
一実施形態によれば、タグ、リンクおよびその他の要素のようなウェブページの要素がドキュメントオブジェクトモデル(DOM)にロードされる。一実施形態では、タグは、DOMによって提供される配列にロードされる。コンピュータプログラムエンティティが、特定のページ要素に関するブラウザ入力の受信のような特定のイベントの発生をシミュレートすることにより、そのページに含まれるリンクを露呈する命令を、DOM宛に発することができる。例えば、DOM宛に発せられる命令は、特定のタグの上にユーザがカーソルを移動することをシミュレートしてもよい。イベントのシミュレートが、ページ内に含まれるコマンド(例えば、ページに埋め込まれたダイナミックHTMLコマンド)を呼び出し、それにより別のリンクを見えるようにしてもよい。再帰的プロセスを実行することで、新たに露呈されたいずれかのリンクに関するイベントのシミュレーションが、さらなるリンクを露呈するかどうかを評価してもよい。
本発明の実施形態は、例えば、ページ上のリンクを露呈することで、自動化されたプロセスがそれらの有効性を評価できるようにするために用いることができる。例えば、ページ上のリンクが露呈された後、自動化されたプロセスが、各リンクによって指定されるリソースにアクセスすることを求める要求を発することができる。プロセスは、要求されたリソースについてサーバから返されるステータスコードのような、この要求に対するサーバの応答に基づいて、各リンクの有効性を評価できる。各リンクに関する評価の結果は、グラフィカルユーザインタフェース(GUI)を通じてユーザに提示してもよい。こうして、本発明の一実施形態によれば、ユーザは、イベントの発生時に動的に生成されるリンク等の、ページに含まれるリンクの有効性をより効果的に評価することができる。
理解されるべきであるが、本発明は、ページ上のリンクの有効性を評価する用途に限定されない。実際、本発明の実施形態はさまざまな形で実施可能であり、数多くのアプリケーションを有し得る。例えば、本発明の実施形態を用いると、ユーザは、ページに含まれるリンクの一層完全なインベントリ(目録、一覧表)を、それらのリンクの有効性を必ずしも評価せずに、生成することができる。
本発明の諸態様は、図2に示す例示的なコンピュータシステム200のような、1つまたは複数のコンピュータシステム上で実施可能である。コンピュータシステム200は、入力デバイス(複数可)202、出力デバイス(複数可)201、プロセッサ(複数可)203、メモリシステム204およびストレージ206を含み、これらはすべて、直接または間接に、相互接続メカニズム(構造、機構)205を通じて結合される。相互接続メカニズム205は、1つまたは複数のバス、スイッチ、および/またはネットワークを含み得る。入力デバイス202は、ユーザまたはマシン(例えば、人間の交換手、または電話受信機)から入力を受け取り、出力デバイス201は、ユーザまたはマシン(例えば液晶ディスプレイ)に情報を表示あるいは送信する。プロセッサ203は、一般に、オペレーティングシステム(例えばMicrosoft Windows(登録商標)ファミリのオペレーティングシステムや他の適当なオペレーティングシステム)と呼ばれるコンピュータプログラムを実行する。オペレーティングシステムは、他のコンピュータプログラムの実行を制御し、スケジューリング、入出力等のデバイス制御、アカウンティング(課金)、編集(コンパイル)、ストレージ割当て、データ管理、メモリ管理、通信およびデータフロー制御を行う。プロセッサおよびオペレーティングシステムは、合わせて、他のコンピュータプログラミング言語でアプリケーションプログラムを書くためのコンピュータプラットフォームを定める。
プロセッサ203は、種々の機能を実施するための1つまたは複数のコンピュータプログラムも実行できる。これらのコンピュータプログラムは、手続き型プログラミング言語、オブジェクト指向プログラミング言語、マクロ言語、あるいはこれらの組合せ等のいかなる種類のコンピュータプログラミング言語で書かれてもよい。これらのコンピュータプログラムは、ストレージシステム206に記憶されてもよい。ストレージシステム206は、揮発性あるいは不揮発性の媒体上に情報を保持することが可能であり、固定式でも着脱可能(リムーバブル)でもよい。図3に、ストレージシステム206をさらに詳細に示す。
ストレージシステム206は一般に、コンピュータが読み書き可能な不揮発性記録媒体301を含み、その上に、コンピュータプログラムや、プログラムによって使用される情報を定める信号が記憶される。媒体は、例えばディスクあるいはフラッシュメモリとすることができる。一般に、動作時に、プロセッサ203が、不揮発性記録媒体301から揮発性メモリ302(例えばランダムアクセスメモリすなわちRAM)にデータを読み出させる。揮発性メモリ302は、媒体301に比べて、プロセッサ203が高速に情報にアクセスできる。このメモリ302は、図3に示したようにストレージシステム206に配置されてもよく、あるいは図2に示したようにメモリシステム204に配置されてもよい。プロセッサ203は一般に、集積回路メモリ204、302内のデータを操作し、処理が完了した後でそのデータを媒体301にコピーする。媒体301と集積回路記憶素子(メモリエレメント)204、302との間でのデータ移動を管理するためのさまざまなメカニズム(機構、仕組み)が知られているが、本発明はそれらに限定されない。また、本発明は、特定のメモリシステム204やストレージシステム206にも限定されない。
図4は、ウェブページに含まれるリンクを露呈する例示的技法を示している。図4のプロセスは、ドキュメントオブジェクトモデル(DOM)によって提供される機能を用いて実行できる。この機能は図5A〜図5Bに関連して説明される。一般に、図4のプロセスは、ウェブページに含まれるタグの少なくとも一部をDOMによって提供される配列にロードし、配列内の各タグに関するイベントをシミュレート(模擬実験)することにより、1つまたは複数の新たなリンクがシミュレーションの結果として露呈されるかどうかを判定することで、実行可能である。図4の例示的プロセスにおいて、新たに露呈されるリンクは配列に自動的に追加される。しかし、新たなリンクは配列内の任意の位置に置くことができるので、新たなリンクが追加されるごとに、プロセスは配列の最初に戻ってシミュレーションプロセスを再開する。また、新たに露呈される各リンクは、さらに他のリンクを露呈するイベントを定義できるので、プロセスは、配列内のすべてのタグに関してイベントをシミュレートし終えるまで継続される。したがって、プロセスは再帰的である。
図4を参照する。プロセス400の開始後、アクト(処理)410が開始され、ウェブページがDOMにロードされる。一実施形態では、ページをDOMにロードした後、ページに含まれる任意の初期命令を実行することができる。例えば、ページが、ブラウザによるページの受信直後に実行される命令として、導入の表示シーケンス(表示順)を定義する命令を含む場合がある。このシーケンスは、「実際の」ページが示される前の短時間、ユーザに対して表示されてもよい。一実施形態では、これらの初期命令の実行を可能とすることで、導入シーケンスの完了後にユーザに提示されるタグおよびデータが露呈される。
アクト410の完了後、プロセスはアクト420に進み、ページに含まれるタグを、DOMによって提供される配列にロードする。しかし、本発明は、タグを配列にロードすることによって実施されるものに限定されず、任意の好適な処理技法が使用可能である。
一実施形態では、配列にロードされるタグはリンク、テーブルおよび「div」タグを含む。しかし、本発明はこの点に限定されず、任意の好適なタグタイプを処理可能である。処理されるタグタイプは、イベントの出現後に追加的リンクを露呈し得るページ要素を一般的に含むものとしてよい。
タグがロードされる例示的配列501を図5Aに示す。ロード後、配列501は7個の行を有する。これらはA〜Gとラベル付けされ、タグ1〜7に関する情報を含む。各行は、特定のタグに関する情報を含む。例えば、最初にロードされた後、行Aはタグ1に関する情報を含む。各タグに関する情報は3列に配列される。具体的には、列505はタグ名を含み、列510はタグがプロセスによって既に評価されたかどうかの指示を含み、列515はタグタイプを含む。
図4に戻って、アクト420の完了後、プロセスはアクト430に進み、配列に含まれるリンク数を判定する。一実施形態では、これは、配列501において、タグタイプ(列515に提供される)にタグがリンクであると示されている行数のカウントを生成することによって実行可能である。しかし、ページに含まれるリンク数を判定するための任意の好適な技法が使用可能である。
アクト430の完了後、プロセスはアクト440に進み、配列に格納されている最初のタグ(すなわち、配列の先頭の最も近くに格納されているタグ)を処理のために選択する。これは任意の好適な方法で実行可能である。
アクト440の完了後、プロセスはアクト450に進み、配列内の次の未評価タグを選択する。一実施形態では、このアクトは、配列内で、列510の指示でタグがまだ評価されていないとなっている次のタグを選択することを含む。一例として、プロセスの開始時に、配列内の次の未評価タグを配列内の最初のタグとすることで、行Aのタグ1を選択できるようにしてもよい。
アクト450の完了後、プロセスはアクト460に進み、選択したタグを調査済みとマークする。一実施形態では、これは、考慮済みのタグについて、列510に含まれる指示を更新することを含む。
アクト460の完了後、プロセスはアクト470に進み、アクト450で選択したタグに関して1つまたは複数のイベントをシミュレートする。一実施形態では、これは、1つまたは複数の命令をDOM宛に発することにより、発生し得る1つまたは複数のイベントをシミュレートすることを含む。例えば、選択されたタグに関して1つまたは複数のイベント(例えば特定のユーザ入力によって定義される1つまたは複数のイベント)を「点火(fire an event)」させるようにDOMに命令することができる。各イベントは、例えば、ユーザがブラウザプログラムを通じて提供し得る入力を表してもよい。例えば、選択されたタグに関して、通常であればユーザがそのタグの上にカーソルを移動させる時に発生する「on mouse over(オンマウスオーバー)」イベント(事象)を点火させるようにDOMに命令することができる。シミュレート可能な他の例示的イベントとして、「on mouse click(オンマウスクリック)」イベントおよび「on mouse enter(オンマウスエンター)」イベントがある。これらは通常であればそれぞれ、ユーザが選択されたタグの上にカーソルを移動させ、マウスをクリックするか、あるいは「enter(エンター)」キーを押す時に発生するものである。理解されるべきであるが、選択されたタグに関して任意の好適なタイプおよび個数のイベントをシミュレートすることができ、本発明はこの点において限定されない。
1つまたは複数のイベントの点火により、ウェブページに含まれる1つまたは複数のコマンドが呼び出され得る。例えば、あるイベントをシミュレートすることにより、DHTMLフォーマットで提供された埋込みコマンドが実行されてもよい。コマンドの実行により、1つまたは複数の新たなリンクが配列501にロードされてもよい。例えば、あるイベントをシミュレートすることにより、フライアウトメニューを「出現」させ(すなわち新たなリンクを作成し)、これらのリンクが配列501に新たなタグとして自動的にロードされるようにしてもよい。
上記のように、新たなタグは配列の任意の位置に入り得る。図5Bに例示した通り、新たに生成されたタグ8、9および10は配列501にロードされているが、行H、I、J(すなわち配列の末尾)にロードされるのではなく、それぞれ行A、EおよびHにロードされている。新たに生成されたタグ8、9および10のそれぞれは1つまたは複数の新たなリンクを生成させ得るイベントを定義しているかもしれないので、一実施形態では、これらの新たなタグに関しても同様にイベントがシミュレートされる。
これを実現するため、新たなタグが配列501にロードされた場合、プロセスは配列の最初のタグに戻って処理を再開する。したがって、アクト470の完了後、アクト480で、配列内のリンクのカウントを生成する。次に、アクト485において、アクト480で生成したカウント(すなわちアクト470の完了後に配列501に含まれるリンク数)がアクト430で判定された値(すなわちアクト470の完了前のリンクのカウント)と異なるかどうかを判定する。(新たなタグ8、9および10の生成後のように)値が異なる場合、プロセスはアクト440に戻り、配列内の最初のタグ(すなわち行Aのタグ9)を処理のために選択する。
配列内のタグ数が異なっていない場合、プロセスはアクト490に進み、配列内のすべてのタグが評価済みかどうかを判定する。一実施形態では、これは各行について列510に含まれる指示を評価することによって実行される。各行のこの列に格納された指示が、それぞれのタグが評価済みであると示している場合、プロセスは完了する。
配列501内のすべてのタグが評価済みではないと判定された場合には、プロセスはアクト450に戻り、次の未評価タグを処理のために選択する。そして、上記で説明したアクトを繰り返すことにより、配列内の各タグに関して、および結果として露呈される各リンクに関して、1つまたは複数のイベントをシミュレートする。
ウェブページに含まれるすべてのリンクが露呈された後、各リンクを検証することができる。一実施形態では、図6に示すプロセス600を用いて、ウェブページに含まれる各リンクの有効性を判断することができる。
プロセス600の開始後、アクト(処理)610が開始され、ある一つのリンクを評価のために選択する。これは任意の好適な方法で実行可能である。例えば、配列501(図5A〜図5B)からリンクを選択できる。例えば、列515に提供されるタグのタイプ指示を用いてリンクを選択できる。一実施形態では、配列内の最初のリンクを評価のために選択することができる。
アクト610の完了後、プロセスはアクト620に進み、リンクによって提供されるURLで指定されるリソースを取得することを求める要求を発する。一実施形態では、リソースを取得することを求めるHTTP(ハイパーテキスト転送プロトコル)要求を発する。
次に、プロセスはアクト630に進み、取得試行が成功したかどうかを判定する。一実施形態では、この判定は、アクト620で発せられたHTTP要求に応答して、サーバによって返されるステータスコードに基づくことができる。例えば、サーバがHTTP要求に応答してステータスコード「200」を返す場合、取得試行は成功とみなされ得るが、サーバがステータスコード「404」を返す場合、取得試行は不成功とみなされ得る。取得試行が成功とみなされる場合、プロセスはアクト640に進み、リンクを有効とマークする。取得試行が不成功とみなされる場合、プロセスはアクト645に進み、リンクを無効とマークする。
アクト640または645のいずれかの完了後、プロセスはアクト650に進み、プロセスがすべてのリンクを評価したかどうかを判定する。すべてのリンクが評価済みではない場合、プロセスはアクト610に戻り、次のリンクを評価のために選択する。すべてのリンクが評価済みである場合、プロセス600は完了する。
上記のように、本発明の実施形態を用いることにより、ページに含まれるリンクを識別することで、それらのリンクの有効性を評価できる。例えば、自動化されたプロセスが上記のプロセスを実施することによって、ページに含まれるリンクを識別し、参照されているリソースへのアクセスを求める要求を発することによりそれらの各リンクを評価し、グラフィカルユーザインタフェースを通じてユーザに評価結果を提示することができる。典型的なユーザインタフェース700を図7に示す。インタフェース700は、インタフェース101(図1)に示したウェブページに含まれるリンクの有効性の指示を提供する。
インタフェース700は部分701および702を含む。部分702は、リンクに関する特定の情報が各列に提示されるグリッドディスプレイ(マス目表示)を備える。例えば、列702Aは、リンクを表すためにインタフェース101上に示したテキスト(文章)を含み、列702Bはリンクのタイトルを含み、列702Cはリンクを取得する試行に応答して返されたステータスコードを含み、列702Dはサーバからステータスコードを取得するために要した時間を含む。
特定のリンクに関する情報が各行に配列される。例えば、テキスト「Microsoft.com home」で表されるリンク105(図1A)に関する情報が行705に示される。同様に、リンク110、115、120および103Aに関する情報がそれぞれ行710、715、720および725に示される。
行730に示されているように、インタフェース700は、イベント(事象)の発生にのみ現れるリンクに関する情報を表示する。具体的には、行730はリンク106Aに関する情報を表示するが、リンク106Aは図1Aには示されていない。むしろリンク106Aは図1Bに初めて示されており、ユーザ入力の受信後に現れる。行730は、他の情報のうちでもとりわけ、リンク106Aを表すテキスト、リンクタイトル、ステータスコード、およびステータスコードを取得するのに要した時間を含む。列702に表示されているようなリンク特性を含め、ウェブページの諸相に関する任意の適切な情報を示すことができる。
理解されるべきであるが、図7に関して説明したインタフェースを用いることにより、管理者あるいは、その他のユーザは、ウェブページによって提供されるリンクの一層包括的な目録(インベントリ)を取得できる。その結果、ユーザは、ページに含まれるリンクの有効性を判定すること等によって、サイトをより効果的に保守することができる。
また、以上のことから理解されるように、本発明の実施形態の諸態様は、1つまたは複数のコンピュータプログラム、および/またはハードウェア、ファームウェア、またはその組合せで実施可能である。例えば、実施形態の種々のコンポーネントが、個別に、または組み合わせて、プロセッサによるアクセスおよび実行のための命令が格納されたコンピュータ可読媒体を含むコンピュータプログラム製品として実施可能である。コンピュータによる実行時に、それらの命令がコンピュータに対して実施形態の諸態様を実施するよう指示することができる。
以上、本発明の少なくとも1つの実施形態のいくつかの態様について説明したが、理解されるように、当業者は種々の改変、変更、および改良に容易に想到するであろう。そのような改変、変更、および改良は、本明細書の一部であるものとし、本発明の精神および範囲内にあるものとする。したがって、上記の説明および図面は単なる例示に過ぎない。
ウェブページをユーザに提示するための典型的なブラウザインタフェースの図である。 ウェブページに含まれる或る一つの要素が露呈された後の、図1Aのウェブページを示すブラウザインタフェースの図である。 本発明の実施形態が実施され得る典型的なコンピュータシステムのブロック図である。 本発明の実施形態を含むプログラムされた命令が記憶され得る典型的なコンピュータメモリのブロック図である。 本発明の一実施形態による、ウェブページに含まれる要素が識別され得る典型的なプロセスを示すフローチャートである。 本発明の一実施形態による、ウェブページに含まれる要素を識別するための典型的技法を示す図である。 本発明の一実施形態による、ウェブページに含まれる要素を識別するための典型的技法を示す図である。 ウェブページに含まれるリンクを検証する典型的方法を示すフローチャートである。 本発明の一実施形態による、ウェブページに含まれる要素のステータス(状態)を判定するユーティリティによって表示される典型的なブラウザインタフェースの図である。
符号の説明
101 インタフェース
103(103A〜103F) エントリ
104 メニュー
105,110,115,120 リンク
106A〜106E エントリ
201 出力デバイス
202 入力デバイス
203 プロセッサ
204 メモリシステム(集積回路メモリ)
205 相互接続メカニズム
206 ストレージシステム
301 不揮発性記録媒体
302 ストレージシステムメモリ(揮発性メモリ、集積回路メモリ)
701,702 インタフェースの部分
710,715,720,725,730 行

Claims (17)

  1. ウェブページに含まれる少なくとも1つのリンクを評価する自動化された方法において、前記ウェブページはブラウザプログラムを通じてユーザに対して表示を行うように構成され、前記ウェブページは実行時に前記少なくとも1つのリンクを生成するコマンドを含み、該コマンドは前記ユーザによる入力の供給時に実行されるように構成されており、前記方法が、
    (A)前記入力の供給をシミュレートすることにより前記少なくとも1つのリンクを生成するアクト
    を含むことを特徴とする、リンクを評価する自動化された方法。
  2. 前記少なくとも1つのリンクがフライアウトメニュー内の少なくとも1つのエントリを含むことを特徴とする請求項1に記載の方法。
  3. 前記アクト(A)が、ドキュメントオブジェクトモデル(DOM)に前記ウェブページをロードすること、および該DOMに前記コマンドを実行させることをさらに含むことを特徴とする請求項1に記載の方法。
  4. 前記ウェブページが複数のタグを含み、前記アクト(A)が、
    前記DOMによって提供される配列に前記複数のタグをロードすること、および
    該配列にロードされた各タグに関して前記入力の供給をシミュレートすること
    をさらに含むことを特徴とする請求項3に記載の方法。
  5. 前記アクト(A)が、
    前記入力の供給をシミュレートすることにより第1のリンクを生成すること、および
    前記第1のリンクに関して前記入力の供給をシミュレートすることにより第2のリンクを生成すること
    をさらに含むことを特徴とする請求項1に記載の方法。
  6. 前記コマンドがダイナミックHTML(DHTML)形式で提供されることを特徴とする請求項1に記載の方法。
  7. 符号化された命令を坦持するコンピュータ可読媒体において、該命令は、実行時に、ウェブページに含まれる少なくとも1つのリンクを評価する方法を実行し、該ウェブページはブラウザプログラムを通じてユーザに対して表示を行うように構成され、該ウェブページは実行時に前記少なくとも1つのリンクを生成するコマンドを含み、該コマンドは前記ユーザによる入力の供給時に実行されるように構成されており、前記方法が、
    (A)前記入力の供給をシミュレートすることにより前記少なくとも1つのリンクを生成するアクト
    を含むことを特徴とするコンピュータ可読媒体。
  8. 前記少なくとも1つのリンクがフライアウトメニュー内の少なくとも1つのエントリを含むことを特徴とする請求項7に記載のコンピュータ可読媒体。
  9. 前記アクト(A)が、ドキュメントオブジェクトモデル(DOM)に前記ウェブページをロードすること、および該DOMに前記コマンドを実行させることをさらに含むことを特徴とする請求項7に記載のコンピュータ可読媒体。
  10. 前記ウェブページが複数のタグを含み、前記アクト(A)が、
    前記DOMによって提供される配列に前記複数のタグをロードすること、および
    前記配列にロードされた各タグに関して前記入力の供給をシミュレートすること
    をさらに含むことを特徴とする請求項9に記載のコンピュータ可読媒体。
  11. 前記アクト(A)が、
    前記入力の供給をシミュレートすることにより第1のリンクを生成すること、および
    前記第1のリンクに関して前記入力の供給をシミュレートすることにより第2のリンクを生成すること
    をさらに含むことを特徴とする請求項7に記載のコンピュータ可読媒体。
  12. 前記コマンドがダイナミックHTML(DHTML)形式で提供されることを特徴とする請求項7に記載のコンピュータ可読媒体。
  13. ウェブページに含まれる少なくとも1つのリンクを評価する自動化された方法を実行するシステムにおいて、前記ウェブページはブラウザプログラムを通じてユーザに対して表示を行うように構成され、前記ウェブページは実行時に前記少なくとも1つのリンクを生成するコマンドを含み、該コマンドは前記ユーザによる入力の供給時に実行されるように構成されており、前記システムが、
    前記入力の供給をシミュレートすることにより前記少なくとも1つのリンクを生成する生成コントローラ
    を備えたことを特徴とする、リンクを評価する自動化された方法を実行するシステム。
  14. 前記少なくとも1つのリンクがフライアウトメニュー内の少なくとも1つのエントリを含むことを特徴とする請求項13に記載のシステム。
  15. 前記生成コントローラが、さらに、ドキュメントオブジェクトモデル(DOM)に前記ウェブページをロードし、該DOMに前記コマンドを実行させることを特徴とする請求項13に記載のシステム。
  16. 前記ウェブページが複数のタグを含み、前記生成コントローラが、さらに、
    前記DOMによって提供される配列に前記複数のタグをロードし、
    前記配列にロードされた各タグに関して前記入力の供給をシミュレートする
    ことを特徴とする請求項15に記載のシステム。
  17. 前記生成コントローラが、さらに、
    前記入力の供給をシミュレートすることにより第1のリンクを生成し、
    前記第1のリンクに関して前記入力の供給をシミュレートすることにより第2のリンクを生成する
    ことを特徴とする請求項13に記載のシステム。
JP2005349474A 2004-12-30 2005-12-02 ウェブページの諸相を評価する方法および装置 Ceased JP2006323812A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/027,798 US20060150111A1 (en) 2004-12-30 2004-12-30 Methods and apparatus for evaluating aspects of a web page

Publications (2)

Publication Number Publication Date
JP2006323812A true JP2006323812A (ja) 2006-11-30
JP2006323812A5 JP2006323812A5 (ja) 2008-10-30

Family

ID=36129770

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005349474A Ceased JP2006323812A (ja) 2004-12-30 2005-12-02 ウェブページの諸相を評価する方法および装置

Country Status (5)

Country Link
US (1) US20060150111A1 (ja)
EP (1) EP1679619A3 (ja)
JP (1) JP2006323812A (ja)
KR (1) KR20060079080A (ja)
CN (1) CN1797405A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013504139A (ja) * 2010-08-10 2013-02-04 インターナショナル・ビジネス・マシーンズ・コーポレーション ウェブ・アプリケーションを自動的にテストする方法およびシステム

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1770550A1 (en) * 2005-10-03 2007-04-04 Sony Ericsson Mobile Communications AB Method and electronic device for obtaining an evaluation of an electronic document
JP4140916B2 (ja) * 2005-12-22 2008-08-27 インターナショナル・ビジネス・マシーンズ・コーポレーション Webページにおける状態遷移を解析する方法
US8914774B1 (en) 2007-11-15 2014-12-16 Appcelerator, Inc. System and method for tagging code to determine where the code runs
US8954989B1 (en) 2007-11-19 2015-02-10 Appcelerator, Inc. Flexible, event-driven JavaScript server architecture
US8260845B1 (en) 2007-11-21 2012-09-04 Appcelerator, Inc. System and method for auto-generating JavaScript proxies and meta-proxies
US8719451B1 (en) 2007-11-23 2014-05-06 Appcelerator, Inc. System and method for on-the-fly, post-processing document object model manipulation
US8566807B1 (en) 2007-11-23 2013-10-22 Appcelerator, Inc. System and method for accessibility of document object model and JavaScript by other platforms
US8819539B1 (en) 2007-12-03 2014-08-26 Appcelerator, Inc. On-the-fly rewriting of uniform resource locators in a web-page
US8756579B1 (en) 2007-12-03 2014-06-17 Appcelerator, Inc. Client-side and server-side unified validation
US8806431B1 (en) 2007-12-03 2014-08-12 Appecelerator, Inc. Aspect oriented programming
US8527860B1 (en) 2007-12-04 2013-09-03 Appcelerator, Inc. System and method for exposing the dynamic web server-side
US8938491B1 (en) 2007-12-04 2015-01-20 Appcelerator, Inc. System and method for secure binding of client calls and server functions
US8335982B1 (en) 2007-12-05 2012-12-18 Appcelerator, Inc. System and method for binding a document object model through JavaScript callbacks
US8639743B1 (en) 2007-12-05 2014-01-28 Appcelerator, Inc. System and method for on-the-fly rewriting of JavaScript
US8285813B1 (en) 2007-12-05 2012-10-09 Appcelerator, Inc. System and method for emulating different user agents on a server
US8291079B1 (en) 2008-06-04 2012-10-16 Appcelerator, Inc. System and method for developing, deploying, managing and monitoring a web application in a single environment
US8880678B1 (en) 2008-06-05 2014-11-04 Appcelerator, Inc. System and method for managing and monitoring a web application using multiple cloud providers
US7596620B1 (en) 2008-11-04 2009-09-29 Aptana, Inc. System and method for developing, deploying, managing and monitoring a web application in a single environment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000090079A (ja) * 1998-09-08 2000-03-31 Toshiba Corp コンテンツ作成装置及び方法並びにプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2003281093A (ja) * 2002-03-26 2003-10-03 Rikogaku Shinkokai ブラウザにおけるリンク先情報の閲覧方法及び装置
JP2004178512A (ja) * 2002-11-29 2004-06-24 Nippon Telegr & Teleph Corp <Ntt> リンク先コンテンツ閲覧支援装置、リンク先コンテンツ閲覧支援方法及びプログラム並びに記録媒体
WO2006046323A1 (ja) * 2004-10-28 2006-05-04 Fujitsu Limited インターネット情報収集装置、プログラム及び方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0974098A4 (en) * 1997-02-07 2000-10-25 About Com Inc COLLABORATIVE INTERNET DATA DETECTION SYSTEM
US6697825B1 (en) * 1999-11-05 2004-02-24 Decentrix Inc. Method and apparatus for generating and modifying multiple instances of element of a web site
JP4200645B2 (ja) * 2000-09-08 2008-12-24 日本電気株式会社 情報処理装置、情報処理方法および記録媒体
US7085736B2 (en) * 2001-02-27 2006-08-01 Alexa Internet Rules-based identification of items represented on web pages
US20020129164A1 (en) * 2001-03-05 2002-09-12 Koninklijke Philips Electronics N.V. Advanced path checker
US20020156799A1 (en) * 2001-04-24 2002-10-24 Stephen Markel System and method for verifying and correcting websites
US7581167B2 (en) * 2001-05-17 2009-08-25 Hewlett-Packard Development Company, L.P. Method and system for automated simulation of dynamic URL-based Web application
JP3798709B2 (ja) * 2002-02-22 2006-07-19 トヨタ自動車株式会社 サーバ、情報提供方法およびプログラム
US7461170B1 (en) * 2004-09-01 2008-12-02 Microsoft Corporation Zone-based rendering of resource addresses

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000090079A (ja) * 1998-09-08 2000-03-31 Toshiba Corp コンテンツ作成装置及び方法並びにプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2003281093A (ja) * 2002-03-26 2003-10-03 Rikogaku Shinkokai ブラウザにおけるリンク先情報の閲覧方法及び装置
JP2004178512A (ja) * 2002-11-29 2004-06-24 Nippon Telegr & Teleph Corp <Ntt> リンク先コンテンツ閲覧支援装置、リンク先コンテンツ閲覧支援方法及びプログラム並びに記録媒体
WO2006046323A1 (ja) * 2004-10-28 2006-05-04 Fujitsu Limited インターネット情報収集装置、プログラム及び方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013504139A (ja) * 2010-08-10 2013-02-04 インターナショナル・ビジネス・マシーンズ・コーポレーション ウェブ・アプリケーションを自動的にテストする方法およびシステム

Also Published As

Publication number Publication date
CN1797405A (zh) 2006-07-05
KR20060079080A (ko) 2006-07-05
EP1679619A3 (en) 2007-09-12
EP1679619A2 (en) 2006-07-12
US20060150111A1 (en) 2006-07-06

Similar Documents

Publication Publication Date Title
JP2006323812A (ja) ウェブページの諸相を評価する方法および装置
CN108293081B (zh) 通过用户界面事件的程序重放深度链接到移动应用状态
EP2504748B1 (en) System and method for object relationship identification in a user interface
JP4972254B2 (ja) リフレッシュ可能なWebクエリを作成するための統合された方法
US11366676B2 (en) Embedded user assistance for software applications
US7461371B2 (en) General purpose memory compiler system and associated methods
US8392886B2 (en) System, program product, and methods to enable visual recording and editing of test automation scenarios for web application
US10534512B2 (en) System and method for identifying web elements present on a web-page
KR101569984B1 (ko) 웹 스크래핑 추출 데이터 설정 방법
US20080282175A1 (en) Automatically encoded, gracefully degrading panels
CN108228228B (zh) 应用软件发布方法及装置
CN112464623A (zh) Rpa流程文件生成方法、装置、计算机设备和存储介质
CN110968305A (zh) 小程序可视化生成方法、装置、设备及存储介质
US20170031882A1 (en) Web Page Profiler
CN110275705A (zh) 生成预加载页面代码的方法、装置、设备及存储介质
CN108923997A (zh) 一种基于python的云服务节点自动测试方法及装置
CN111679976A (zh) 一种页面对象的查找方法及装置
CN114461533A (zh) Web页面自动化测试的方法、系统、电子装置和存储介质
CN112667218A (zh) 一种处理方法、装置、设备及存储介质
CN117215556A (zh) 模块化的页面快速构建方法、系统、设备及介质
JP2006185055A (ja) 計算機システムの設計支援システムおよび設計支援プログラム
CN111596828B (zh) cookie同步方法、装置及计算机可读存储介质
KR102191458B1 (ko) 웹 데이터 수집 장치 및 방법
CN113934959A (zh) 一种程序预览方法、装置、计算机设备和存储介质
CN113836450B (zh) 一种基于可视化操作获取xpath的数据接口生成方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080911

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080911

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110131

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110215

A045 Written measure of dismissal of application [lapsed due to lack of payment]

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20110624