(57)【特許請求の範囲】
【請求項１】
第１の画像と第２の画像を比較して、所定の許容範囲を超える差分を検出する差分検出手段と、
前記差分検出手段により検出された前記差分に対応する、画像領域を示す差分画像を表示する差分表示手段と、
アプリケーションを動作させて、その動作するアプリケーションにより表示される画面の画像を記録する記録手段と、
前記アプリケーションの、異なるバージョンでの各動作時に、前記記録手段により記録された画像に基づいて、前記異なるバージョン間で対応画面が存在するか否かを判定する判定手段と、
前記判定手段により対応画面が存在しないと判定された画面に関する情報と、前記差分検出手段により検出された前記差分に関する情報とをリスト表示する比較結果表示手段と、
を備え、
前記差分検出手段は、
前記アプリケーションの、異なるバージョンでの各動作時に、前記記録手段により記録された、対応する画面に関する前記第１の画像および前記第２の画像を比較する情報処理装置。
【請求項２】
請求項１に記載の情報処理装置において、
前記第１の画像または前記第２の画像上で、前記差分検出手段による比較対象から除外する領域の情報を取得する除外領域取得手段をさらに備え、
前記差分検出手段は、前記除外領域取得手段が取得した除外領域に対応する部分は、比較対象から除外する、
情報処理装置。
【請求項３】
請求項１又は２に記載の情報処理装置において、
前記差分検出手段により検出された前記差分に対応する、前記第１の画像の画像領域を抽出する領域抽出手段をさらに備え、
前記差分表示手段は、
前記領域抽出手段により抽出された前記画像領域を他の画像領域と区別可能に示す画像要素を前記第１の画像に付した画像を、前記差分画像として表示する、
情報処理装置。
【請求項４】
請求項１乃至３のいずれか一項に記載の情報処理装置において、
前記アプリケーションの、異なるバージョンについて、画面および画面遷移に関する仕様情報を取得する画面仕様情報取得手段と、
前記仕様情報に基づいて、前記アプリケーションの異なるバージョン間で、前記画面または前記画面遷移の仕様変更を検出し、前記仕様変更により変更がある画面を特定する仕様変更画面特定手段と、
前記仕様変更画面特定手段により特定された変更画面について、前記仕様変更に関する情報を、前記比較結果表示手段にさらに表示させる仕様変更情報表示手段と、
をさらに備える情報処理装置。
【請求項５】
請求項４に記載の情報処理装置において、
前記仕様変更画面特定手段により特定された変更画面について、前記アプリケーションの、異なるバージョンでの各動作時に、前記変更画面に対応する画面に関する前記第１の画像において変更される画像領域を特定する変更領域特定手段と、
前記差分検出手段により検出された、前記アプリケーションの、異なるバージョンでの各動作時に、前記記録手段により記録された、対応する画面に関する前記第１の画像および前記第２の画像の、前記差分に対応する、前記第１の画像の画像領域を抽出する領域抽出手段と、
前記領域抽出手段により抽出された前記第１の画像の前記画像領域が、前記変更領域特定手段により特定された変更画面の変更画像領域に対応するか否かを判定する対応判定手段と、
をさらに備え、
前記差分表示手段は、
前記対応判定手段により前記変更画面の変更画像領域に対応すると判定された前記第１の画像の前記画像領域を、他の画像領域と区別可能に示す画像要素を前記第１の画像に付した画像を、前記差分画像として表示する、
情報処理装置。
【請求項６】
請求項１乃至５のいずれか一項に記載の情報処理装置において、
前記差分検出手段は、
前記第１の画像と前記第２の画像を画素単位で比較し、差異が検出された対象画素を基準とする所定範囲に含まれる複数画素の中で、前記対象画素を含む差異が検出された画素の数が所定数未満の場合、前記対象画素の差異を前記差分に含めない、
情報処理装置。
【請求項７】
請求項１乃至６のいずれか一項に記載の情報処理装置において、
前記差分検出手段は、
前記第１の画像と前記第２の画像を画素単位で比較する際に、比較対象の画素を基準とする所定範囲に含まれる複数画素の平均画素値を算出し、算出された前記平均画素値で、前記第１の画像と前記第２の画像を比較する、
情報処理装置。
【請求項８】
請求項１乃至７のいずれか一項に記載の情報処理装置において、
前記差分検出手段は、
前記第１の画像と前記第２の画像を画素単位で比較する際に、対象画素の画素値の差が所定範囲以内であれば、その対象画素について、前記第１の画像と前記第２の画像間で差異はないとする、
情報処理装置。
【請求項９】
情報処理装置が、
第１の画像と第２の画像を比較して、所定の許容範囲を超える差分を検出し、
検出された前記差分に対応する、画像領域を示す差分画像を表示し、
アプリケーションを動作させて、その動作するアプリケーションにより表示される画面の画像を記録し、
前記アプリケーションの、異なるバージョンでの各動作時に、記録された画像に基づいて、前記異なるバージョン間で対応画面が存在するか否かを判定し、
前記対応画面が存在しないと判定された画面に関する情報と、検出された前記差分に関する情報とをリスト表示し、
前記差分を検出する際、
前記アプリケーションの、異なるバージョンでの各動作時に、記録された、対応する画面に関する前記第１の画像および前記第２の画像を比較する、
情報処理装置の情報処理方法。
【請求項１０】
コンピュータに、
第１の画像と第２の画像を比較して、所定の許容範囲を超える差分を検出する手順、
検出された前記差分に対応する、画像領域を示す差分画像を表示する手順、
アプリケーションを動作させて、その動作するアプリケーションにより表示される画面の画像を記録する手順、
前記アプリケーションの、異なるバージョンでの各動作時に、前記記録する手順において記録された画像に基づいて、前記異なるバージョン間で対応画面が存在するか否かを判定する手順、
前記判定する手順により対応画面が存在しないと判定された画面に関する情報と、前記差分を検出する手順により検出された前記差分に関する情報とをリスト表示する手順、を実行させ、
前記差分を検出する手順において、
前記アプリケーションの、異なるバージョンでの各動作時に、前記記録する手順により記録された、対応する画面に関する前記第１の画像および前記第２の画像を比較する手順、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、およびプログラムに関する。
【背景技術】
【０００２】
ウェブアプリケーションに関するテストケースおよびテストデータを自動的に生成する技術の一例が特許文献１に記載されている。このテストケース生成装置は、画面遷移定義情報からテストケース生成の対象画面を取得し、画面構成情報からテスト対象カラムを取得し、データ定義情報からテスト対象カラムに対する制約を取得し、テスト対象カラムに対する制約とテストケーステンプレートをマッチングさせ、テストケースとテストデータを生成する。そして、テスト結果を表示した画面のイメージがビットマップファイルとして出力される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−２６０３９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、ウェブアプリケーション等のプログラム開発途中で、仕様変更やバグの修正等によってプログラムを改変した場合に、意図しない部分に、その改変の影響が及んでしまうことがある。たとえば、画面表示等において、微細な修正によって、大きくフォーマットが崩れてしまったり、表示されるべき項目が消えてしまうといった不具合も起こりうる。このような不具合を早期に発見するためには、プログラムの改変前と後との対応する表示画面間の比較を行うことが有効である。しかしながら、上述の文献では、表示画面間を比較することは想定されていない。
【０００５】
画面を比較して差分を検出する手法として、画素毎に比較して、画素単位の差分を検出する手法が考えられる。この手法では、画素単位の差分が厳密に検出される。一方で、画素単位の厳密な差分よりも、或る程度の大きさを持った差分を把握したい場面があり得る。たとえば、上述のようなプログラム改変後の表示画面の不具合の検出には、画素単位の厳密な差分よりも、或る程度意味のある表示要素単位の差分の把握がより重要となる。
【０００６】
本発明は上記事情に鑑みてなされたものであり、その目的とするところは、画像間の差分を適切な精度で提示する情報処理装置、情報処理方法、およびプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
本発明の各側面では、上述した課題を解決するために、それぞれ以下の構成を採用する。
【０００８】
第一の側面は、情報処理装置に関する。
第一の側面に係る情報処理装置は、
第１の画像と第２の画像を比較して、所定の許容範囲を超える差分を検出する差分検出手段と、
前記差分検出手段により検出された前記差分に対応する、画像領域を示す差分画像を表示する差分表示手段と、
アプリケーションを動作させて、その動作するアプリケーションにより表示される画面の画像を記録する記録手段と、
前記アプリケーションの、異なるバージョンでの各動作時に、前記記録手段により記録された画像に基づいて、前記異なるバージョン間で対応画面が存在するか否かを判定する判定手段と、
前記判定手段により対応画面が存在しないと判定された画面に関する情報と、前記差分検出手段により検出された前記差分に関する情報とをリスト表示する比較結果表示手段と、を有し、
前記差分検出手段は、
前記アプリケーションの、異なるバージョンでの各動作時に、前記記録手段により記録された、対応する画面に関する前記第１の画像および前記第２の画像を比較する。
【０００９】
第二の側面は、少なくとも１つのコンピュータにより実行される情報処理方法に関する。第二の側面に係る情報処理方法は、情報処理装置が、
第１の画像と第２の画像を比較して、所定の許容範囲を超える差分を検出し、
検出された前記差分に対応する、画像領域を示す差分画像を表示し、
アプリケーションを動作させて、その動作するアプリケーションにより表示される画面の画像を記録し、
前記アプリケーションの、異なるバージョンでの各動作時に、記録された画像に基づいて、前記異なるバージョン間で対応画面が存在するか否かを判定し、
前記対応画面が存在しないと判定された画面に関する情報と、検出された前記差分に関する情報とをリスト表示し、
前記差分を検出する際、
前記アプリケーションの、異なるバージョンでの各動作時に、記録された、対応する画面に関する前記第１の画像および前記第２の画像を比較する、ことを含む。
【００１０】
なお、本発明の他の側面としては、上記第二の側面の方法を少なくとも１つのコンピュータに実行させるプログラムであってもよいし、このようなプログラムを記録したコンピュータが読み取り可能な記録媒体であってもよい。この記録媒体は、非一時的な有形の媒体を含む。
このコンピュータプログラムは、コンピュータにより実行されたとき、コンピュータに、情報処理装置上で、その情報処理方法を実施させるコンピュータプログラムコードを含む。
【００１１】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【００１２】
また、本発明の各種の構成要素は、必ずしも個々に独立した存在である必要はなく、複数の構成要素が一個の部材として形成されていること、一つの構成要素が複数の部材で形成されていること、ある構成要素が他の構成要素の一部であること、ある構成要素の一部と他の構成要素の一部とが重複していること、等でもよい。
【００１３】
また、本発明の方法およびコンピュータプログラムには複数の手順を順番に記載してあるが、その記載の順番は複数の手順を実行する順番を限定するものではない。このため、本発明の方法およびコンピュータプログラムを実施するときには、その複数の手順の順番は内容的に支障のない範囲で変更することができる。
【００１４】
さらに、本発明の方法およびコンピュータプログラムの複数の手順は個々に相違するタイミングで実行されることに限定されない。このため、ある手順の実行中に他の手順が発生すること、ある手順の実行タイミングと他の手順の実行タイミングとの一部ないし全部が重複していること、等でもよい。
【発明の効果】
【００１５】
上記各側面によれば、画像間の差分を適切な精度で提示する情報処理装置、情報処理方法、およびプログラムを提供することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施の形態に係る情報処理装置の構成を論理的に示す機能ブロック図である。
【図２】本発明の実施の形態に係る情報処理装置を実現するコンピュータのハードウェア構成を示すブロック図である。
【図３】本発明の実施の形態に係る情報処理装置の情報処理方法における処理手順を示すフローチャートである。
【図４】本実施形態の情報処理装置による画像比較処理を説明するための図である。
【図５】本発明の実施の形態に係る情報処理装置の構成を論理的に示す機能ブロック図である。
【図６】本発明の実施の形態に係る情報処理装置の情報処理方法における処理手順を示すフローチャートである。
【図７】本実施形態の情報処理装置による画像比較処理を説明するための図である。
【図８】本発明の実施の形態に係る情報処理装置を利用するアプリケーション開発システムの構成の一例を示すブロック図である。
【図９】本発明の実施の形態に係る情報処理装置を利用する開発装置によって開発されたアプリケーションを動作させるシステムの構成の一例を示すブロック図である。
【図１０】本発明の実施の形態に係る情報処理装置の構成を論理的に示す機能ブロック図である。
【図１１】本実施形態の情報処理装置において画像比較対象となる記録画像を説明するための図である。
【図１２】本発明の実施の形態に係る情報処理装置の情報処理方法における処理手順を示すフローチャートである。
【図１３】本実施形態の情報処理装置における画像比較ツールの画像比較実行画面の一例を示す図である。
【図１４】本発明の実施の形態に係る情報処理装置の構成を論理的に示す機能ブロック図である。
【図１５】本実施形態の情報処理装置において画像比較対象となる記録画像を説明するための図である。
【図１６】本実施形態の情報処理装置の比較結果表示部により出力される比較結果リストの一例を示す図である。
【図１７】本発明の実施の形態に係る情報処理装置の情報処理方法における処理手順を示すフローチャートである。
【図１８】本発明の実施の形態に係る情報処理装置の構成を論理的に示す機能ブロック図である。
【図１９】本発明の実施の形態に係る情報処理装置の構成を論理的に示す機能ブロック図である。
【図２０】本実施形態の情報処理装置の比較結果表示部により出力される比較結果リストの一例を示す図である。
【図２１】本発明の実施の形態に係る情報処理装置の情報処理方法における処理手順を示すフローチャートである。
【図２２】本発明の実施の形態に係る情報処理装置の要部構成を論理的に示す機能ブロック図である。
【図２３】本実施形態の情報処理装置における画像比較による差分画像の例を示す図である。
【図２４】本発明の実施の形態に係る情報処理装置の構成を論理的に示す機能ブロック図である。
【図２５】本発明の実施の形態に係る情報処理装置の情報処理方法における処理手順を示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
【００１８】
（第１の実施の形態）
本発明の第１の実施の形態に係る情報処理装置、情報処理方法およびプログラムについて、以下説明する。
図１は、本発明の実施の形態に係る情報処理装置１００の構成を論理的に示す機能ブロック図である。
情報処理装置１００は、第１の画像１２０と第２の画像１２２を比較して、所定の許容範囲を超える差分を検出する差分検出部１０２と、差分検出部１０２により検出された差分に対応する、画像領域を示す差分画像１２４を表示する差分表示部１０４と、を備える。
【００１９】
さらに、本実施形態の情報処理装置１００は、差分検出部１０２により検出された差分に対応する、第１の画像の画像領域を抽出する領域抽出部１０６をさらに備える。
差分表示部１０４は、領域抽出部１０６により抽出された画像領域を他の画像領域と区別可能に示す画像要素を第１の画像１２０に付した画像を、差分画像１２４として表示する。
【００２０】
本実施形態の情報処理装置１００により比較される画像（第１の画像１２０および第２の画像１２２）は何ら制限されない。当該画像は、たとえば、アプリケーションによって表示装置に表示される画面をスクリーンショットして取得される画面キャプチャの画像ファイルであってもよいし、アプリケーションによって印字出力される帳票をファイル形式で出力して取得される画像ファイルであってもよいし、描画ツールによって描画されたり、撮像装置によって撮像されたりして取得される画像ファイルであってもよい。
【００２１】
画像のファイル形式も特に限定されないが、たとえば、ＪＰＥＧ（Joint Photographic Experts Group）、ＢＭＰ（Bit MaP）、ＰＮＧ（Portable Network Graphics）、ＴＩＦＦ（Tagged Image File Format）等が例示される。比較される画像どうしで異なるファイル形式である場合には、情報処理装置１００は、少なくとも一方の画像のファイル形式を変換することもできる。
【００２２】
以下、差分検出部１０２における、比較処理における許容範囲の設定方法について、例示するが、これに限定されない。これらの方法は、適宜矛盾のない範囲で組み合わせてもよい。
【００２３】
（ａ１）周囲画素を含めた比較
差分検出部１０２は、画素単位の比較の際に、１画素分の比較結果を採用するのではなく、周囲の画素を含めた比較結果を用いて画素の差異を分析して、画像間の差分を検出してもよい。
本実施形態の情報処理装置１００において、差分検出部１０２は、第１の画像と第２の画像を画素単位で比較し、差異が検出された対象画素を基準とする所定範囲に含まれる複数画素の中で、対象画素を含む差異が検出された画素の数が所定数未満の場合、対象画素の差異を差分に含めない。
【００２４】
より詳細には、差分検出部１０２は、画像を画素単位で比較する際、画像間に差異が検出された対象画素（x1, y1）について、その対象画素を基準とする所定範囲に含まれる複数の画素を特定する。本実施形態では、対象画像の周囲の８つの画素を含めた９つの画素（x1, y1）、（x1-1, y1+1）、（x1-1, y1）、（x1-1, y1-1）、（x1, y1+1）、（x1, y1-1）、（x1+1, y1+1）、（x1+1, y1）、（x1+1, y1-1）が特定される。そして、差分検出部１０２は、これらの対象画素を含む複数の画素の中で、差異が検出された画素の数を計数する。そして、差分検出部１０２は、計数された画素の数が、所定数（たとえば、３）未満の場合、対象画素（x1, y1）の差異を画像間の差分に含めない。つまり、先に検出された差異の判定を覆して、差異がないとする。
【００２５】
一方、差分検出部１０２は、計数された画素の数が、所定数（たとえば、３）未満でない場合（たとえば、計数された画素の数が２の場合）、対象画素（x1, y1）の差異を画像間の差分に含める。
なお、対象画素を基準とする複数画素の所定範囲は、画像比較に要求される精度や、画像のサイズ、画質、解像度、色数（階調）、ファイルの種別、画像の内容等に応じて、適宜決定することができる。
【００２６】
（ａ２）周囲画素の平均値で比較
差分検出部１０２は、画素単位の比較の際に、１画素の明るさや色等の情報だけで比較するのではなく、周囲の画素の情報を用いてもよい。
本実施形態の情報処理装置１００において、差分検出部１０２は、第１の画像と第２の画像を画素単位で比較する際に、比較対象を基準とする所定範囲に含まれる複数画素の平均画素値を算出し、算出された平均画素値で、第１の画像と第２の画像を比較する。
【００２７】
画素値とは、画素の明るさや色を示す値であり、ここでは、ＲＧＢ値を用いた例を説明する。
より詳細には、差分検出部１０２は、画像を画素単位で比較する際、基準となる対象画素（x1, y1）と、その対象画素を基準とする所定範囲に含まれる複数の画素を特定する。本実施形態では、対象画像の周囲の８つの画素を含めた９つの画素（x1, y1）、（x1-1, y1+1）、（x1-1, y1）、（x1-1, y1-1）、（x1, y1+1）、（x1, y1-1）、（x1+1, y1+1）、（x1+1, y1）、（x1+1, y1-1）が特定される。そして、差分検出部１０２は、これらの対象画素を含む複数の画素について、ＲＧＢの各値の平均値をそれぞれ算出する。差分検出部１０２は、画像毎に、算出されたＲＧＢの各値の平均値を用いて、第１の画像と第２の画像を比較する。
【００２８】
なお、対象画素を基準とする複数画素の所定範囲は、画像比較に要求される精度や、画像のサイズ、画質、解像度、色数（階調）、ファイルの種別、画像の内容等に応じて、適宜決定することができる。
また、さらに、差分検出部１０２は、各画素のＲＧＢの各値の平均値の画像間の差が、許容範囲を超える場合に画像間の差分を検出し、許容範囲内の場合は画像間の差分を検出しない構成としてもよい。
【００２９】
（ａ３）比較値に許容範囲を設定
差分検出部１０２は、画素単位の比較の際に、画像加工処理等により、画像の明るさやコントラストが調整されたような画像間の差分は検出しない構成としてもよい。
本実施形態の情報処理装置１００において、差分検出部１０２は、第１の画像と第２の画像を画素単位で比較する際に、対象画素の画素値（たとえば、ＲＧＢ値）の差が所定範囲以内であれば、その対象画素について、第１の画像と第２の画像間で差異はないとする。
【００３０】
より詳細には、差分検出部１０２は、たとえば、画素のＲＧＢの各値について、第１の画像と第２の画像間で比較し、各値の差の絶対値の合計を算出する。たとえば、第１の画像のある画素のＲＧＢ値が255:0:0で、第２の画像の対応する画像のＲＧＢ値が254:0:0の場合、差分検出部１０２は、各値の差は（255-254=1）：（0-0）：（0-0）となり、各値の絶対値の合計は、１＋０＋０＝１となる。一方、第１の画像のある画素のＲＧＢ値が255:0:0で、第２の画像の対応する画像のＲＧＢ値が253:1:0の場合、差分検出部１０２は、各値の差は（255-253=2）：（0-1=-1）：（0-0）となり、各値の絶対値の合計は、２＋１＋０＝３となる。
【００３１】
差分検出部１０２は、算出された合計が許容範囲内（たとえば、３未満）であれば、当該画素について、第１の画像と第２の画像間で差異はないとする。一方、差分検出部１０２は、算出された合計が許容範囲を超える場合は、当該画素について、第１の画像と第２の画像間で差異があるとする。上記の例では、前者の画素は、算出された合計が１で許容範囲内であるので、差分検出部１０２は、当該画素について、第１の画像と第２の画像間で差異はないと判定する。一方、後者の画素は、算出された合計が３で、許容範囲内に入らないので、差分検出部１０２は、当該画素について、第１の画像と第２の画像間で差異があるとする。
【００３２】
あるいは、画像の明るさ調整、コントラスト調整、カラーバランス（値、色合い、鮮やかさ）調整、レベル補正（中間色、ハイライト、シャドウ）、トーンカーブ補正等の画像加工処理によって生じる程度の画像間の差分は検出しないよう上記許容範囲を設定してもよい。上記の例では、各値の差の絶対値の合計で判別しているが、画像加工処理によって生じるような差異を判別する場合には、処理内容によって各値の変化の相関関係が異なる場合が考えられるため、処理内容に適した値を算出し、処理内容に適した許容範囲を用いて判別するのが好ましい。
【００３３】
（ａ４）画面全体のズレを許容
差分検出部１０２は、画像全体が１画素分だけずれているような場合には、ずれによる差分は検出しない構成としてもよい。この構成は、たとえば、画像を画面表示させるJavaScript（登録商標）等のバージョンの違いによって画面内の画像が１画素分だけずれてしまうような場合への適用が考えられる。
すなわち、本実施形態では、差分検出部１０２は、第１の画像と第２の画像との比較基準点を所定量以内ずらすことで解消される差分を差分とみなさない。
本実施形態では、以下に示す２つの方法で、画像全体のずれを許容する構成が考えられる。
【００３４】
（ａ４−１）比較基準点を検出して位置合わせ
本実施形態の差分検出部１０２は、第１の画像と第２の画像に共通して含まれる所定のオブジェクトを検出し、そのオブジェクトの各画像内の位置のずれが所定範囲内であれば、２つの画像のオブジェクトの位置合わせをした状態で、第１の画像と第２の画像を画素単位で比較する。
【００３５】
画像に共通して含まれる所定のオブジェクトとは、たとえば、アプリケーションの画面のキャプチャ画像を例にすると、画面上にＯＳ（Operating System）やアプリケーション等によって標準的に表示されている、ツールバーや操作ボタン、ウインドウの枠やタイトルバー、閉じるボタン、最小化ボタン、最大化ボタン、スクロールバーのスクロールボタン等や、固定位置に表示される日時情報、タイトル、アイコン等が考えられる。あるいは、予め各画像内の所定の位置に配置される特定画像としてもよい。そして検出されたオブジェクトの中心や端点を比較基準点として位置合わせしてもよい。
【００３６】
オブジェクトが何かを、予め定めておき、差分検出部１０２が、特定のオブジェクトを検出する構成としてもよい。または、差分検出部１０２が、２つの画像を比較して、共通に含まれる、同一のオブジェクトを検出し、検出されたものを所定のオブジェクトとしてもよい。後者の場合、各画像内の所定範囲内に含まれるオブジェクトを検出するようにするのが好ましい。
【００３７】
差分検出部１０２は、第１の画像と第２の画像内で、それぞれ所定のオブジェクトを検出する。そして、差分検出部１０２は、所定のオブジェクトを元に、比較基準点を特定し、２つの画像の比較基準点を一致させるように位置合わせを行う。
そして、差分検出部１０２は、位置合わせ時のずれ幅が狭く、所定範囲内であれば、２つの画像の原点を位置合わせした状態で、第１の画像と第２の画像を画素単位で比較する。このケースでは、もし画像全体が数画素分ずれているだけであれば、画像間の差分は検出されない。
【００３８】
なお、差分検出部１０２は、画像間のずれが所定範囲を超えて大きい場合には、画像間の差分を検出する。ここで検出されるのは、画像全体の位置ずれを示す情報（ずれ方向、ずれ幅、およびこれらを示すベクトル）であってもよい。
あるいは、差分検出部１０２は、画像間のずれが所定範囲を超えて大きい場合には、位置合わせを解除して元の位置に戻し、各画像の全体を比較対象として、差分を検出してもよい。
【００３９】
また、画像間の比較基準点のずれが所定範囲内であり、画像間の比較において差分が検出されなかった場合であっても、位置合わせをする前のいずれかの画像の端部に目視で確認できる程度の白い線が出ているような差異があれば、検出されるのが好ましい。したがって、差分検出部１０２は、画像の位置合わせ時のずれ幅が、所定範囲内であって、かつ、画像間の比較において差分が検出されなかった場合であっても、画像をずらしたことで比較対象とならなかった、各画像の端部について、たとえば、所定画素数以上の幅の白または黒等の背景色の線が出ている場合には、画像間の差分を検出してもよい。
【００４０】
（ａ４−２）所定の割合以上の差分検出時に位置合わせ
画像全体がずれている場合、画像比較を画素単位で行うと、画像の全体にわたって差分が検出される可能性が高い。したがって、画像比較した際に、所定の割合以上の領域にわたって差分が検出された場合に、画像全体がずれている可能性があると判定し、画像を縦または横方向にずらして位置合わせをした後で、画像比較するのが好ましい。
【００４１】
差分検出部１０２は、第１の画像と第２の画像を画素単位で比較し、画像のほぼ全体を占めるような、所定の割合以上の領域に差異が検出された場合、縦または横方向に、２つの画像を画素単位でずらし、画像比較を行う。画像間のずれが所定量（たとえば、３画素）以上になるまで、画像の位置をずらす処理と、画像比較の処理を繰り返す。
【００４２】
差分検出部１０２は、所定量以内で画像をずらして画像比較を行った結果、画像のほぼ全体を占めていた差異が、急激に減少し、その減少率が閾値以上の場合、または、差異がほとんどなくなった場合、２つの画像の位置合わせが完了したものと判定する。そして、もし画像全体が数画素分ずれているだけであれば、差分検出部１０２により、画像間の差分は検出されない。また、所定量以上、画像をずらしても、差異が減少しない場合は、差分検出部１０２により最初に検出された差分を採用する。
【００４３】
以上、差分検出部１０２における画素単位の比較時の許容範囲の設定方法について説明した。
なお、上記の各方法において、周囲の画素数や、所定数は、パラメータとして、設定変更できる構成とするのが好ましい。また、上記の各方法では、画素の色を表記する値としてＲＧＢモデルを用いているが、これに限定されない。他のモデル、ＲＧＢＡ（Red Green Blue Alpha color model）、ＨＳＶ（Hue Saturation Value color model）、ＣＭＹ（Cyan Magenta Yellow color model）、ＣＭＹＫ（Cyan Magenta Yellow Key plate color model）等で示される値を用いてもよい。
【００４４】
また、差分検出部１０２における画像比較処理は、上述した、第１の画像１２０と第２の画像１２２を画素単位でマッチング処理を行う以外にも考えられる。
たとえば、文字列の比較を文字または単語単位で行ってもよい。差分検出部１０２が、画像内の文字をＯＣＲ（Optical Character Reader）ツール等を用いて読み取り、読み取った文字列を比較してもよい。
【００４５】
本発明において、差分検出部１０２は、複数（多数）組の第１の画像１２０と第２の画像１２２について、対応する画像同士の比較処理が自動的に行えるのが望ましい。たとえば、比較処理対象の組の第１の画像１２０と第２の画像１２２は少なくとも一部が同じであるファイル名を付し、それぞれ異なるフォルダ（第１のフォルダと第２のフォルダ）（不図示）に格納されているとよい。さらに、差分画像１２４も同様なファイル名を付してもよく、差分画像１２４は第１のフォルダと第２のフォルダとは異なるフォルダ（第３のフォルダ）に格納されてもよい。
【００４６】
このようにすれば、複数組の画像を効率よく比較することができる。たとえば、差分検出部１０２は、第１のフォルダと第２のフォルダ内の同じファイル名を有する画像ファイルを第１の画像１２０および第２の画像１２２として選択して画像比較処理を行う。そして、差分表示部１０４により生成される差分画像１２４にも同じファイル名を付して第３のフォルダに格納できる。フォルダ内の各ファイルについて同様に処理を繰り返せば、複数組の画像について比較処理を行うことができる。
【００４７】
なお、画像のファイル名の付け方や比較対象画像の格納先は、上記に限定されない。比較対象画像を特定できればよく、所定の規則に従って識別情報を含んでファイル名またはパス名を生成してもよい。
【００４８】
差分表示部１０４が抽出領域と他の領域とを区別可能に示すために、画像画素を付す方法について以下に例示するが、これらに限定されない。また、以下の方法を矛盾のない範囲で適宜組み合わせてもよい。なお、画像画素が付された後、抽出領域の内容が分からなくならない程度に処理を施すのが好ましい。
（ｂ１）少なくともいずれか一方の領域を色（模様）付け、または背景色とする。両方の領域を色（模様）付けする場合には、異なる色（模様）を用いる。
（ｂ２）少なくともいずれか一方の領域に強調表示等の特殊効果処理を施す。両方の領域に特殊効果を施す場合には、異なる効果処理を施す。強調表示とは、たとえば、対象領域の輝度を上げて表示したり、点滅表示したり、３Ｄ（3-dimensional）表示させたりすることを指す。
（ｂ３）少なくともいずれか一方の領域を枠で囲む。両方の領域を囲む場合には、異なる線種または色を用いる。
【００４９】
図２は、本発明の実施の形態に係る情報処理装置１００を実現するコンピュータ６０のハードウェア構成を示すブロック図である。
本実施形態において、図１の情報処理装置１００の各構成要素は、図２に示される任意のコンピュータ６０のハードウェアとソフトウェアの任意の組合せによって実現される。コンピュータ６０は、ＣＰＵ（Central Processing Unit）６２、メモリ６４、メモリ６４にロードされた本図の構成要素を実現するプログラム８０、そのプログラム８０を格納するハードディスクなどの記憶ユニット（ストレージ６６：補助記憶装置）、Ｉ／Ｏ（Input/Output）６８、ネットワーク接続用インタフェース（通信Ｉ／Ｆ（InterFace：インタフェース）７０）を備える。そして、その実現方法、装置にはいろいろな変形例があることは、当業者には理解されるところである。以下に説明する各機能ブロック図は、ハードウェア単位の構成ではなく、機能単位の論理的なブロックを示している。
また、以下の各図において、本発明の本質に関わらない部分の構成については省略してあり、図示されていない。
【００５０】
本実施形態において、情報処理装置１００は、たとえば、サーバコンピュータ、パーソナルコンピュータ、またはそれらに相当するコンピュータにより実現することができる。情報処理装置１００を実現するコンピュータ６０は、たとえば、キーボードやマウス等の入力装置７２、ディスプレイ等の表示装置７４、入力装置７２と表示装置７４が一体となったタッチパネル（不図示）、マイクやスピーカ等の音声入出力装置（不図示）、または、プリンタ等の出力装置（不図示）と接続される。
【００５１】
コンピュータ６０の各要素は、バス６９を介して互いに接続され、ＣＰＵ６２により各要素とともに情報処理装置１００全体が制御される。コンピュータ６０のＣＰＵ６２が、ストレージ６６に記憶されるプログラム８０をメモリ６４に読み出して実行することにより、情報処理装置１００の図１の各ユニットの各機能を実現することができる。なお、以下の各実施形態においても同様であり、各実施形態の情報処理装置の各ユニットの各機能は、コンピュータ６０のＣＰＵ６２が各実施形態に対応するプログラム８０を実行することにより実現される。
【００５２】
本実施形態のコンピュータプログラム８０は、情報処理装置１００を実現させるためのコンピュータ６０に、第１の画像と第２の画像を比較して、所定の許容範囲を超える差分を検出する手順、検出された差分に対応する、第１の画像の画像領域を抽出する手順、抽出された画像領域を他の画像領域と区別可能に示す画像要素を第１の画像に付した画像を生成する手順、生成された画像を、検出された差分に対応する、画像領域を示す差分画像を表示する手順、を実行させるように記述されている。
【００５３】
本実施形態のコンピュータプログラム８０は、コンピュータ６０で読み取り可能な記録媒体に記録されてもよい。記録媒体は特に限定されず、様々な形態のものが考えられる。また、プログラム８０は、記録媒体からコンピュータ６０のメモリ６４にロードされてもよいし、ネットワーク３を通じてコンピュータ６０にダウンロードされ、メモリ６４にロードされてもよい。または、プログラム８０は、記録媒体からコンピュータ６０のストレージ６６に読み込まれて格納された後、メモリ６４にロードされてもよい。
【００５４】
コンピュータプログラム８０を記録する記録媒体は、非一時的な有形のコンピュータ６０が使用可能な媒体を含み、その媒体に、コンピュータ６０が読み取り可能なプログラムコードが埋め込まれる。コンピュータプログラム８０が、コンピュータ６０上で実行されたとき、コンピュータ６０に、情報処理装置１００を実現する以下の制御方法を実行させる。
【００５５】
このように構成された本実施形態の情報処理装置１００の情報処理方法について、以下説明する。
図３は、本発明の実施の形態に係る情報処理装置１００の情報処理方法における処理手順を示すフローチャートである。
本発明の実施の形態に係る情報処理装置１００の情報処理方法は、情報処理装置１００が、第１の画像と第２の画像を比較して、所定の許容範囲を超える差分を検出し（ステップＳ１０１）、検出された差分に対応する、第１の画像の画像領域を抽出し（ステップＳ１０３）、抽出された画像領域を他の画像領域と区別可能に示す画像要素を第１の画像に付した画像を生成し（ステップＳ１０５）、生成された画像を、検出された差分に対応する、画像領域を示す差分画像を表示する（ステップＳ１０７）。
【００５６】
以下、図３および図４を用いてさらに詳細に説明する。
図４は、本実施形態の情報処理装置１００による画像比較処理を説明するための図である。
まず、差分検出部１０２が、図４（ａ）の画像ｐ１と画像ｐ２を比較し、差分を検出する（ステップＳ１０１）。
図４（ａ）の例では、画像ｐ１の文字列「ＡＢＣ」が小文字なのに対して、画像ｐ２では文字列「ａｂｃ」と小文字になっている。また、画像ｐ１の表Ｔ１は３列なのに対して、画像ｐ２では表Ｔ２は４列になっている。
【００５７】
差分検出部１０２によりこれらの差分が検出され、領域抽出部１０６が、差分検出部１０２により検出された差分に対応する第１の画像の画像領域を抽出する（ステップＳ１０３）。たとえば、図４（ａ）に示すように、画像ｐ１において、領域ｒ１１と領域ｒ１２の２箇所が抽出される。
【００５８】
差分表示部１０４が、領域抽出部１０６により抽出された画像領域（図４（ａ）の領域ｒ１１と領域ｒ１２）を、他の領域と区別可能に示す画像要素（図４（ｂ）のハッチング領域）を付した画像を生成し（ステップＳ１０５）、図４（ｂ）のような差分画像ｄｐ１として表示する（ステップＳ１０７）。
【００５９】
あるいは、領域抽出部１０６が、差分検出部１０２により検出された差分に対応する画像ｐ２の画像領域（図４（ａ）の領域ｒ２１と領域ｒ２２）を抽出してもよい。そして、差分表示部１０４が、領域抽出部１０６により抽出された画像領域（図４（ａ）の領域ｒ２１と領域ｒ２２）を、他の領域と区別可能に示す画像要素（図４（ｃ）のハッチング領域）を付した画像を生成し、図４（ｃ）のような差分画像ｄｐ２として表示する。
【００６０】
図４（ｂ）または図４（ｃ）の例では、差分画像ｄｐ１または差分画像ｄｐ２は、２つの画像ｐ１および画像ｐ２の差分に対応する抽出領域（ｒ１１またはｒ２１、およびｒ１２またはｒ２２）以外の他の領域内の画像画素に所定の色を付けて、差分に対応する抽出領域だけが見えるようにしている。
【００６１】
以上説明したように、本実施形態の情報処理装置１００において、差分検出部１０２が第１の画像および第２の画像を比較して、所定の許容範囲を超える差分を検出し、差分表示部１０４が検出された差分に対応する第１の画像の画像領域を抽出する。そして、差分表示部１０４が、抽出された画像領域を他の画像領域と区別可能に示す画像要素を第１の画像に付した画像を、検出された差分に対応する、画像領域を示す差分画像として表示する。
このように、本発明の実施の形態に係る情報処理装置１００によれば、画像間の差分を適切な精度で提示することができる。また、比較対象の画像間で検出された差分に対応する画像領域を抽出し、抽出された領域を、他の領域と区別して示す差分画像を表示できるので、画像間の差異が分かりやすい。
【００６２】
（第２の実施の形態）
次に、本発明の第２の実施の形態に係る情報処理装置および情報処理方法について、以下説明する。なお、本実施形態のプログラムは、上記実施形態と同様に、情報処理装置の情報処理方法を少なくとも１つのコンピュータに実行させるものであり、本実施形態での詳細な説明は省略する。
図５は、本発明の実施の形態に係る情報処理装置２００の構成を論理的に示す機能ブロック図である。
本実施形態の情報処理装置２００は、上記実施形態の情報処理装置１００とは、さらに、差分を検出する対象から除外する領域を指定して画像比較を行う構成を有する点で相違する。
本実施形態の情報処理装置２００は、上記実施形態の情報処理装置１００と同様な差分表示部１０４と、領域抽出部１０６と、を備えるとともに、さらに、除外領域取得部２０２と、差分検出部２０４と、を備える。本実施形態の差分検出部２０４は、上記実施形態の情報処理装置１００の差分検出部１０２と同様な機能を有するとともに、さらに、以下に説明する機能を有する。
【００６３】
本実施形態の情報処理装置２００は、上記実施形態の情報処理装置１００の構成との組み合わせを例に説明するが、以下に説明する他の実施形態の構成と適宜矛盾のない範囲で組み合わせることもできる。
【００６４】
本実施形態の情報処理装置２００は、第１の画像または第２の画像上で、差分検出部２０４による比較対象から除外する領域の情報を取得する除外領域取得部２０２をさらに備える。
差分検出部２０４は、除外領域取得部２０２が取得した除外領域に対応する部分は、比較対象から除外する。
【００６５】
本実施形態では、たとえば、日時情報を含んでいる画面を異なる時刻にキャプチャして得られた画像を比較対象としたような場合に、表示されている日時情報が画像間で違っているのが正しいため、画像間の差異として検出しないようにするために、画像上で日時情報が含まれている領域を、比較対象から除外する。
【００６６】
除外領域は、ユーザにより指定できる構成が望ましい。たとえば、画像を表示した画面上でＧＵＩ（Graphical User Interface）を用いて日時情報の領域を矩形で囲むことで、除外領域を指定することができる。除外領域取得部２０２は、指定された除外領域の画像上での位置情報を取得する。
除外領域の指定は、第１の画像および第２の画像の少なくともいずれか一方で行うことができる。
差分検出部２０４は、除外領域取得部２０２が取得した除外領域に対応する部分は比較対象から除外し、第１の画像と第２の画像を比較して差分を検出する。
【００６７】
このように構成された本実施形態の情報処理装置２００の情報処理方法について、以下説明する。
図６は、本発明の実施の形態に係る情報処理装置２００の情報処理方法における処理手順を示すフローチャートである。
本実施形態の情報処理装置２００の情報処理方法は、図４の上記実施形態の情報処理装置１００のフローチャートと同様なステップＳ１０３〜ステップＳ１０７を有するとともに、さらに、ステップＳ２０１〜ステップＳ２０３を含む。
【００６８】
本実施形態の情報処理装置２００の情報処理方法は、情報処理装置２００が、第１の画像または第２の画像上で、差分検出部による比較対象から除外する領域の情報を取得し（ステップＳ２０１）、除外領域に対応する部分は比較対象から除外して、第１の画像と第２の画像を比較して差分を検出する（ステップＳ２０３）。
【００６９】
以下、図６および図７を用いてさらに詳細に説明する。
図７は、本実施形態の情報処理装置２００による画像比較処理を説明するための図である。
より詳細には、情報処理装置２００において、除外領域取得部２０２が、第１の画像または第２の画像上で、差分検出部による比較対象から除外する領域の情報を取得する（ステップＳ２０１）。図７（ａ）の画像ｐ２１と画像ｐ２２を比較する際に、ユーザが、画像ｐ２２において、日付情報の表示領域を矩形（破線）で囲んで除外領域ｒａとして指定する。除外領域取得部２０２は、ユーザが指定した除外領域ｒａの画像ｐ２２上の位置情報を取得する。
【００７０】
差分検出部２０４が、除外領域ｒａに対応する部分は比較対象から除外して、画像ｐ２１と画像ｐ２２を比較して差分を検出する。図７（ａ）の例では、画像ｐ２１の文字列「ＡＢＣ」が小文字なのに対して、画像ｐ２２では文字列「ａｂｃ」と小文字になっている。また、画像ｐ２１の表Ｔ１は３列なのに対して、画像ｐ２２では表Ｔ２は４列になっている。また、日付情報が各画像には含まれていて、画像ｐ２１では、２０１４年７月１日で、画像２２では、２０１４年７月２日と日付が異なるが、除外領域ｒａとして日付情報の領域が指定されているため、この領域は差分として検出されない。
【００７１】
領域抽出部１０６が、差分検出部２０４により検出された差分に対応する画像ｐ２２の画像領域を抽出する（ステップＳ１０３）。たとえば、図７（ｂ）に示すように、画像ｐ２２において、領域ｒ２１と領域ｒ２２の２箇所が抽出され、除外領域ｒａは抽出されない。そして、差分表示部１０４が、領域抽出部１０６により抽出された画像領域（図７（ａ）の領域ｒ２１と領域ｒ２２）を、他の領域と区別可能に示す画像要素（図７（ｂ）のハッチング領域）を付した画像を生成し（ステップＳ１０５）、図７（ｂ）のような差分画像ｄｐ２１として表示する（ステップＳ１０７）。
【００７２】
なお、除外領域を指定しなかった場合は、図７（ｃ）に示すように、日付の領域ｒ２３も差分として抽出され、領域ｒ２３も含めた領域を、他の領域と区別可能に示す画像要素（図７（ｃ）のハッチング領域）を付した画像を生成し（ステップＳ１０５）、図７（ｃ）のような差分画像ｄｐ２２として表示する（ステップＳ１０７）。
【００７３】
以上説明したように、本実施形態の情報処理装置２００において、除外領域取得部２０２が第１の画像または第２の画像上で、比較対象から除外する領域の情報を取得し、差分検出部２０４が除外領域に対応する部分を比較対象から除外して、第１の画像と第２の画像を比較して差分を検出する。
このように、本発明の実施の形態に係る情報処理装置２００によれば、画像比較で差分を検出する際に、日付表示等、変更されていてもよい領域を指定でき、指定された領域を除外して比較できるので、無駄な処理を行わなくてよい。また、不要な情報は表示されないので、画像の差分の確認が容易であり、画像間の差異の検出効率や精度が向上する。
【００７４】
（第３の実施の形態）
本実施形態の情報処理装置３００は、上記実施形態の情報処理装置１００とは、画像比較機能をアプリケーションのテストに適用する点で相違する。
本実施形態の情報処理装置３００は、図８に示すような、アプリケーション開発システム１において、開発装置２０の一部の機能として組み込むことができる。
【００７５】
図８は、本発明の実施の形態に係るアプリケーション開発システム１の構成の一例を示すブロック図である。
本実施形態の開発装置２０は、図２で示したコンピュータ６０と同様な構成を有する、サーバコンピュータ、パーソナルコンピュータ、またはそれらに相当するコンピュータにより実現することができる。
【００７６】
本発明の実施の形態に係るアプリケーション開発システム１において、開発装置２０は、端末４０がブラウザ４２を経由してインターネット等のネットワーク３を介して利用する、ウェブサーバ３０で動作するウェブアプリケーション３２の開発を行う装置である。
【００７７】
ウェブアプリケーション３２は、たとえば、端末４０のブラウザ４２上に画面を表示させ、画面上での入力および操作を受け付け、入力操作に基づく処理を実行し、必要に応じてデータベース（ＤＢ：DataBase）２４を参照し、結果得られたデータに基づき形成される画面を端末４０のブラウザ４２上に表示させる。本実施例では、ウェブアプリケーション３２を例として説明するが、本発明の開発対象となるアプリケーションはウェブアプリケーションに限定されるものではない。たとえば、サーバ、データベース、および端末の全てがユーザ側に含まれる、企業内のシステム等も開発対象となり得る。
開発装置２０は、設計情報と、プログラムのソースコード等を設計情報リポジトリ２２に記憶し、これらの情報を元に、仕様書や設計書を作成し、プログラムを生成し、テストを行い、ウェブアプリケーション３２を生成する。
【００７８】
生成されたウェブアプリケーション３２は、たとえば、図９に示すように、ウェブサーバ３０上で動作し、端末４０（図では、複数の端末４０ａ、４０ｂを示す。特に、区別する必要がない場合は、端末４０と呼ぶ。）にてブラウザ４２経由で利用される。
なお、ブラウザ４２の種類は、特に限定されず、端末４０毎に異なる種類のブラウザ４２を用いてもよい。また、端末４０の種類、たとえば、ＯＳ等の種類も限定されず、異なる種類のＯＳで動作する端末４０が混在してもよい。
【００７９】
図８および図９のウェブサーバ３０および端末４０は、図２で示したコンピュータ６０と同様な構成を有する、サーバコンピュータ、パーソナルコンピュータ、またはそれらに相当するコンピュータにより実現することができる。
なお、図では、ウェブアプリケーション３２は、ウェブサーバ３０上にのみ存在するように示されているが、端末４０とウェブサーバ３０とが協働してウェブアプリケーション３２を動作させる。
【００８０】
具体的には、端末４０のブラウザ４２からインターネット等のネットワーク３を介してウェブサーバ３０のウェブページを表示させた時、ウェブアプリケーション３２に含まれる一部のプログラムが端末４０にダウンロードされる。この一部のプログラムは、ブラウザ４２上で動作する、Java（登録商標）言語等のプログラミング言語で記述される。そして、その一部のプログラムが、端末４０のブラウザ４２上で、ウェブサーバ３０上のウェブアプリケーション３２と協働して動作する。
【００８１】
端末４０からブラウザ４２経由で利用されるウェブアプリケーション３２のウェブサーバ３０上で動作等は公知であり、本発明の本質に関わらないので詳細な説明は省略する。
開発装置２０で開発されたウェブアプリケーション３２は、テストされた後、実機のウェブサーバ３０に配備され、利用することができる。
【００８２】
本発明において、ウェブアプリケーション３２は、業務用アプリケーションを含むことができる。業務アプリケーションとは、企業の情報システムにおいて、企業活動の業務内容と直接関連のある販売、在庫管理、受注、流通、経費管理、資金管理、人財管理、書類管理などの情報処理やサービスを扱うシステムを実現するアプリケーションプログラムである。
【００８３】
図１０は、本発明の実施の形態に係る情報処理装置３００の構成を論理的に示す機能ブロック図である。
本実施形態の情報処理装置３００は、上記実施形態の情報処理装置１００と同様な差分表示部１０４と、領域抽出部１０６と、を備えるとともに、さらに、画像記録部３０２と、差分検出部３０４と、画像記憶部３０６と、を備える。本実施形態の差分検出部３０４は、上記実施形態の情報処理装置１００の差分検出部１０２と同様な機能を有するとともに、さらに、以下に説明する機能を有する。
なお、図１０では、本実施形態の情報処理装置３００の構成を、図１の情報処理装置１００の構成との組み合わせを例に示してあるが、図５の情報処理装置２００の構成と組み合わせることもできる。あるいは、後述する他の実施形態の構成と適宜矛盾のない範囲で組み合わせてもよい。
【００８４】
本実施形態の情報処理装置３００は、アプリケーションを動作させて、その動作するアプリケーションにより表示される画面の画像を記録する画像記録部３０２をさらに備える。
差分検出部３０４は、アプリケーションの、異なるバージョンでの各動作時に、画像記録部３０２により記録された、対応する画面に関する第１の画像および第２の画像を比較する。
【００８５】
より詳細には、情報処理装置３００は、図８のウェブサーバ３０にテスト用のウェブアプリケーション３２を配備し、端末４０からブラウザ４２経由で動作させる。このとき、たとえば、画面操作と画面遷移をシミュレーションするテストシーケンスに従ってウェブアプリケーション３２を動作させるテスト用プログラムを用いる。このテスト用プログラムは、テストシーケンスに従ってウェブアプリケーション３２を動作させながら、動作するアプリケーションでの画面操作および画面遷移に関する情報を記録する処理を行う機能を実現する。
【００８６】
具体的には、テスト用プログラムは、画面操作をシミュレーションするプログラムコードと、遷移後の画面のスクリーンショットをとるプログラムコードと、が埋め込まれている。このテスト用プログラムは、図２のプログラム８０に含むことができ、本実施形態の情報処理装置３００の少なくとも一部の機能、たとえば、画像記録部３０２を実現する。
【００８７】
図１１は、本実施形態の情報処理装置３００において画像比較対象となる記録画像を説明するための図である。
図１１に示すように、たとえば、異なるバージョンのアプリケーション（図では、バージョン１．０とバージョン１．１）を動作させた場合、画像記録部３０２は、それぞれ別のフォルダに各画面の画像ファイルを記憶する。
バージョン１．０のプログラムでは、メニュー画面から、「選択」ボタンの操作により画面Ａに遷移し、「実行」ボタンの操作により画面Ｂに遷移する。また、バージョン１．１のプログラムでは、メニュー画面から、「選択」ボタンの操作により画面Ａに遷移し、「実行」ボタンの操作により、画面Ｂから仕様変更された画面Ｂ′に遷移する。
【００８８】
上述したテスト用プログラムは、メニュー画面から各画面操作を実行させるコードと、各画面操作により遷移する各画面のスクリーンショットを取得するコードとが埋め込まれている。テスト用プログラムを実行すると、各画面のキャプチャ画像がバージョン毎に異なるフォルダにそれぞれ記録される。
【００８９】
図１１の例では、バージョン１．０のプログラムを動作させて得られた各画像は、フォルダ名が「Folder 1.0」のフォルダに格納される。バージョン１．１のプログラムを動作させて得られた各画像は、フォルダ名が「Folder 1.1」のフォルダに格納される。このとき、対応する画面のキャプチャ画像は、異なるバージョンで同じファイル名を付すのが好ましい。
【００９０】
たとえば、バージョン１．０のプログラムでメニュー画面から選択ボタンの操作により遷移する画面Ａのキャプチャ画像ファイルと、バージョン１．１のプログラムで同様にメニュー画面から選択ボタンの操作により遷移する画面Ａのキャプチャ画像ファイルには、同じファイル名「a.jpg」を付す。さらに、バージョン１．０のプログラムでメニュー画面から実行ボタンにより遷移する画面Ｂのキャプチャ画像ファイルと、バージョン１．１のプログラムで同様にメニュー画面から実行ボタンの操作により遷移する画面Ｂ′のキャプチャ画像ファイルには、同じファイル名「b.jpg」を付す。
なお、図１１では、省略しているが、メニュー画面のキャプチャ画像ファイルも取得してもよい。
【００９１】
同じファイル名にすることで、差分検出部３０４により画像比較の際に、比較対象となる画像ファイルを１つ１つ対応付けて指定する必要がなくなる。比較対象の画像が格納されているフォルダを指定すれば、各フォルダ内の複数の画像ファイルを、同じファイル名を有するもの同士で比較処理を行えば済むことになる。
【００９２】
差分検出部３０４は、アプリケーションの、異なるバージョンでの各動作時に、画像記録部３０２により記録された、対応する画面に関する第１の画像および第２の画像を比較する。
ここで、「対応する画面」とは、異なるバージョンのアプリケーションの動作において、たとえば、基準となる画面で同じ画面操作を行った場合に、異なるバージョンのアプリケーションでそれぞれ遷移する画面を指す。
【００９３】
本実施形態において、アプリケーションの異なるバージョンとは、開発中のアプリケーションの仕様変更に伴うソースコードの改変や改造等により、プログラムのバージョンが変更になるケースと、さらに、バグや微細な修正またはＯＳや言語のパッチ適用等、プログラムのソースコードは変更にならない為、プログラムのバージョンは変更にならないケースとを含む。
後者のケースでは、それらのプログラム変更により、アプリケーションの動作に悪い影響を与えていないかどうか（デグレード：degrade）の検査を行う。
【００９４】
このように構成された本実施形態の情報処理装置３００の情報処理方法について、以下説明する。
図１２は、本発明の実施の形態に係る情報処理装置３００の情報処理方法における処理手順を示すフローチャートである。
本実施形態の情報処理装置３００の情報処理方法は、図４の上記実施形態の情報処理装置１００のフローチャートと同様なステップＳ１０３〜ステップＳ１０７を有するとともに、さらに、ステップＳ３０１〜ステップＳ３０５を含む。
【００９５】
本実施形態の情報処理装置３００の情報処理方法は、情報処理装置３００が、アプリケーションを動作させて（ステップＳ３０１）、その動作するアプリケーションにより表示される画面の画像を記録し（ステップＳ３０３）、アプリケーションの、異なるバージョンでの各動作時に、記録された、対応する画面に関する第１の画像および第２の画像を比較し、差分を検出する（ステップＳ３０５）。
【００９６】
以下、図１１〜図１３を用いてさらに詳細に説明する。
本実施形態の情報処理装置３００の処理は、大きく分けて２つある。１つは、比較対象となる画像を準備するための処理である。もう１つは、記録された画像を比較し差分を検出する処理である。前者は、ステップＳ３０１〜ステップＳ３０３の手順により実行され、後者は、ステップＳ３０５、ステップＳ１０３〜ステップＳ１０７の手順により実行される。また、前者は、テスト用のプログラムにより実現され、後者は、画像比較用のプログラムにより実現される。
【００９７】
まず、比較対象画像の準備処理の手順について説明する。
画像記録部３０２が、テスト用プログラムにより各バージョンのアプリケーションを動作させる（ステップＳ３０１）。そして、画像記録部３０２が、各バージョンの動作するアプリケーションでの画面操作および画面遷移に関する情報をそれぞれ画像記憶部３０６に記録する（ステップＳ３０３）。
なお、このステップＳ３０１およびステップＳ３０３は、異なるバージョンのアプリケーションが作成された後のテスト時に、それぞれ実行される。すなわち、バージョン毎に異なるタイミングで実行されてよい。
【００９８】
図１１に示すように、バージョン１．０のプログラムを動作させた結果として、フォルダ「Folder 1.0」に画面Ａの画像ファイル「a.jpg」と画面Ｂの画像ファイル「b.jpg」が格納される。また、バージョン１．１のプログラムを動作させた結果として、フォルダ「Folder 1.1」に画面Ａの画像ファイル「a.jpg」と画面Ｂ′の画像ファイル「b.jpg」が格納される。
【００９９】
次に、画像比較処理の手順について説明する。
本実施形態では、図２のコンピュータ６０にインストールされるプログラム８０に画像比較ツールのプログラムをさらに含み、この画像比較ツールを実行させて、情報処理装置３００の差分検出部３０４および差分表示部１０４の機能を実現させる。
図１３は、本実施形態の情報処理装置３００における画像比較ツールの画像比較実行画面の一例を示す図である。
画像比較実行画面３５０は、比較対象となる画像ファイルが格納されている２つのフォルダと、比較結果として得られる差分画像のファイルが格納されるフォルダとを指定する指定欄３５２を含む。
【０１００】
コンピュータ６０において、画像比較ツールを起動すると、図１３の画像比較実行画面３５０が表示される。そして、比較対象の画像ファイルが格納されている２つのフォルダと、比較結果として得られる差分画像ファイルが格納されるフォルダをそれぞれ指定する。そして、実行ボタン３５４を押下すると、画像比較用のプログラムが実行される。
ここでは、画像比較実行画面３５０でフォルダ１とフォルダ２に指定された各フォルダ内で、同じファイル名を有する画像を、差分検出部３０４が比較し、差分を検出する（ステップＳ３０５）。
【０１０１】
そして、領域抽出部１０６が、検出された差分に対応する、第１の画像の画像領域を抽出する（ステップＳ１０３）。そして、領域抽出部１０６が、抽出された画像領域を他の画像領域と区別可能に示す画像要素を第１の画像に付した画像を生成し、図１３で指定された結果フォルダに格納する（ステップＳ１０５）。そして、差分表示部１０４は、検出された差分に対応する、画像領域を示す差分画像として表示する（ステップＳ１０７）。
【０１０２】
以上説明したように、本実施形態の情報処理装置３００において、画像記録部３０２が異なるバージョンのアプリケーションをそれぞれ動作させて、その動作するアプリケーションにより表示される画面の画像を画像記憶部３０６に記録し、差分検出部３０４が、アプリケーションの、異なるバージョンでの各動作時に記録された、対応する画面に関する第１の画像と第２の画像を比較して差分を検出し、差分画像を結果フォルダに格納し、差分表示部１０４が、差分に対応する、画像領域を示す差分画像として表示する。
これにより、本実施形態の情報処理装置３００によれば、テスト過程でプログラム（仕様）を変更した際に、変更による画面への影響を検出できる。
【０１０３】
また、特に、プログラムの修正との関連性が低い箇所で、画面のフォーマットが大きく崩れてしまったり、表示されるべき項目が消えてしまうといった不具合が起きてしまうと、その発見は容易ではない。さらに、条件によって不具合の出現の有無が変わるようなケースでは、さらにその発見が困難になってしまう。
このようなケースにおいて、プログラムの改変前と後の対応する画面の画像比較を行うことで、プログラム改変による不具合を効率よく検出するという発想は、上述した文献記載の技術にはなかった。
【０１０４】
本実施形態の情報処理装置３００によれば、上記のような不具合の発見も容易になる。たとえば、ソースコード等の変更等により、その影響が画面上の思わぬ箇所に表出する場合があるが、本実施形態の情報処理装置３００によれば、それらを機械的に検査することができる。このように、検査工程の処理負荷を軽減し、検査工程にかかる時間も短縮できる。
【０１０５】
（第３の実施の形態の変形態様）
第３の実施の形態の変形態様１の情報処理装置について以下に説明する。
図１４は、本実施形態の情報処理装置３２０の構成を論理的に示す機能ブロック図である。
本実施形態の情報処理装置３２０は、図１０の情報処理装置３００とは、画像比較の結果として、差分検出部３０４に検出された差分に関する情報をリスト表示する構成を有する点で相違する。
情報処理装置３２０は、図１０の情報処理装置３００と同様な差分表示部１０４と、領域抽出部１０６と、画像記録部３０２と、差分検出部３０４と、画像記憶部３０６と、を備えるとともに、さらに、判定部３２２と、比較結果表示部３２４と、を備える。
【０１０６】
本実施形態の情報処理装置３２０において、判定部３２２は、アプリケーションの、異なるバージョンでの各動作時に、画像記録部３０２により記録された画像に基づいて、異なるバージョン間で対応画面が存在するか否かを判定する。
比較結果表示部３２４は、判定部３２２により対応画面が存在しないと判定された画面に関する情報と、差分検出部３０４により検出された差分に関する情報とをリスト表示する。
【０１０７】
図１５は、本実施形態の情報処理装置３２０において画像比較対象となる記録画像を説明するための図である。
たとえば、図１５に示すように、たとえば、異なるバージョンのアプリケーション（図では、バージョン２．０とバージョン２．１）を動作させた場合、画像記録部３０２は、それぞれ別のフォルダ（Folder 2.0およびFolder 2.1）に各画面の画像ファイルを記憶する。
【０１０８】
バージョン２．０のプログラムでは、メニュー画面での画面操作により、画面Ａと画面Ｂに遷移し、さらに、画面Ａでの画面操作により画面Ｃに、画面Ｂでの画面操作により画面Ｄに遷移する。そして、仕様変更後のバージョン２．１のプログラムでは、メニュー画面での画面操作により、画面Ａ、画面Ｂから変更となった画面Ｂ′、および新たに追加された画面Ｅに遷移する。さらに、画面Ａでの画面操作により画面Ｃに遷移する。また、変更前のバージョン２．０では、画面Ｂから画面Ｄに遷移していたものが、画面Ｄではなく画面Ｃに遷移するように変更になっている。
【０１０９】
そして、画像記録部３０２によって、バージョン２．０のプログラムを動作させた場合には、フォルダFolder 2.0に、画面Ａ、画面Ｂ、画面Ｃおよび画面Ｄのキャプチャ画像ファイル（a.jpg、b.jpg、c.jpg、およびd.jpg）がそれぞれ格納される。一方、バージョン２．１のプログラムを動作させた場合には、画像記録部３０２によって、フォルダFolder 2.1に、画面Ａ、画面Ｂ′、画面Ｃおよび画面Ｅのキャプチャ画像ファイル（a.jpg、b.jpg、c.jpg、およびe.jpg）がそれぞれ格納される。
【０１１０】
図１４に戻り、判定部３２２は、異なるバージョンでの各動作時に記録された画像について、異なるバージョン間で対応する画面が操作するか否かを判定する。本実施形態では、異なるバージョンで記録された画像は、それぞれ異なるフォルダに格納されている。そして、対応する画面には、同じファイル名が付与されている。図１５の例では、判定部３２２は、フォルダFolder 2.0とフォルダFolder 2.1内で、それぞれ同じファイル名を有する画像ファイルの存在の有無を判定する。
【０１１１】
図１５に示すように、フォルダFolder 2.0に含まれていた画面Ｄの画像ファイルd.jpgがフォルダFolder 2.1には含まれていない。さらに、フォルダFolder 2.1には、フォルダFolder 2.0には含まれていなかった画面Ｅの画像ファイルe.jpgが含まれている。また、フォルダFolder 2.0に含まれている画面Ａの画像ファイルa.jpgと画面Ｃの画像ファイルc.jpgはフォルダFolder 2.1に含まれている。さらに、フォルダFolder 2.0に含まれている画面Ｂの画像ファイルは、フォルダFolder 2.1に画面Ｂ′の画像ファイルb.jpgとして含まれている。
そして、判定部３２２は、これらの判定結果を比較結果表示部３２４に受け渡す。
【０１１２】
比較結果表示部３２４は、判定部３２２により対応画面が存在しないと判定された画面に関する情報（画面の追加または削除）と、差分検出部３０４により検出された差分に関する情報（差分の有無）とをリスト表示する。
ここで、判定された画面に関する情報とは、たとえば、変更により追加された画面であることや、変更により削除された画面であることを示す情報や、変更前およびは変更後の画像ファイルが格納されるフォルダのいずれか一方にのみ含まれる画像であることを示す情報等を指す。
また、差分に関する情報とは、差分があるか否かを示す情報を指す。たとえば、「同じ」または「異なる」等のメッセージでもよい。
【０１１３】
図１６は、本実施形態の情報処理装置３２０の比較結果表示部３２４により出力される比較結果リスト３３０の一例を示す図である。
比較結果リスト３３０は、差分検出部３０４により比較される画像ファイルのファン名（パス）を、プログラムのバージョン毎に列挙して含む。このとき、比較結果リスト３３０では、対応する画面の画像ファイル（第１の画像と第２の画像）が同一行に配置される。
【０１１４】
図１６に示すように、たとえば、バージョン２．０のプログラムの画面Ａに対応するバージョン２．１のプログラムの画面Ａの画像ファイルが各バージョンの列の同一行に含まれ、差分検出部３０４による比較結果として、「同じ」であることが示されている。また、バージョン２．０のプログラムの画面Ｂに対応するバージョン２．１のプログラムの画面Ｂ′の画像ファイルが各バージョンの列の同一行に含まれ、差分検出部３０４による比較結果として、「異なる」ことが示されている。
【０１１５】
さらに、バージョン２．０のプログラムの画面Ｄに対応するバージョン２．１のプログラムの画面の画像ファイルは存在しないため、バージョン２．１のプログラムのカラムには画像ファイル名は含まれず、さらに、比較結果の列には、「フォルダ１のみ存在」と示されている。
また、バージョン２．０のプログラムでは存在しなかった、バージョン２．１のプログラムの新たな画面Ｅの画像ファイルが追加となっているため、バージョン２．０のプログラムのカラムには画像ファイル名は含まれず、さらに、比較結果の列には、「フォルダ２のみ存在」と示されている。
【０１１６】
このように構成された本実施形態の情報処理装置３２０の情報処理方法について、以下説明する。
図１７は、本発明の実施の形態に係る情報処理装置３２０の情報処理方法における処理手順を示すフローチャートである。
本実施形態の情報処理装置３２０の情報処理方法は、情報処理装置３２０において、判定部３２２が、アプリケーションの、異なるバージョンでの各動作時に、画像記録部３０２により記録された画像に基づいて、異なるバージョン間で対応画面が存在するか否かを判定する（ステップＳ３２１）。そして、判定部３２２により対応画面が存在しないと判定された場合（ステップＳ３２１のＮＯ）、比較結果表示部３２４が、画面に関する情報として、画像が存在するフォルダ名を比較結果リスト３３０に表示する（ステップＳ３２９）。たとえば、図１６の例では、バージョン２．０のプログラムの画面Ｄの画像ファイルd.jpgは、フォルダ１にのみ含まれているので、比較結果表示部３２４が、比較結果リスト３３０に、比較結果として、「フォルダ１のみ存在」と表示する。
【０１１７】
また、判定部３２２により対応画面が存在すると判定された場合（ステップＳ３２１のＹＥＳ）、比較結果表示部３２４が、差分検出部３０４により、異なるバージョン間で対応画面の画像の差分が検出されたか否かを判定する（ステップＳ３２３）。差分有りと判定された場合（ステップＳ３２３のＹＥＳ）、比較結果表示部３２４が、比較結果リスト３３０の比較結果の欄に、「異なる」と表示する（ステップＳ３２７）。また、差分なしと判定された場合（ステップＳ３２３のＮＯ）、比較結果表示部３２４が、比較結果リスト３３０の比較結果の欄に、「同じ」と表示する（ステップＳ３２７）。
【０１１８】
以上説明したように、本実施形態の情報処理装置３２０において、判定部３２２が、異なるバージョンの動作時に記録された画像について、異なるバージョン間での対応画面の有無を判定し、比較結果表示部３２４が、判定結果とともに、差分検出部３０４により検出された差分の情報を比較結果リスト３３０に表示する。
これにより、本実施形態の情報処理装置３２０によれば、異なるバージョンのアプリケーションの動作時の各画面の差異の有無とともに、画面が追加されたことや、画面がなくなったことを検出してリスト表示できる。
【０１１９】
（第４の実施の形態）
次に、本発明の第４の実施の形態に係る情報処理装置および情報処理方法について、以下説明する。なお、本実施形態のプログラムは、上記実施形態と同様に、情報処理装置の情報処理方法を少なくとも１つのコンピュータに実行させるものであり、本実施形態での詳細な説明は省略する。
図１８は、本発明の実施の形態に係る情報処理装置４００の構成を論理的に示す機能ブロック図である。
本実施形態の情報処理装置４００は、上記実施形態の情報処理装置３２０とは、画像比較する際に、画面に含まれる表示項目で、除外する領域を指定して特定する構成を有する点で相違する。
【０１２０】
本実施形態の情報処理装置４００は、上記実施形態の情報処理装置３２０と同様な領域抽出部１０６と、画像記録部３０２と、差分検出部３０４と、画像記憶部３０６と、判定部３２２と、比較結果表示部３２４と、を備えるとともに、さらに、除外項目取得部４０２と、除外領域特定部４０４と、差分検出部４０６と、を備える。
また、本実施形態の情報処理装置４００は、図１４の情報処理装置３２０の構成との組み合わせを例に説明するが、他の実施形態の情報処理装置の構成と矛盾のない範囲で組み合わせることもできる。
【０１２１】
本実施形態の情報処理装置４００において、除外項目取得部４０２は、差分検出部３０４による比較対象から除外する、アプリケーションの各画面に含まれる表示項目の情報を取得する。
除外領域特定部４０４は、各画面における表示項目の表示位置に関する画面設計情報を参照し、除外項目取得部４０２が取得した除外項目に対応する表示領域を除外領域として特定する。
差分検出部４０６は、除外項目取得部４０２により特定された除外領域に対応する部分は、比較対象から除外する。
【０１２２】
上記実施形態の情報処理装置２００では、除外領域取得部２０２が、除外領域の情報を取得していた。たとえば、ユーザが画面（画像）上で、ＧＵＩを用いて除外したい領域を囲んで指定した除外領域の位置情報を除外領域取得部２０２が取得していた。
【０１２３】
本実施形態の情報処理装置４００では、たとえば、画面設計書等に記載される、画面（画像）に含まれる表示項目の情報に基づいて、除外項目取得部４０２が、除外項目を表示項目名で取得する。画面設計書等の各種設計書内に記載されている表示項目名を、情報処理装置４００を実現するプログラムにより選択画面に表示項目一覧を表示して、ＧＵＩを用いてユーザに選択してさせてもよいし、所定の設定ファイルに複数の除外項目を記載して指定できてもよい。このようにして指定された除外項目の情報を除外項目取得部４０２が取得する。
また、除外項目の情報とは、表示項目名、変数名の少なくとも一部を示す情報を指す。
【０１２４】
除外領域特定部４０４は、除外項目取得部４０２が取得した除外項目に対応する表示領域を除外領域として特定する。画面設計書には、各画面における、表示項目の表示位置に関する情報が含まれている。除外領域特定部４０４は、画面設計書を参照して、各画面について、除外項目に対応する表示領域を除外領域として特定する。
上記実施形態の情報処理装置２００のように、除外領域取得部２０２が画面上の除外領域を指定した情報を取得する場合には、比較対象の画面の組み合わせ毎に、除外領域を指定した情報を取得する。しかし、本実施形態では、除外項目取得部４０２が表示項目名で指定される情報を取得するので、比較対象の全ての画面の組み合わせにおいて、指定された表示項目を含む画面について、一括して除外項目を適用できる。
差分検出部４０６は、除外領域特定部４０４により特定された除外領域を比較対象から除外して第１の画像と第２の画像を比較し、差分を検出する。
【０１２５】
たとえば、アプリケーションの各動作によって表示される画面に含まれる現在の日時情報は、画面が表示される時刻によって必ず変更になる情報である。一方、現在の日時情報の表示が、ＯＳ等によって行われていて、アプリケーションのバージョンや動作に影響されないような場合には、たとえ表示されている日時情報に変更があったとしても、プログラムの検査時には、その変更は検出する必要はないケースも考えられる。
そのようなケースでは、画面のキャプチャ画像を比較画像とする場合、現在の日時情報の部分は比較対象が除外するのが処理効率向上の観点から好ましい。そこで、ユーザが設定画面などで表示項目名である「現在日時」を除外項目として指定することで、除外項目取得部４０２が指定された表示項目名を取得し、除外領域特定部４０４が指定された表示項目に対応する表示領域を各画面について除外領域として特定する。そして、差分検出部４０６が、各画面について、除外領域特定部４０４により特定された除外領域を比較対象から除外し、差分を検出する。
【０１２６】
このように、本実施形態の情報処理装置４００によれば、日付表示等、画面上で変更されていてもよいところを表示項目名で指定でき、指定された項目に対応する領域を各画面で共通して除外して比較できる。
【０１２７】
（第５の実施の形態）
次に、本発明の第５の実施の形態に係る情報処理装置および情報処理方法について、以下説明する。なお、本実施形態のプログラムは、上記実施形態と同様に、情報処理装置の情報処理方法を少なくとも１つのコンピュータに実行させるものであり、本実施形態での詳細な説明は省略する。
図１９は、本発明の実施の形態に係る情報処理装置５００の構成を論理的に示す機能ブロック図である。
本実施形態の情報処理装置５００は、上記実施形態の情報処理装置４００とは、比較で検出された差分が、仕様変更によるものであることを通知する構成を有する点で相違する。
【０１２８】
本実施形態の情報処理装置５００は、上記実施形態の情報処理装置３２０と同様な、差分表示部１０４と、領域抽出部１０６と、画像記録部３０２と、差分検出部３０４と、画像記憶部３０６と、判定部３２２と、比較結果表示部３２４と、を備えるとともに、さらに、画面仕様情報取得部５０２と、仕様変更画面特定部５０４と、仕様変更情報表示部５０６と、を備える。
また、本実施形態の情報処理装置５００は、図１４の情報処理装置３２０の構成との組み合わせを例に説明するが、他の実施形態の情報処理装置の構成と矛盾のない範囲で組み合わせることもできる。
【０１２９】
本実施形態の情報処理装置５００において、画面仕様情報取得部５０２は、アプリケーションの、異なるバージョンについて、画面および画面遷移に関する仕様情報をそれぞれ取得する。仕様変更画面特定部５０４は、仕様情報に基づいて、アプリケーションの異なるバージョン間で、画面または画面遷移の仕様変更を検出し、仕様変更により変更がある画面を特定する。仕様変更情報表示部５０６は、仕様変更画面特定部５０４により特定された変更画面について、仕様変更に関する情報を、比較結果表示部３２４にさらに表示させる。
【０１３０】
図２０は、本実施形態の情報処理装置５００の比較結果表示部３２４により出力される比較結果リスト５３０の一例を示す図である。
たとえば、仕様変更画面特定部５０４が、仕様情報に基づいて、バージョン２．０のプログラムからバージョン２．１のプログラムの間で、画面Ｂが画面Ｂ′に変更されたことを検出する。そして、差分検出部３０４により、画面Ｂと画面Ｂ′の差異が検出された場合に、仕様変更情報表示部５０６は、比較結果表示部３２４に、比較結果リスト５３０の画面Ｂと画面Ｂ′のキャプチャ画像ファイルであるファイルb.jpgの比較結果の欄に、「異なる。但し、仕様も変更された。」とのメッセージを表示させる。
また、仕様変更画面特定部５０４は、バージョン２．０では存在していた画面Ｄがバージョン２．１では削除されていることを仕様情報に基づいて、検出する。仕様変更情報表示部５０６は、比較結果表示部３２４に、比較結果リスト５３０の画面Ｄのキャプチャ画像ファイルであるファイルd.jpgの比較結果の欄に、「フォルダ１のみ存在、但し、仕様も変更された」と表示させる。
【０１３１】
なお、仕様変更があったはずなのに、反映されていない場合にもその旨を表示してもよい。
たとえば、仕様変更画面特定部５０４が、仕様情報に基づいて、異なるバージョンのアプリケーションの動作の対応する画面に仕様変更を検出し、かつ、差分検出部３０４により対応画面の比較において、差分が検出されなかった場合、その旨を通知してもよい。仕様変更情報表示部５０６は、比較結果表示部３２４に、比較結果リスト５３０の比較結果の欄に、「同じ。但し、仕様は変更された」と表示させる。
【０１３２】
なお、本実施形態では、仕様変更画面特定部５０４が比較結果リスト５３０の比較結果の欄に、仕様変更の有無を表示する構成について説明した。他の例では、仕様変更があった画面と比較結果のみを含むリストを表示してもよい。また、リストは表示だけでなく、印刷出力できてもよい。
【０１３３】
このように構成された本実施形態の情報処理装置５００の情報処理方法について、以下説明する。
図２１は、本発明の実施の形態に係る情報処理装置５００の情報処理方法における処理手順を示すフローチャートである。
本実施形態の情報処理装置５００の情報処理方法は、情報処理装置５００において、画面仕様情報取得部５０２が、アプリケーションの、異なるバージョンについて、画面および画面遷移に関する仕様情報をそれぞれ取得する（ステップＳ５０１）。そして、仕様変更画面特定部５０４が、ステップＳ５０１で取得した仕様情報に基づいて、異なるバージョン間で画面または画面遷移の仕様変更があるか否かを判定する（ステップＳ５０３）。仕様変更があった場合（ステップＳ５０３のＹＥＳ）、仕様変更画面特定部５０４が、仕様変更に対応する画面を特定する（ステップＳ５０５）。仕様変更がなかった場合（ステップＳ５０３のＮＯ）、本処理を終了する。この場合、比較結果リスト５３０の比較結果の欄には、「異なる」、「同じ」、「フォルダ１（またはフォルダ２）にのみ存在」等の情報が含まれている。
【０１３４】
そして、仕様変更画面特定部５０４が、さらに、ステップＳ５０５で特定された対応画面の画像間について、差分検出部３０４が差分を検出しているか否かを判定する（ステップＳ５０７）。差分が検出されている場合（ステップＳ５０７のＹＥＳ）、仕様変更情報表示部５０６が、比較結果リスト５３０の比較結果の欄に「異なる。但し、仕様も変更された」との情報を追加し、比較結果表示部３２４に表示させる（ステップＳ５０９）。
【０１３５】
また、差分が検出されなかった場合（ステップＳ５０７のＮＯ）、仕様変更情報表示部５０６が、比較結果リスト５３０の比較結果の欄に「同じ。但し、仕様は変更された」との情報を追加し、比較結果表示部３２４を表示させる（ステップＳ５１１）。
【０１３６】
このように、本実施形態の情報処理装置５００によれば、仕様変更によって画面に変更があった場合、比較結果の差分（や画面追加や削除）が仕様変更によるものであることを比較結果リスト５３０等で通知できる。
また、仕様変更があったにもかかわらず、対応画面の画像で差分が検出されなかった場合には、仕様変更がプログラムに反映されていない可能性が高い。本実施形態の情報処理装置５００では、そのような場合にも比較結果リスト５３０等で通知できる。
【０１３７】
（第５の実施の形態の変形態様１）
第５の実施の形態の変形態様１の情報処理装置について以下に説明する。
図２２は、本実施形態の情報処理装置５２０の要部構成を論理的に示す部分機能ブロック図である。
本実施形態の情報処理装置５２０は、図１９の情報処理装置５００とは、差分画像に仕様変更された領域を識別可能に表示する構成を有する点で相違する。
情報処理装置５２０は、図１９の情報処理装置５００と同様な領域抽出部１０６と、画像記録部３０２と、差分検出部３０４と、画像記憶部３０６と、判定部３２２と、比較結果表示部３２４と、画面仕様情報取得部５０２と、仕様変更画面特定部５０４と、仕様変更情報表示部５０６と、の構成に加え、さらに、変更領域特定部５２２と、対応判定部５２６と、差分表示部５２８とを備える。なお、図２２において、図１９の情報処理装置５００と同様な構成は一部省略してあり、図示されていない。また、本実施形態の差分表示部５２８は、上記実施形態の差分表示部１０４の機能を有するとともに、さらに、下記の機能を有する。
【０１３８】
情報処理装置５２０において、変更領域特定部５２２は、仕様変更画面特定部５０４により特定された変更画面について、アプリケーションの、異なるバージョンでの各動作時に、変更画面に対応する画面に関する第１の画像において変更される画像領域を特定する。
領域抽出部１０６は、差分検出部３０４により検出された、アプリケーションの、異なるバージョンでの各動作時に、画像記録部３０２により記録された、対応する画面に関する第１の画像および第２の画像の、差分に対応する、第１の画像の画像領域を抽出する。
対応判定部５２６は、領域抽出部１０６により抽出された第１の画像の画像領域が、変更領域特定部５２２により特定された変更画面の変更画像領域に対応するか否かを判定する。
差分表示部５２８は、対応判定部５２６により変更画面の変更画像領域に対応すると判定された第１の画像の画像領域を、他の画像領域と区別可能に示す画像要素を第１の画像に付した画像を、差分画像として表示する。
【０１３９】
図２３は、本実施形態の情報処理装置５２０における画像比較による差分画像の例を示す図である。
図２３（ａ）の例では、画像ｐ１の文字列「ＡＢＣ」が小文字なのに対して、画像ｐ２では文字列「ａｂｃ」と小文字になっている。また、画像ｐ１の表Ｔ１は３列なのに対して、画像ｐ２では表Ｔ２は４列になっている。
ここで、仕様変更画面特定部５０４により、表Ｔ２の列の追加は、仕様変更による変更であることが検出されたとする。そこで、仕様変更画面特定部５０４は、画像ｐ２の表Ｔ２の追加になった列に対応する領域ｒ２２を特定する。
【０１４０】
一方、差分検出部３０４が、画像ｐ１と画像ｐ２の差分を検出し、領域抽出部１０６が、画像ｐ２の画像領域（領域ｒ２１と領域ｒ２２）を抽出する。
そして、対応判定部５２６は、領域抽出部１０６により抽出された各領域が、仕様変更画面特定部５０４により特定された領域に対応するか否かを判定する。図２３（ａ）の例では、領域ｒ２１は対応せず、領域ｒ２２が仕様変更による変更領域に対応すると判定される。
【０１４１】
差分表示部５２８は、領域抽出部１０６により抽出された領域ｒ２１および領域ｒ２２を、上記実施形態と同様に、他の領域（ハッチングで示す）と区別して表示する。
さらに、本実施形態では、差分表示部５２８は、対応判定部５２６により仕様変更による変更画像領域に対応すると判定された画像ｐ２の領域ｒ２２を、他の画像領域と区別する画像要素（図２３（ｂ）の破線で示す矩形）を付して差分画像ｄｐ５２として表示する。
【０１４２】
差分表示部５２８による差分画像の他の例として、図２３（ｃ）に示すように、検出された差分に対応する領域を、仕様変更による変更画像領域と特定された領域（ｒ２２）と、その他の画像領域（ｒ２１）とに分けて、それぞれ異なる差分画像（ｄｐ５３とｄｐ５４）として表示してもよい。
【０１４３】
以上説明したように、本実施形態の情報処理装置５２０において、変更領域特定部５２２が仕様情報を元に仕様変更による変更画面の変更画像領域を特定し、対応判定部５２６が、差分が検出された画像領域と変更領域特定部５２２により特定された変更画像領域の対応を判定し、差分が検出された画像領域が仕様変更による変更画像領域に対応する場合、差分表示部５２８がその画像領域を他の領域と区別して表示する。
これにより、本実施形態の情報処理装置５２０によれば、仕様変更により変更になった画像領域と、仕様変更によらない差異がある画像領域を区別して表示できるので、仕様変更による変更の確認も、それ以外のデグレード検査の確認も、容易になる。
【０１４４】
以上、図面を参照して本発明の実施形態について述べたが、これらは本発明の例示であり、上記以外の様々な構成を採用することもできる。
（情報処理装置の最小構成例）
たとえば、本発明の実施の形態に係る情報処理装置６００は、図２４に示すように、少なくとも差分検出部１０２と、差分表示部１０４と、を備えることができる。
そして、本実施形態の情報処理装置６００の情報処理方法は、図２５に示すように、情報処理装置６００が、第１の画像と第２の画像を比較して、所定の許容範囲を超える差分を検出するステップＳ１０１と、検出された差分に対応する、画像領域を示す差分画像を表示するステップＳ６０１と、を少なくとも含むことができる。
【０１４５】
この構成によれば、差分検出部１０２が第１の画像および第２の画像を比較して、所定の許容範囲を超える差分を検出し、差分表示部１０４が、検出された差分に対応する画像領域を示す差分画像を表示するので、画像間の差分を適切な精度で提示することができる。
【０１４６】
（比較領域の指定）
また、上記第２の実施形態または上記第４の実施形態では、情報処理装置は、除外領域取得部２０２または除外項目取得部４０２を備え、差分検出部が、除外項目に対応した、または除外領域取得部２０２が取得した除外領域に対応する部分は、比較対象から除外して、画像間の差分を検出する構成について説明した。他の実施形態において、情報処理装置は、第１の画像または第２の画像上で、差分検出部による比較対象となる領域の情報を取得する比較領域取得部（不図示）をさらに備えてもよい。比較領域取得部は、除外領域取得部２０２または除外項目取得部４０２と同様に、ＧＵＩを用いたユーザによる指定を受け付けて取得してもよいし、設定ファイルから、比較対象の領域または項目の情報を取得してもよい。比較対象の項目の情報を取得する場合は、情報処理装置は、除外領域特定部４０４と同様な、項目に対応する領域を特定する比較領域特定部（不図示）をさらに備えてもよい。そして、差分検出部は、比較領域取得部が取得した比較対象領域に対応する部分について、画像間の差分を検出してもよい。
【０１４７】
この構成によれば、バグ修正等の軽微な修正の確認検査を簡易に行いたい場合等に、検査箇所を指定することができるので、効率がよい。
【０１４８】
以上、実施形態および実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
なお、本発明において利用者に関する情報を取得、利用する場合は、これを適法に行うものとする。
【０１４９】
以下、参考形態の例を付記する。
１．  情報処理装置が、
第１の画像と第２の画像を比較して、所定の許容範囲を超える差分を検出し、
検出された前記差分に対応する、画像領域を示す差分画像を表示する、
情報処理装置の情報処理方法。
２．  １．に記載の情報処理装置の情報処理方法において、
前記情報処理装置が、さらに、
前記第１の画像または前記第２の画像上で、前記差分を検出する際の比較対象から除外する領域の情報を取得し、
前記差分を検出する際、取得した除外領域に対応する部分は、比較対象から除外する、
情報処理装置の情報処理方法。
３．  １．または２．に記載の情報処理装置の情報処理方法において、
前記情報処理装置が、さらに、
検出された前記差分に対応する、前記第１の画像の画像領域を抽出し、
抽出された前記画像領域を他の画像領域と区別可能に示す画像要素を前記第１の画像に付した画像を、前記差分画像として表示する、
情報処理装置の情報処理方法。
４．  １．乃至３．いずれか一つに記載の情報処理装置の情報処理方法において、
前記情報処理装置が、さらに、
アプリケーションを動作させて、その動作するアプリケーションにより表示される画面の画像を記録し、
前記差分を検出する際、前記アプリケーションの、異なるバージョンでの各動作時に、記録された、対応する画面に関する前記第１の画像および前記第２の画像を比較する、
情報処理装置の情報処理方法。
５．  ４．に記載の情報処理装置の情報処理方法において、
前記情報処理装置が、さらに、
前記差分を検出する際に比較対象から除外する、前記アプリケーションの各画面に含まれる表示項目の情報を取得し、
各画面における前記表示項目の表示位置に関する画面設計情報を参照し、取得した除外項目に対応する表示領域を除外領域として特定し、
前記差分を検出する際、特定された前記除外領域に対応する部分は、比較対象から除外する、
情報処理装置の情報処理方法。
６．  ４．または５．に記載の情報処理装置の情報処理方法において、
前記情報処理装置が、さらに、
前記アプリケーションの、異なるバージョンでの各動作時に、記録された画像に基づいて、前記異なるバージョン間で対応画面が存在するか否かを判定し、
対応画面が存在しないと判定された画面に関する情報と、検出された前記差分に関する情報とをリスト表示する、
情報処理装置の情報処理方法。
７．  ６．に記載の情報処理装置の情報処理方法において、
前記情報処理装置が、さらに、
前記アプリケーションの、異なるバージョンについて、画面および画面遷移に関する仕様情報を取得し、
前記仕様情報に基づいて、前記アプリケーションの異なるバージョン間で、前記画面または前記画面遷移の仕様変更を検出し、前記仕様変更により変更がある画面を特定し、
特定された変更画面について、前記仕様変更に関する情報を、前記リスト表示にさらに表示する、
情報処理装置の情報処理方法。
８．  ７．に記載の情報処理装置の情報処理方法において、
前記情報処理装置が、さらに、
特定された変更画面について、前記アプリケーションの、異なるバージョンでの各動作時に、前記変更画面に対応する画面に関する前記第１の画像において変更される画像領域を特定し、
検出された、前記アプリケーションの、異なるバージョンでの各動作時に、記録された、対応する画面に関する前記第１の画像および前記第２の画像の、前記差分に対応する、前記第１の画像の画像領域を抽出し、
前記第１の画像の前記画像領域が、特定された変更画面の変更画像領域に対応するか否かを判定し、
前記差分画像を表示する際、
前記変更画面の変更画像領域に対応すると判定された前記第１の画像の前記画像領域を、他の画像領域と区別可能に示す画像要素を前記第１の画像に付した画像を、前記差分画像として表示する、
情報処理装置の情報処理方法。
９．  １．乃至８．いずれか一つに記載の情報処理装置の情報処理方法において、
前記情報処理装置が、さらに、
前記差分を検出する際、
前記第１の画像と前記第２の画像を画素単位で比較し、差異が検出された対象画素を基準とする所定範囲に含まれる複数画素の中で、前記対象画素を含む差異が検出された画素の数が所定数未満の場合、前記対象画素の差異を前記差分に含めない、
情報処理装置の情報処理方法。
１０．  １．乃至９．いずれか一つに記載の情報処理装置の情報処理方法において、
前記情報処理装置が、さらに、
前記差分を検出する際、
前記第１の画像と前記第２の画像を画素単位で比較する際に、比較対象の画素を基準とする所定範囲に含まれる複数画素の平均画素値を算出し、算出された前記平均画素値で、前記第１の画像と前記第２の画像を比較する、
情報処理装置の情報処理方法。
１１．  １．乃至１０．いずれか一つに記載の情報処理装置の情報処理方法において、
前記情報処理装置が、さらに、
前記差分を検出する際、
前記第１の画像と前記第２の画像を画素単位で比較する際に、対象画素の画素値の差が所定範囲以内であれば、その対象画素について、前記第１の画像と前記第２の画像間で差異はないとする、
情報処理装置の情報処理方法。
【０１５０】
１２．  コンピュータに、
第１の画像と第２の画像を比較して、所定の許容範囲を超える差分を検出する手順、
検出された前記差分に対応する、画像領域を示す差分画像を表示する手順、
を実行させるためのプログラム。
１３．  １２．に記載のプログラムにおいて、
前記第１の画像または前記第２の画像上で、前記差分を検出する手順における比較対象から除外する領域の情報を取得する手順をさらにコンピュータに実行させ、
前記差分を検出する手順において、
前記除外領域を取得する手順で取得した除外領域に対応する部分は、比較対象から除外する手順、
をさらにコンピュータに実行させるためのプログラム。
１４．  １２．または１３．に記載のプログラムにおいて、
前記差分を検出する手順により検出された前記差分に対応する、前記第１の画像の画像領域を抽出する手順をさらにコンピュータに実行させ、
前記差分を表示する手順において、
前記画像領域を抽出する手順により抽出された前記画像領域を他の画像領域と区別可能に示す画像要素を前記第１の画像に付した画像を、前記差分画像として表示する手順、
をさらにコンピュータに実行させるためのプログラム。
１５．  １２．乃至１４．いずれか一つに記載のプログラムにおいて、
アプリケーションを動作させて、その動作するアプリケーションにより表示される画面の画像を記録する手順をさらにコンピュータに実行させ、
前記差分を検出する手順において、
前記アプリケーションの、異なるバージョンでの各動作時に、前記画像を記録する手順により記録された、対応する画面に関する前記第１の画像および前記第２の画像を比較する手順、
をさらにコンピュータに実行させるためのプログラム。
１６．  １５．に記載のプログラムにおいて、
前記差分を検出する手順による比較対象から除外する、前記アプリケーションの各画面に含まれる表示項目の情報を取得する手順、
各画面における前記表示項目の表示位置に関する画面設計情報を参照し、前記除外項目の情報を取得する手順が取得した除外項目に対応する表示領域を除外領域として特定する手順、
をさらにコンピュータに実行させ、
前記差分を検出する手順において、前記除外領域を特定する手順により特定された前記除外領域に対応する部分は、比較対象から除外する手順、
をさらにコンピュータに実行させるためのプログラム。
１７．  １５．または１６．に記載のプログラムにおいて、
前記アプリケーションの、異なるバージョンでの各動作時に、前記画像を記録する手順により記録された画像に基づいて、前記異なるバージョン間で対応画面が存在するか否かを判定する手順、
前記対応画面が存在しないと判定された画面に関する情報と、前記差分を検出する手順により検出された前記差分に関する情報とをリスト表示する手順、
をさらにコンピュータに実行させるためのプログラム。
１８．  １７．に記載のプログラムにおいて、
前記アプリケーションの、異なるバージョンについて、画面および画面遷移に関する仕様情報を取得する手順、
前記仕様情報に基づいて、前記アプリケーションの異なるバージョン間で、前記画面または前記画面遷移の仕様変更を検出し、前記仕様変更により変更がある画面を特定する手順、
前記仕様変更により変更がある画面を特定する手順により特定された変更画面について、前記仕様変更に関する情報を、前記リスト表示にさらに表示させる手順、
をさらにコンピュータに実行させるためのプログラム。
１９．  １８．に記載のプログラムにおいて、
前記仕様変更により変更がある画面を特定する手順により特定された変更画面について、前記アプリケーションの、異なるバージョンでの各動作時に、前記変更画面に対応する画面に関する前記第１の画像において変更される画像領域を特定する手順、
前記差分を検出する手順により検出された、前記アプリケーションの、異なるバージョンでの各動作時に、前記画像を記録する手順により記録された、対応する画面に関する前記第１の画像および前記第２の画像の、前記差分に対応する、前記第１の画像の画像領域を抽出する手順、
前記画像領域を抽出する手順により抽出された前記第１の画像の前記画像領域が、前記変更される画像領域を特定する手順により特定された変更画面の変更画像領域に対応するか否かを判定する手順、
をさらにコンピュータに実行させ、
前記差分画像を表示する手順において、
前記変更画面の変更画像領域に対応すると判定された前記第１の画像の前記画像領域を、他の画像領域と区別可能に示す画像要素を前記第１の画像に付した画像を、前記差分画像として表示する手順、
をさらにコンピュータに実行させるためのプログラム。
２０．  １２．乃至１９．いずれか一つに記載のプログラムにおいて、
前記差分を検出する手順において、
前記第１の画像と前記第２の画像を画素単位で比較し、差異が検出された対象画素を基準とする所定範囲に含まれる複数画素の中で、前記対象画素を含む差異が検出された画素の数が所定数未満の場合、前記対象画素の差異を前記差分に含めない手順、
をさらにコンピュータに実行させるためのプログラム。
２１．  １２．乃至２０．いずれか一つに記載のプログラムにおいて、
前記差分を検出する手順において、
前記第１の画像と前記第２の画像を画素単位で比較する際に、比較対象の画素を基準とする所定範囲に含まれる複数画素の平均画素値を算出し、算出された前記平均画素値で、前記第１の画像と前記第２の画像を比較する手順、
をさらにコンピュータに実行させるためのプログラム。
２２．  １２．乃至２１．いずれか一つに記載のプログラムにおいて、
前記差分を検出する手順において、
前記第１の画像と前記第２の画像を画素単位で比較する際に、対象画素の画素値の差が所定範囲以内であれば、その対象画素について、前記第１の画像と前記第２の画像間で差異はないとする手順、
をさらにコンピュータに実行させるためのプログラム。
２３．  第１の画像と第２の画像を比較して、所定の許容範囲を超える差分を検出する差分検出手段と、
前記差分検出手段により検出された前記差分に対応する、画像領域を示す差分画像を表示する差分表示手段と、
を備える情報処理装置。
２４．  ２３．に記載の情報処理装置において、
前記第１の画像または前記第２の画像上で、前記差分検出手段による比較対象から除外する領域の情報を取得する除外領域取得手段をさらに備え、
前記差分検出手段は、前記除外領域取得手段が取得した除外領域に対応する部分は、比較対象から除外する、
情報処理装置。
２５．  ２３．または２４．に記載の情報処理装置において、
前記差分検出手段により検出された前記差分に対応する、前記第１の画像の画像領域を抽出する領域抽出手段をさらに備え、
前記差分表示手段は、
前記領域抽出手段により抽出された前記画像領域を他の画像領域と区別可能に示す画像要素を前記第１の画像に付した画像を、前記差分画像として表示する、
情報処理装置。
２６．  ２３．乃至２５．のいずれか一つに記載の情報処理装置において、
アプリケーションを動作させて、その動作するアプリケーションにより表示される画面の画像を記録する記録手段、
をさらに備え、
前記差分検出手段は、
前記アプリケーションの、異なるバージョンでの各動作時に、前記記録手段により記録された、対応する画面に関する前記第１の画像および前記第２の画像を比較する、
情報処理装置。
２７．  ２６．に記載の情報処理装置において、
前記差分検出手段による比較対象から除外する、前記アプリケーションの各画面に含まれる表示項目の情報を取得する除外項目取得手段と、
各画面における前記表示項目の表示位置に関する画面設計情報を参照し、前記除外項目取得手段が取得した除外項目に対応する表示領域を除外領域として特定する除外領域特定手段と、
をさらに備え、
前記差分検出手段は、前記除外領域特定手段により特定された前記除外領域に対応する部分は、比較対象から除外する、
情報処理装置。
２８．  ２６．または２７．に記載の情報処理装置において、
前記アプリケーションの、異なるバージョンでの各動作時に、前記記録手段により記録された画像に基づいて、前記異なるバージョン間で対応画面が存在するか否かを判定する判定手段と、
前記判定手段により対応画面が存在しないと判定された画面に関する情報と、前記差分検出手段により検出された前記差分に関する情報とをリスト表示する比較結果表示手段と、
をさらに備える情報処理装置。
２９．  ２８．に記載の情報処理装置において、
前記アプリケーションの、異なるバージョンについて、画面および画面遷移に関する仕様情報を取得する画面仕様情報取得手段と、
前記仕様情報に基づいて、前記アプリケーションの異なるバージョン間で、前記画面または前記画面遷移の仕様変更を検出し、前記仕様変更により変更がある画面を特定する仕様変更画面特定手段と、
前記仕様変更画面特定手段により特定された変更画面について、前記仕様変更に関する情報を、前記比較結果表示手段にさらに表示させる仕様変更情報表示手段と、
をさらに備える情報処理装置。
３０．  ２９．に記載の情報処理装置において、
前記仕様変更画面特定手段により特定された変更画面について、前記アプリケーションの、異なるバージョンでの各動作時に、前記変更画面に対応する画面に関する前記第１の画像において変更される画像領域を特定する変更領域特定手段と、
前記差分検出手段により検出された、前記アプリケーションの、異なるバージョンでの各動作時に、前記記録手段により記録された、対応する画面に関する前記第１の画像および前記第２の画像の、前記差分に対応する、前記第１の画像の画像領域を抽出する領域抽出手段と、
前記領域抽出手段により抽出された前記第１の画像の前記画像領域が、前記変更領域特定手段により特定された変更画面の変更画像領域に対応するか否かを判定する対応判定手段と、
をさらに備え、
前記差分表示手段は、
前記対応判定手段により前記変更画面の変更画像領域に対応すると判定された前記第１の画像の前記画像領域を、他の画像領域と区別可能に示す画像要素を前記第１の画像に付した画像を、前記差分画像として表示する、
情報処理装置。
３１．  ２３．乃至３０．のいずれか一つに記載の情報処理装置において、
前記差分検出手段は、
前記第１の画像と前記第２の画像を画素単位で比較し、差異が検出された対象画素を基準とする所定範囲に含まれる複数画素の中で、前記対象画素を含む差異が検出された画素の数が所定数未満の場合、前記対象画素の差異を前記差分に含めない、
情報処理装置。
３２．  ２３．乃至３１．のいずれか一つに記載の情報処理装置において、
前記差分検出手段は、
前記第１の画像と前記第２の画像を画素単位で比較する際に、比較対象の画素を基準とする所定範囲に含まれる複数画素の平均画素値を算出し、算出された前記平均画素値で、前記第１の画像と前記第２の画像を比較する、
情報処理装置。
３３．  ２３．乃至３２．のいずれか一つに記載の情報処理装置において、
前記差分検出手段は、
前記第１の画像と前記第２の画像を画素単位で比較する際に、対象画素の画素値の差が所定範囲以内であれば、その対象画素について、前記第１の画像と前記第２の画像間で差異はないとする、
情報処理装置。
【符号の説明】
【０１５１】
３  ネットワーク
６０  コンピュータ
６４  メモリ
６６  ストレージ
６８  Ｉ／Ｏ
６９  バス
７０  通信Ｉ／Ｆ
８０  プログラム
１００  情報処理装置
１０２  差分検出部
１０４  差分表示部
１０６  領域抽出部
１２０  第１の画像
１２２  第２の画像
１２４  差分画像
２００  情報処理装置
２０２  除外領域取得部
２０４  差分検出部
３００  情報処理装置
３０２  画像記録部
３０４  差分検出部
３０６  画像記憶部
３２０  情報処理装置
３２２  判定部
３２４  比較結果表示部
３３０  比較結果リスト
４００  情報処理装置
４０２  除外項目取得部
４０４  除外領域特定部
４０６  差分検出部
５００  情報処理装置
５０２  画面仕様情報取得部
５０４  仕様変更画面特定部
５０６  仕様変更情報表示部
５２０  情報処理装置
５２２  変更領域特定部
５２６  対応判定部
５２８  差分表示部
５３０  比較結果リスト
６００  情報処理装置
Ｔ１、Ｔ２  表
ｄｐ２１、ｄｐ２２、ｄｐ５２、ｄｐ５３、ｄｐ５４  差分画像
ｐ１、ｐ２、ｐ２１、ｐ２２  画像
ｒ２１、ｒ２２  領域
ｒａ  除外領域
【図１】
0006455010.tif 000002
【図２】
0006455010.tif 000003
【図３】
0006455010.tif 000004
【図４】
0006455010.tif 000005
【図５】
0006455010.tif 000006
【図６】
0006455010.tif 000007
【図７】
0006455010.tif 000008
【図８】
0006455010.tif 000009
【図９】
0006455010.tif 000010
【図１０】
0006455010.tif 000011
【図１１】
0006455010.tif 000012
【図１２】
0006455010.tif 000013
【図１３】
0006455010.tif 000014
【図１４】
0006455010.tif 000015
【図１５】
0006455010.tif 000016
【図１６】
0006455010.tif 000017
【図１７】
0006455010.tif 000018
【図１８】
0006455010.tif 000019
【図１９】
0006455010.tif 000020
【図２０】
0006455010.tif 000021
【図２１】
0006455010.tif 000022
【図２２】
0006455010.tif 000023
【図２３】
0006455010.tif 000024
【図２４】
0006455010.tif 000025
【図２５】
0006455010.tif 000026