(57)【要約】【課題】操作に伴う画面表示の動作テストを効率的に行える自動テストツール・プログラム及び自動テスト方法を提供すること。【解決手段】本発明に係る自動テストツール・プログラムは、少なくとも入力部、表示部及び記憶部を備えるコンピュータに、入力部に入力された操作信号を取得する操作信号取得手段と、操作信号が入力部に入力された後、表示部に表示された第１画面画像を取得する第１画面画像取得手段と、記憶部に操作信号及び第１画面画像を記憶させる記憶指示手段と、また、記憶部に記憶された操作信号を入力部に入力する操作信号入力手段と、操作信号が入力部に入力された後、表示部に表示された第２画面画像を取得する第２画面画像取得手段と、第１画面画像と第２画面画像とが一致するか否かを比較判定する比較判定手段として機能させる。【選択図】図１０
2012038162.tif 000002
【特許請求の範囲】
【請求項１】
テストケースを作成し、テスト対象のソフトウェアに対しテストケースを実行させ、操作命令に伴い表示される表示画面の確かさをテストする自動テストツール・プログラムであって、
少なくとも入力部、表示部及び記憶部を備えるコンピュータに、
入力部に入力された操作信号を取得する操作信号取得手段と、
前記操作信号が入力部に入力された後、表示部に表示された第１画面画像を取得する第１画面画像取得手段と、
記憶部に前記操作信号及び第１画面画像を記憶させる記憶指示手段と、
また、
記憶部に記憶された前記操作信号を入力部に入力する操作信号入力手段と、
前記操作信号入力手段により操作信号が入力部に入力された後、前記表示部に表示された第２画面画像を取得する第２画面画像取得手段と、
前記第１画面画像と第２画面画像とが一致するか否かを比較判定する比較判定手段と
して機能させるための自動テストツール・プログラム。
【請求項２】
テストケースを作成し、テスト対象のソフトウェアに対しテストケースを実行させ、操作命令に伴い表示される表示画面の確かさをテストする自動テストツール・プログラムであって、
少なくとも入力部、表示部及び記憶部を備えるコンピュータに、
入力部に入力された操作信号を取得する操作信号取得手段と、
前記操作信号が入力部に入力された後、表示部に表示された第１画面画像を取得する第１画面画像取得手段と、
前記操作信号を当該操作信号に対応付けされた操作内容に解釈し、また前記第１画面画像を当該画面画像が示す第１画面内容に解釈する第１解釈手段と、
記憶部に前記操作内容及び第１画面内容を記憶させる記憶指示手段と、
また、
記憶部に記憶された前記操作内容を入力部に入力する操作信号入力手段と、
前記操作信号入力手段により操作内容が入力部に入力された後、前記表示部に表示された第２画面画像を取得する第２画面画像取得手段と、
前記第２画面画像を当該画面画像が示す第２画面内容に解釈する第２解釈手段と、
前記第１画面内容と第２画面内容とが一致するか否かを比較判定する比較判定手段と
して機能させるための自動テストツール・プログラム。
【請求項３】
テストケースを作成し、テスト対象のソフトウェアに対しテストケースを実行させ、操作命令に伴い表示される表示画面の確かさをテストする自動テスト方法であって、
少なくとも入力部、表示部及び記憶部を備えるコンピュータが、
入力部に入力された操作信号を取得する操作信号取得手順と、
前記操作信号が入力部に入力された後、表示部に表示された第１画面画像を取得する第１画面画像取得手順と、
記憶部に前記操作信号及び第１画面画像を記憶させる記憶指示手順と、
また、
記憶部に記憶された前記操作信号を入力部に入力する操作信号入力手順と、
前記操作信号入力手順により操作信号が入力部に入力された後、前記表示部に表示された第２画面画像を取得する第２画面画像取得手順と、
前記第１画面画像と第２画面画像とが一致するか否かを比較判定する比較判定手順と、
を有することを特徴とする自動テスト方法。
【請求項４】
テストケースを作成し、テスト対象のソフトウェアに対しテストケースを実行させ、操作命令に伴い表示される表示画面の確かさをテストする自動テスト方法であって、
少なくとも入力部、表示部及び記憶部を備えるコンピュータに、
入力部に入力された操作信号を取得する操作信号取得手順と、
前記操作信号が入力部に入力された後、表示部に表示された第１画面画像を取得する第１画面画像取得手順と、
前記操作信号を当該操作信号に対応付けされた操作内容に解釈し、また前記第１画面画像を当該画面画像が示す第１画面内容に解釈する第１解釈手順と、
記憶部に前記操作内容及び第１画面内容を記憶させる記憶指示手順と、
また、
記憶部に記憶された前記操作内容を入力部に入力する操作信号入力手順と、
前記操作信号入力手順により操作内容が入力部に入力された後、前記表示部に表示された第２画面画像を取得する第２画面画像取得手順と、
前記第２画面画像を当該画面画像が示す第２画面内容に解釈する第２解釈手順と、
前記第１画面内容と第２画面内容とが一致するか否かを比較判定する比較判定手順と
を有することを特徴とする自動テスト方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自動テストツール・プログラム及び自動テスト方法の分野に関する。
【背景技術】
【０００２】
ソフトウェア開発工程においては、動作テストを繰り返し行うことによりソフトウェアの品質を確保することが必要である。しかしながら動作テストにかけられる工数は有限であり、また開発速度を高めるためには、動作テストの効率化が求められている。少ない工数でテストを実施する方法としては、人的なテスター（テスト担当者）の手を借りることなく、動作テストを実行し、その結果をレポートするといった自動テストツールが知られている。
【０００３】
自動テストツールに関し、例えば特許文献１には、自動テストで使用するテストシナリオの作成を効率化する目的で、操作タイミングをテストシナリオに記録させてテストシナリオを作成する方法が開示されている。
【０００４】
さて一方、ファックス、プリンタ、コピーおよびスキャナなどの各装置の機能を１つの筐体内に収納した画像形成装置（以下、MFP：Multi-Function Peripheralという）が知られるようになった。このＭＦＰは、１つの筐体内に表示部、印刷部および撮像部などを設けると共に、ファックス、プリンタ、コピーおよびスキャナにそれぞれ対応する４種類のアプリケーションを設け、そのアプリケーションを切り替えることより、ファックス、プリンタ、コピーおよびスキャナとして動作させるものである。
【０００５】
近年、ＭＦＰの多機能化に伴い、画像形成装置の操作パネル上における液晶パネル（タッチパネル）も大型化してきており、その表示内容も充実している。例えば、アイコン等を用いた多彩な表示画面をソフトウェアの制御に基づいて表示させることにより、ユーザフレンドリなユーザインタフェースを提供している。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ここで、ＭＦＰの液晶パネル（タッチパネル）に表示されるユーザインタフェースもまた、ソフトウェアの制御に基づいて表示されており、然るに、ＭＦＰのソフトウェア開発工程においても、画面表示ソフトウェアの動作テストを繰り返し行い、そのソフトウェア品質を確保することが必要である。例えばテスター（テスト担当者）は、操作パネル上のハードキーやタッチパネルを多様な操作パターンでもって操作し、特に画面表示ソフトウェアの動作テストの場合、表示画面が操作により意図される画面へ正しく遷移するかどうかの確認を何度も繰り返し行なう。
【０００７】
そしてまた、このような動作テストも上述の如く効率化の観点から自動化されることが望まれるところ、上述従来の自動テストツールは、どちらかというとソフトウェアのコンポーネント間のやり取りを表すコマンドレベルのシーケンスをテスト対象としており、液晶パネル（タッチパネル）に表示されている表示画面の正しさをテスト対象としているものではない。そのため画面表示ソフトウェアの動作テストにおいては、これらのテストデータを自動的に作成することができず、実際に動作テストのための工数を要し、その効率面に問題があった。
【０００８】
本発明では上記のような問題に鑑みて、操作に伴う画面表示の動作テストを効率的に行える自動テストツール・プログラム及び自動テスト方法を提供することを目的とする。より具体的には、例えばＭＦＰの操作部において、所定操作に従って、仕様上意図される表示画面へ正しく遷移するかどうかを含む画面表示ソフトウェアの自動テストツールを本発明により提供する。
【課題を解決するための手段】
【０００９】
そこで上記課題を解決するため、本発明に係る自動テストツール・プログラムは、テストケースを作成し、テスト対象のソフトウェアに対しテストケースを実行させ、操作命令に伴い表示される表示画面の確かさをテストする自動テストツール・プログラムであって、少なくとも入力部、表示部及び記憶部を備えるコンピュータに、入力部に入力された操作信号を取得する操作信号取得手段と、前記操作信号が入力部に入力された後、表示部に表示された第１画面画像を取得する第１画面画像取得手段と、記憶部に前記操作信号及び第１画面画像を記憶させる記憶指示手段と、また、記憶部に記憶された前記操作信号を入力部に入力する操作信号入力手段と、前記操作信号入力手段により操作信号が入力部に入力された後、前記表示部に表示された第２画面画像を取得する第２画面画像取得手段と、前記第１画面画像と第２画面画像とが一致するか否かを比較判定する比較判定手段として機能させる。
【００１０】
また上記課題を解決するため、本発明に係る自動テストツール・プログラムは、テストケースを作成し、テスト対象のソフトウェアに対しテストケースを実行させ、操作命令に伴い表示される表示画面の確かさをテストする自動テストツール・プログラムであって、少なくとも入力部、表示部及び記憶部を備えるコンピュータに、入力部に入力された操作信号を取得する操作信号取得手段と、前記操作信号が入力部に入力された後、表示部に表示された第１画面画像を取得する第１画面画像取得手段と、前記操作信号を当該操作信号に対応付けされた操作内容に解釈し、また前記第１画面画像を当該画面画像が示す第１画面内容に解釈する第１解釈手段と、記憶部に前記操作内容及び第１画面内容を記憶させる記憶指示手段と、また、記憶部に記憶された前記操作内容を入力部に入力する操作信号入力手段と、前記操作信号入力手段により操作内容が入力部に入力された後、前記表示部に表示された第２画面画像を取得する第２画面画像取得手段と、前記第２画面画像を当該画面画像が示す第２画面内容に解釈する第２解釈手段と、前記第１画面内容と第２画面内容とが一致するか否かを比較判定する比較判定手段として機能させる。
【００１１】
なお、本発明の構成要素、表現または構成要素の任意の組合せを、方法、装置、システム、コンピュータプログラム、記録媒体、などに適用したものも本発明の態様として有効である。
【発明の効果】
【００１２】
本発明によれば、操作に伴う画面表示の動作テストを効率的に行える自動テストツール・プログラム及び自動テスト方法を提供することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施形態に係るＭＦＰ１のハードウェア構成の一例を示す図である。
【図２】ＭＦＰ１の操作パネル１１の外観の一例を示す図である。
【図３】本実施形態に係るＭＦＰ１の主要機能構成を示す機能ブロック図である。
【図４】本実施形態に係る自動テストツールのテストケース作成画面例を示す。
【図５】テスターによる操作フロー例を示す。
【図６】テストケースの作成処理の示すシーケンス図である。
【図７】テストケース及び画面画像例を示す。
【図８】本実施形態に係る自動テストツールのテスト実施画面例を示す。
【図９】テスト実施処理の示すシーケンス図である。
【図１０】画面画像比較例（その１）を示す。
【図１１】画面画像比較例（その２）を示す。
【図１２】本実施形態に係る自動テスト実行部２０の機能構成を示す機能ブロック図である。
【図１３】本実施形態２に係る自動テスト実行部３０の機能構成を示す機能ブロック図である。
【図１４】操作内容を定義した情報テーブル例を示す。
【図１５】テストケースの作成処理の示すシーケンス図である。
【図１６】作成されたテストケース例を示す。
【図１７】テスト実施処理の示すシーケンス図である。
【図１８】画面内容比較例を示す。
【発明を実施するための形態】
【００１４】
本発明を実施するための形態を各実施形態において図面を用いて説明する。なお、本発明を説明するにあたって、本発明に係る自動テストツールを用いた動作テストを画像形成装置（ＭＦＰ）に適用した例を以下に示す。
【００１５】
[実施形態１]
（ハードウェア）
図１は、本発明の実施形態に係るＭＦＰ１のハードウェア構成の一例を示す図である。本実施形態に係るＭＦＰ１は、操作パネル１１と、記憶メディアＩ／Ｆ１２と、コントローラ１３と、データ通信Ｉ／Ｆ１４と、スキャナ１５と、プロッタ１６と、ＨＤＤ（Hard Disk Drive）１７とから構成され、それぞれ相互に接続されている。
【００１６】
操作パネル１１は、入力装置１１aと表示装置１１bとを有しており、入力装置１１aは、ハードキーなどで構成され、ＭＦＰ１に各操作信号を入力するのに用いられる。また、表示装置１１bは、ディスプレイなどで構成され、例えば画像形成動作に関する各種情報を表示する。データ通信Ｉ／Ｆ１４は、インタフェース装置１４aを有しており、ＭＦＰ１をネットワークやファックスなどのデータ伝送路に接続するインタフェースである。ＨＤＤ１７は、ＭＦＰ１で取り扱われる受信文書データや読み取り画像データなどの各種データを格納している。また、ＨＤＤ１７は、これらの各種データを、所定のファイルシステムやＤＢ（Data Base）により管理している。
【００１７】
ＨＤＤ１７に格納される各種データの中には、記録媒体１２bから入力されるデータを含む。記録媒体１２bは、記憶メディアＩ／Ｆ１２が有するドライブ装置１２aにセットされ各種データが記録媒体１２bからドライブ装置１２aを介してＨＤＤ１７に格納される。
【００１８】
コントローラ１３は、ＲＯＭ（Read Only Memory）１３a、ＲＡＭ（Random Access Memory）１３b、及びＣＰＵ（Central Processing Unit）１３cとを有しており、ＲＯＭ１３aは、ＭＦＰ１が起動されるときに実行されるプログラムや各種データを格納している。また、ＲＡＭ１３bは、ＲＯＭ１３aやＨＤＤ１７から読み出された各種プログラムやデータを一時保持する。更に、ＣＰＵ１３cは、ＲＡＭ１３bが一時保持しているプログラムを実行する。コントローラ１３は、例えば、データ通信Ｉ／Ｆ１４を介して印刷データを受信した場合に、ＲＯＭ１３aからＲＡＭ１３b上に読み出された、ＰＤＬ（Page Description Language）を解釈可能なプログラム（ＰＤＬパーサ）をＣＰＵ１３cにより実行し、印刷データを解釈してビットマップイメージを生成する。
【００１９】
スキャナ１５は、画像読取装置１５aを有しており、読み取り面に配置された原稿を光学的に読み取り画像データを生成する。プロッタ１６は、印刷装置１６aを有しており、例えば、電子写真プロセス方式によってビットマップイメージを記録紙に印刷する。
【００２０】
図２は、ＭＦＰ１の操作パネル１１の外観の一例を示す図である。上述したように、操作パネル１１は、入力装置１１aと表示装置１１bとを含んで構成される。より具体的には、操作パネル１１は、例えば画像形成動作に関する各種情報を表示するディスプレイ１８と、利用者が操作指示を行うための物理的なボタンやダイヤルのようなハードキー１９で構成される。なお本実施形態のディスプレイ１８は、触覚センサによるタッチパネル式ディスプレイであるので、ディスプレイ上の接触操作により画像形成動作に係る操作指示を行うことが可能となっている。
【００２１】
このように、本実施形態に係るＭＦＰ１では、上記ハードウェア構成により、コピー、プリンタ、ファクシミリ、スキャナなどの複数の機能を実現している。
【００２２】
（機能）
図３は、本実施形態に係るＭＦＰ１の主要機能構成を示す機能ブロック図である。ＭＦＰ１は、操作部（操作パネル）１１、コントローラ部１３、記憶部（ＨＤＤ）１７、各種ＭＦＰエンジン１５、１６、及び自動テスト実行部２０を含み構成される。
【００２３】
操作部（操作パネル）１１、記憶部（ＨＤＤ）１７は、それぞれ上述したＭＦＰ１の操作パネル、ＨＤＤである。コントローラ部１３は、ＭＦＰ動作をコントロールする制御部である。ＭＦＰ１の本体ソフトウェアを保持しており、この本体ソフトウェアが実行されることによりＭＦＰ１の動作制御が実現される。この動作制御には、操作部１１への画面表示の制御をも含むため、本体ソフトウェアは、本実施形態に係る自動テストツールのテスト対象となるソフトウェアとなる。各種ＭＦＰエンジン１５、１６は、例えばスキャナ装置、プロッタ装置など、ＭＦＰ１に搭載される各種画像形成に関わるエンジンである。
【００２４】
自動テスト実行部２０は、本実施形態に係る自動テストツール・プログラムがＭＦＰ１にインストールされた結果ＭＦＰ１に備わる機能と見立ててある。この自動テストツール・プログラムが実行されることにより、自動テスト実行部２０が機能動作し、ＭＦＰ１上においてテスト動作が実現される。
【００２５】
（全体動作）
自動テスト実行部２０の機能詳細を説明する前に、本実施形態に係る自動テストツールを用いた動作テストの全体フローについて先に説明する。本テストフローは、（１）テストケースの作成、（２）テスト実施のステップからなる。
【００２６】
（１）テストケースの作成
図４は、本実施形態に係る自動テストツールのテストケース作成画面例を示す。まずテスター（ユーザ）は、自動テストツールを起動し、本体ソフトウェアの動作テストを行うにあたって、テストしたいテストケースの作成を行う。テストケースの作成は、自動テストツールを用いて作成することができる。作成されたテストケースは、以後のテスト実施の動作模範となるものである。テスト実施において、テスト対象である本体ソフトウェアに対しテストケース通り動作させた際に、本体ソフトウェアが意図される期待通りの結果（表示画面）を出力するかどうかを判定する。
【００２７】
さて、自動テストツール上、テスターは、「計測開始」ボタンを押下することにより、テストケースの作成を開始できる。「計測開始」後、テスターは、操作パネル１１を操作する。操作を終了すると、「計測終了」ボタンを押下してテストケースの作成を終了させる。
【００２８】
具体的に例えば、テスターは、図５に示されるように、「計測開始」後、テスターは、操作パネル１１を操作し、画面Ａにおいて画面上の操作ボタン「３」を操作（押下）したものとする。「３」の操作を受け、画面Ｂに遷移したものとし、続けてテスターは、画面Ｂにおいて画面上の操作ボタン「５」を操作（押下）し、画面Ｃに遷移したものとする。また画面Ｃにおいて、画面上の操作ボタン「ＯＦＦ」を操作（押下）し、「ＯＮ」に設定変更を行ったものとする（画面Ｄのまま）。ここでテスターは、操作を終了するものとし、「計測終了」ボタンを押下してテストケースの作成を終了させる。
【００２９】
ここで、テスターは、画面Ａから「３」を操作→画面Ｂに遷移→画面Ｂから「５」を操作→画面Ｃに遷移→画面Ｃから「ＯＦＦ」を「ＯＮ」へ操作、という流れでもって、本体ソフトウェアの動作テストを行う目的であるため、このようなテストケースを作成したということになる。
【００３０】
図６は、テストケースの作成処理の示すシーケンス図である。テスターにより「計測開始」ボタンを押下され「計測終了」ボタンを押下までの情報処理について、図を参照しながら以下説明する。
【００３１】
自動テストツール上テスターにより「計測開始」ボタンを押下されると(Ｓ６０１)、自動テスト実行部２０は、テストケースの作成処理を開始する。テスターにより操作部１１が操作されると（Ｓ６０２）、操作信号がコントローラ部１３に伝達される（Ｓ６０４）。このとき、自動テスト実行部２０は、この操作信号を取得する（Ｓ６０４）。この操作信号の内容としては、例えば操作されたハードキー１９の種類や、操作されたタッチパネル１８上の座標情報などである。
【００３２】
一方、コントローラ部１３に操作信号が伝達されたことに伴い、コントローラ部１３は操作部１１に対し画面データを送信する（Ｓ６０５）。これは画面表示のための画面データである。自動テスト実行部２０は、操作部１１（正確にはタッチパネル１８）の表示画面が切替えられると、画面画像の取得（キャプチャ）を行う（Ｓ６０６）。自動テスト実行部２０は、操作信号を取得後、ある一定の時間を置いてから画面画像を取得するとよい。表示画面切り替えの時間を考慮するためである。
【００３３】
そして自動テスト実行部２０は、取得した操作信号及び画面画像を記憶部（ＨＤＤ）１７に記憶指示を行い、これら情報を保存させる（Ｓ６０７）。自動テストツール上テスターにより「計測終了」ボタンを押下されると(Ｓ６０８)、自動テスト実行部２０は、操作信号及び画面画像の取得を終了する。
【００３４】
なお、「計測終了」ボタンが押下されるまでは、テスターにより再び操作されると（Ｓ６０２）、Ｓ６０２〜Ｓ６０７の処理が繰り返される。つまり一つのテストケース内でも複数の操作信号及び画面画像が取得されうる。この場合、取得の順序情報を含め記憶部（ＨＤＤ）１７に保存される。そしてここで保存された情報が、テストケースデータとしてテスト実行時に使用されることになる。
【００３５】
ここで具体的に、テスターは、図５に示されるように、画面Ａから「３」を操作→画面Ｂに遷移→画面Ｂから「５」を操作→画面Ｃに遷移→画面Ｃから「ＯＦＦ」を「ＯＮ」へ操作、という流れでもって、テストケースの作成を行ったものとする。すると図７に示されるように、（ａ）テストケースが作成され、また併せて（ｂ）画面Ｂの画面画像（例えばＢＭＰ形式）、（ｃ）画面Ｃの画面画像（その１）、（ｄ）画面Ｃの画面画像（その２）、が取得・保存される。テストケースでは、操作信号（キーイベント）と、その操作信号に対応する画面画像が対応付けられる。
【００３６】
なお上述の説明においては、コントローラ部１３に操作信号が伝達されたとき、コントローラ部１３は操作部１１に対し画面データを送信し、表示画面が切替えられるものとして説明した。しかし、全ての操作が表示画面の切替えを伴うものではない。表示画面が切替え（画面遷移）を伴わずに、一の表示画面上で操作が行われる場合もある（例えば図５の画面Ｃ「ＯＦＦ」→「ＯＮ」）。このような場合も、自動テスト実行部２０は、上述のシーケンスに従って一の操作信号につき一の画面画像を取得する。表示画面自体は同一でも、同画面中、操作により一部のパラメータや表示内容の変化が伴う場合もあるからであり、この変化についてもテストできるようにするためである（例えば図７の（ｃ）、（ｄ））。
【００３７】
（２）テスト実施
図８は、本実施形態に係る自動テストツールのテスト実施画面例を示す。テスター（ユーザ）は、本体ソフトウェアの動作テストを行うにあたって、自動テストツール上テストしたいテストケースの指定を行い、「テスト開始」を押下する。テストケースの作成は、上述したように予め自動テストツールを用いて作成することができる。テスト実施においては、テスト対象である本体ソフトウェアに対し指定のテストケース通り動作させた際に、本体ソフトウェアが意図される期待通りの結果（表示画面）を出力するかどうかを判定させる。
【００３８】
なお図中の自動テストツール上、テストを繰り返し行えるようオプションとして、テスト実施を行う回数の設定を行えるようになっている。一般に動作テストにおいては、１回動作確認が取れればよいという訳でなく、何度も繰り返し同一の動作テストを行うことにより、間違いない動作の確かさの確認を行なう必要があるからである。
【００３９】
図９は、テスト実施処理の示すシーケンス図である。テスターにより「テスト開始」ボタン押下により開始されるテスト実施処理について、図を参照しながら以下説明する。
【００４０】
自動テストツール上テスターにより「テスト開始」ボタンを押下されると(Ｓ９０１)、自動テスト実行部２０は、テスト実施処理を開始する。まず自動テスト実行部２０は、記憶部（ＨＤＤ）１７から、指定されたテストケースと、そのテストケース関連の画面画像を取得する（Ｓ９０２）。なおこのとき取得した画面画像を第１画面画像と呼ぶ。
【００４１】
テストケースには、上述の通り指示信号が含まれている（例えば、図７（ａ）のキーイベント）ので、自動テスト実行部２０は、この指示信号を操作部１１に対して伝達する（Ｓ９０３）。操作部１１は操作信号を受けて、テスターにより操作部１１が操作されたときと同じように、操作信号をコントローラ部１３に伝達する（Ｓ９０４）。なお設計上可能であれば、自動テスト実行部２０が操作信号を直接コントローラ部１３に伝達してもよい。
【００４２】
一方、コントローラ部１３に操作信号が伝達されたことに伴い、コントローラ部１３は操作部１１に対し画面データを送信する（Ｓ９０５）。自動テスト実行部２０は、表示画面が切替えられると、ここでもまた画面画像の取得（キャプチャ）を行う（Ｓ９０６）。なおこのとき取得した画面画像を第２画面画像と呼ぶ。
【００４３】
さてここで、自動テスト実行部２０は、Ｓ９０２にて先に記憶部（ＨＤＤ）１７から取得した第１画面画像と、Ｓ９０６にてキャプチャした第２画面画像とを比較し、両画面画像が一致するか否かの判定を行う（Ｓ９０７）。両画面画像が一致すれば、ＭＦＰ１の操作部１１は、テストケースと同じ振る舞い動作を行っていることを意味する。つまり、ある所定操作に従って、仕様上意図される正しい表示画面を表示するかどうかの確認が取れたことになり、テスト結果は成功といえる。一方、両画面画像が不一致であれば、ＭＦＰ１の操作部において、ある所定操作に従って、仕様上意図される表示画面を表示していないということになり、テスト結果は失敗といえる。なおここでの判定方法は、一致又は不一致を判定できればよく、一例として画素比較により両画面画像が一致するか否かの判定を行うことができる。
【００４４】
自動テスト実行部２０は、判定結果に基づき、テスト結果のレポートを作成しこれをテスターに対しレポートする（Ｓ９０８、Ｓ９０９）。
【００４５】
図１０は、画面画像比較例（その１）を示す。図中左の画面画像はテストデータ作成時の画面画像（第１画面画像）であり、意図される仕様通りの画面画像である。図中右の画面画像はテストデータ実行時の画面画像（第２画面画像）である。両画像の一致をもって、テスト結果は成功と判断できる。一方、両画像が不一致であれば、意図される仕様と異なるため、何らかの本体ソフトウェアの不具合が生じている、と判断できる。なおこの例の場合、画像中、時刻表示箇所は取得された時刻が異なるので比較判定の対象外として処理するとよい。
【００４６】
図１１は、画面画像比較例（その２）を示す。具体的に図７の例に即したもので、図中左の画面画像はテストデータ作成時の、キーイベント「３」押下後の画面画像（第１画面画像）であり、意図される仕様通りの画面画像である。図中右の画面画像はテストデータ再生時の、キーイベント「３」押下後の画面画像（第２画面画像）である。ＭＦＰ１の操作部１１において、キーイベント「３」が操作されると、画面Ｂに遷移する仕様であるところ（テストケース）、テスト実施時において、テストケースが実行され、キーイベント「３」の操作信号が入力されると、仕様通りであれば画面Ｂに遷移するはずであり、これは、第１の画面Ｂ画像及び第２の画面Ｂ画像の一致により確認できる。一方、両画像が不一致であれば、意図される仕様と異なるため、何らかの本体ソフトウェアの不具合が生じている、と判断できる。
【００４７】
なおテストケース作成において、表示画面が切替えられたときの画面画像だけではなく、表示画面が切替えられず同一画面上の一の操作信号毎に、一の画面画像が取得されている。この場合でも、一の操作信号につき、第１画面画像及び第２画面画像の比較判定を行う。
表示画面自体は同一でも、同画面中、操作により一部のパラメータや表示内容の変化が伴う場合もあるからである（例えば図７の（ｃ）、（ｄ））。
【００４８】
以上、本実施形態に係る自動テストツールを用いたテストフロー全体である。具体的な用途として例えば、ＭＦＰ１の本体ソフトウェアにおいて、プログラムの一部修正が行われなり、バージョンアップが行われたとする。開発者としては、このプログラムの修正やバージョンアップによっては、テストケース上の動作振る舞いには影響を及ぼさないと考えてはいるところ、実際の動作テストにより間違いなく問題ないかどうかの確認を行なう必要がある。そこで、本実施形態に係る自動テストツールを使用して、プログラムの修正（又はバージョンアップ）前に作成したテストケースを用い、プログラムの修正後の本体ソフトウェアに対しテストの実施を行うことができる。上述の如く両画面の一致によりテストが成功すれば、開発者の意図するとおりの結果を得られたことになる反面、両画面の不一致によりテストが失敗すれば、このプログラムの修正やバージョンアップによって、何かしらバグなどプログラム上の不具合が生じているものとして、開発者は再度この本体ソフトウェア・プログラムの点検を行うことになる。
【００４９】
このように、本実施形態１に係る自動テストツールによれば、キー操作及び表示画面のキャプチャ（画面画像）に基づいてテストケースを効率よく作成し、テストケース再生時、画面画像の比較判定により、操作パネル１１の表示画面の正しさについて動作テストを行うことができる。なおまたタイミングも含めたより精度の高い自動テストをする効果もある。また人為的なミス(テスターによるテストケースの作成ミス、テスト実施漏れ)を軽減することもできる。
【００５０】
（自動テスト実行部２０の機能）
図１２は、本実施形態に係る自動テスト実行部２０の機能構成を示す機能ブロック図である。既に上述のシーケンスを参照しながら、自動テスト実行部２０の処理動作を説明してきたが、ここで改めて自動テスト実行部２０の機能構成を説明しておく。自動テスト部２０は、操作信号取得部２１、画面画像取得部２２、記憶指示部２３、操作信号入力部２４、比較判定部２５、及びテスト結果レポート部２６を含み構成される。
【００５１】
操作信号取得部２１は、入力部１１ａに入力された操作信号を取得する機能を有している。テスター（ユーザ）が、ＭＦＰ１の操作パネル１１から操作指示を行うと、その操作信号は、ＭＰＡ１本体のコントローラ部１３に伝達される。操作信号取得部２１は、この作信号を取得する。
【００５２】
画面画像取得部２２は、操作信号が入力部に入力された後、表示部１１ｂに表示された画面画像を取得（キャプチャ）する機能を有している。テスター（ユーザ）が、ＭＦＰ１の操作パネル１１から操作指示を行うにつれ、コントローラ部１３は表示画面の切り替えを行う際、表示部１１ｂに画面データを送信する。そして表示部１１ｂは画面データを受信しこれを画面上に表示させる。画面画像取得部２２は、コントローラ部１３から表示部１１ｂに画面データが送信され、切り替え表示された表示画面の画面画像の取得（キャプチャ）を行う。なお画面画像取得部２２により取得される画面画像は、上述の第１画面画像、第２画面画像を含む。
【００５３】
記憶指示部２３は、取得された操作信号及び画面画像を記憶部（ＨＤＤ）１７に記憶させる機能を有している。ここで、テスター（ユーザ）は、ＭＦＰ１の操作パネル１１から一連のあるまとまった動作をＭＦＰ１に実行させるため、複数の操作指示を連続的に行っている。例えばコピーを実行させる場合でも、印刷条件（用紙サイズ、変倍等）を指定し、最終的にコピーボタンを操作するので、複数の操作信号が取得され、また操作に伴い複数の表示画面に遷移するので、画面画像もまた複数取得され、記憶部（ＨＤＤ）１７に記憶される。具体例は、図７に示した通りである。
【００５４】
操作信号入力部２４は、記憶部（ＨＤＤ）１７に記憶された操作信号を入力部１１ａに入力する機能を有している。これはテストケースの再生を意味し、テストケースに従った動作をＭＦＰ１の本体ソフトウェアに実行させる。これにより、テストケースに基づく動作を本体ソフトウェアに実行させることができる。
【００５５】
比較判定部２５は、第１画面画像と第２画面画像とが一致するか否かを比較判定する機能を有している。具体例は、上述した通りである。
【００５６】
以上これらの機能は、実際には装置のＣＰＵ１３ｃが実行する自動テストツール・プログラムによりコンピュータ（例えばＭＦＰ１）に実現させるものである。
【００５７】
[実施形態２]
上述の本実施形態１において、自動テスト実行部２０は、操作信号（例えばハードキー１９やタッチパネル１８上の座標情報等）を取得し、また画面画像（例えばＢＭＰ形式）を取得して、記憶部（ＨＤＤ）１７に保存するものとした。しかしながら、本実施形態２においては、取得した操作信号や画面画像をそのまま記憶部（ＨＤＤ）１７に保存せず、ＭＦＰ１にて意味付けされた情報（操作内容という）に変換してから保存を行う。
【００５８】
例えば、図２（図中左）の操作パネル１１に備えられているハードキー１９である「コピー」ハードキーに対し押下操作がなされた場合、単に「コピー」ハードキーの操作信号を保存するのではなく、「コピー」ハードキー押下操作は、コピーモードへの移行要求（コピーアプリ画面への画面遷移要求）であると解釈し、その操作信号に意味付けされた情報である「コピーモードへの移行要求」を記憶部（ＨＤＤ）１７に保存する。また同様に例えば、コピーアプリ画面において、数値キー押下動作は、意味付けされた情報「コピー枚数○枚指定」を記憶部（ＨＤＤ）１７に保存する。
【００５９】
このように操作信号に意味付けされた情報をテストケースとして保存しておき、テスト実施時（テストケース再生時）、本実施形態２に係る自動テスト実行部３０は、コントローラ部１３に操作指示を与える際、この意味付けされた情報を入力する。このようにすると、テスト対象の本体ソフトウェアが、プログラム修正などによって操作信号（ハードキーの変更、タッチパネル上のボタン座標位置の変更等）が変更されたものであったり、さらには異なるＭＦＰ機種向けの本体ソフトウェアであっても、複合機である以上意味付けされた情報は概ね共通であるため、一旦作成したテストケースを利用できる点で有用である。
【００６０】
また、取得された画面画像をＢＭＰ形式の画像データについてもこれをそのまま保存するのではなく、その画面画像に意味付けを行なった情報（画面内容という）を保存する。「トップ画面」、「コピーアイドル画面」、「コピーアイドル画面：枚数指定」、「省エネモード画面」などがその例である。
【００６１】
このように画面画像もまた意味付けされた情報として保存しておき、テスト実施時（テストケース再生時）、画面画像の比較判定時においても意味付けされた情報同士の比較判定を行う。このようにすると、テスト対象の本体ソフトウェアが、プログラム修正などによって表示画面が変更されたものであったり、さらには異なるＭＦＰ機種向けの本体ソフトウェアであっても、表示画面の意味付けされた情報は概ね共通であるため、一旦既に作成したテストケースを利用できる点で有用である。以下、具体的に説明していく。なおＭＦＰ１のハードウェア（図１、２）は本実施形態でも同様である。また図３の機能ブロック図は、自動テスト実行部２０を自動テスト実行部３０として読み替えるものとする。
【００６２】
（自動テスト実行部３０の機能）
図１３は、本実施形態２に係る自動テスト実行部３０の機能構成を示す機能ブロック図である。実施形態１に係る自動テスト実行部２０（図１２）と比較し、操作信号解釈部３１、画面画像解釈部３２、操作内容入力部３３、記憶指示部３４、比較判定部３５の点でその処理が異なっている。操作信号取得部２１、画面画像取得部２２、及びテスト結果レポート部２６については同様である。差異点を中心に以下説明する。
【００６３】
操作信号解釈部３１は、操作信号取得部２１により取得された操作信号を当該操作信号に対応付けされた操作内容（操作内容情報）に解釈する機能を有している。
【００６４】
また画面画像解釈部３２は、画面画像取得部２２により取得された画面画像を当該画面画像が示す画面内容（画面内容情報）に解釈する機能を有している。これら操作信号及び画面画像に関し、具体的な解釈の方法は後述する。
【００６５】
記憶指示部３４は、解釈後の操作内容及び画面内容を記憶部（ＨＤＤ）１７に記憶させる機能を有している。この点、操作信号及び画面画像を記憶させる記憶指示部２３（実施形態１）とは異なる。
【００６６】
操作内容入力部３３は、記憶部（ＨＤＤ）１７に記憶された操作内容を入力部１１ａに入力する機能を有している。これはテストケースの再生を意味し、テストケースに従った動作をＭＦＰ１の本体ソフトウェアに実行させる。なお本実施形態の入力部１１ａは、操作信号のみならず、意味付けされた操作内容によっても操作を入力できるものとする。
【００６７】
比較判定部３５は、第１画面内容と第２画面内容とが一致するか否かを比較判定する機能を有している。操作内容入力部３３により操作内容が入力されることによりテストケースが再生されるにつれ、実施形態１と同様に画面画像取得部２２により画面画像が取得（キャプチャ）される。そして本実施形態２では、取得された画面画像は画面画像解釈部３２により当該画面画像が示す第２画面内容に解釈（変換）され、比較判定部３５は、解釈後の画面内容同士でもって比較判定を行う。この点、再度後述する。
【００６８】
（解釈処理について）
操作信号解釈部３１は、操作信号取得部２１により取得された操作信号を当該操作信号が示す操作内容に解釈する。そもそも操作信号は、ユーザが操作パネル１１上において何らかの操作意図をもって、ハードキー１９やタッチパネル１８上のある位置を操作し、その操作に伴い発せられるものである。従ってその操作信号が意味する操作内容は、一意に対応付けられて予め定義されている。
【００６９】
図１４は、操作内容を定義した情報テーブル例を示す。例えば、ハードキーである「コピー」キーは、イベント（操作内容）として「コピーアプリ画面遷移」に対応付けられて定義されている。よって「コピー」キーが操作されたとき、この操作は「コピーアプリ画面遷移」を意味しているので、ＭＦＰ１の本体ソフトウェアは、「コピーアプリ画面遷移」という操作命令が行われたと解釈し、コピーアプリ画面遷移の動作を行う。
【００７０】
同様に、タッチパネル１８上の所定の座標位置（座標範囲）は、イベント（操作内容）として「初期設定画面遷移」に対応付けられて定義されている。よってこの操作がされたとき、ＭＦＰ１の本体ソフトウェアは、「初期設定画面遷移」という操作命令が行われたと解釈し、初期設定画面遷移の動作を行う。なおタッチパネル１８上のこの座標位置（座標範囲）には、ユーザがタッチパネル１８上で認識できるように「初期設定画面」などという操作ボタンが配置されている。
【００７１】
なお図に示されるような情報テーブルは、自動テスト実行部３０（自動テストツール）が操作パネル１１やコントローラ部１３に対し問い合わせてもよいし、予め自動テスト実行部３０が保持しておいてもよい。
【００７２】
また、画面画像解釈部３２は、画面画像取得部２２により取得された画面画像を当該画面画像が示す画面内容に解釈する機能を有している。ＭＦＰ１においては、各表示画面は何らかの意義（目的）をもって様々な表示画面が用意されている。取得された画面画像は、単なるＢＭＰ形式のデータに過ぎないが、画面画像解釈部３２はこの画面画像を解釈し、ＭＦＰ上画面画像がどのような画面であるかを判断・判別する。以下に一例を示す。
【００７３】
画面画像解釈部３２は、画面キャプチャによって取得された画面画像を入力データとして得るが、操作パネル１１の表示画面は、アプリケーション毎に画面の構成が異なるので、画面毎の構成の特徴（特徴量）によってアプリの種別を判断する。ＭＦＰの場合、アプリの種別はコピー、スキャナ、プリンタがある。
【００７４】
また、コピー画面と判断されたなら、コピー可能状態の画面かどうか(Ready状態画面か)、設定画面かどうか(モノクロ/カラー、片面/両面、集約、変倍など)、また細かくは原稿枚数、コピー部数指定などを画面画像データのビットマップ（ＢＭＰ）から判断し、画面状態として判別する。
【００７５】
同様に、スキャナ画面やプリンタ画面と判断された場合も、Ready状態画面か、スキャン送信の宛先の入力状態、印刷済みの枚数などを画像データのビットマップから判断して、画面状態として判別する。
【００７６】
このように画面画像が判断・判別された結果、例えば、「トップ画面」、「コピーアイドル画面」、「コピーアイドル画面：コピー枚数指定」、「コピースタート画面：コピー枚数指定」、「プリントスタート画面」、「スキャナスタート画面」、「省エネモード画面」など、画面画像をＭＦＰにおいてその画面画像がどのような画面であるか示す画面内容として解釈される。
【００７７】
（全体動作）
本実施形態２に係る自動テストツールを用いた動作テストの全体フローについて説明する。本テストフローは、上述と同様、（１）テストケースの作成、（２）テスト実施のステップからなる。なお、図６、９と同一の処理ステップを示す場合は、同一の付番のままとしている。
【００７８】
（１）テストケースの作成
まずテスター（ユーザ）は、自動テストツール（図４）を起動し、本体ソフトウェアの動作テストを行うにあたって、テストしたいテストケースの作成を行う。自動テストツール上、テスターは、「計測開始」ボタンを押下することにより、テストケースの作成を開始できる。「計測開始」後、テスターは、操作パネル１１を操作する。操作を終了すると、「計測終了」ボタンを押下してテストケースの作成を終了させる。
【００７９】
図１５は、テストケースの作成処理の示すシーケンス図である。テスターにより「計測開始」ボタンを押下され「計測終了」ボタンを押下までの情報処理について、図を参照しながら以下説明する。
【００８０】
自動テストツール上テスターにより「計測開始」ボタンを押下されると(Ｓ６０１)、自動テスト実行部２０は、テストケースの作成処理を開始する。テスターにより操作部１１が操作されると（Ｓ６０２）、操作信号がコントローラ部１３に伝達される（Ｓ６０４）。このとき、自動テスト実行部２０は、この操作信号を取得する（Ｓ６０４）。この操作信号の内容としては、例えば操作されたハードキー１９の種類や、操作されたタッチパネル１８上の座標情報などである。
【００８１】
一方、コントローラ部１３に操作信号が伝達されたことに伴い、コントローラ部１３は操作部１１に対し画面データを送信する（Ｓ６０５）。これは画面遷移させるための画面データである。自動テスト実行部２０は、表示画面が切替えられると、画面画像の取得（キャプチャ）を行う（Ｓ６０６）。
【００８２】
次に自動テスト実行部２０は、取得された操作信号を当該操作信号が示す操作内容に解釈し、また取得された画面画像を当該画面画像が示す画面内容に解釈する（Ｓ６１０）。
【００８３】
そして自動テスト実行部２０は、取得した操作内容（情報）及び画面内容（情報）を記憶部（ＨＤＤ）１７に記憶指示を行い、これら情報を保存させる（Ｓ６１１）。自動テストツール上テスターにより「計測終了」ボタンを押下されると(Ｓ６０８)、自動テスト実行部２０は、操作信号及び画面画像の取得を終了する。
【００８４】
なお、「計測終了」ボタンが押下されるまでは、テスターにより再び操作されると（Ｓ６０２）、Ｓ６０２〜Ｓ６０６、Ｓ６１０、Ｓ６１１の処理が繰り返されることは上述の通りである。そしてここで保存された情報が、テストケースデータとしてテスト実行時に使用されることになる。
【００８５】
図１６は、作成されたテストケース例を示す。実施形態１（図７）と比較し異なる点は、操作信号（キーイベント）に代えて操作内容が、画面画像に代えて画面内容（及び画面状態）が記憶部（ＨＤＤ）１７に保存される。
【００８６】
例えば、テスト手順１において、操作信号としては「コピー」ハードキーが押下されたところ、上述の解釈により、その「コピー」ハードキー押下が意味するイベント内容「コピーアプリ画面遷移要求」に変換されテストケースとして記録されている。またこのとき、イベント内容「コピーアプリ画面遷移要求」に対応する画面内容は、画面画像に基づき解釈され、その結果「コピーアイドル画面」という画面内容が対応付けられる。
【００８７】
続けてテスト手順２において、操作信号としてタッチパネル上ある座標（ｘ、ｙ）が押下されたところ、上述の解釈により、その座標押下が意味するイベント内容「原稿サイズ指定Ａ４」に変換されテストケースとして記録されている。またこのとき、イベント内容「原稿サイズ指定Ａ４」に対応する画面内容は、画面画像に基づき解釈され、その結果「コピーアイドル画面：原稿サイズ指定Ａ４」という画面内容が対応付けられる。
【００８８】
続けてテスト手順３において、操作信号としては「３」ハードキーが押下されたところ、上述の解釈により、その「３」ハードキー押下が意味するイベント内容「コピー枚数指定３枚」に変換されテストケースとして記録されている。またこのとき、イベント内容「コピー枚数指定３枚」に対応する画面内容は、画面画像に基づき解釈され、その結果「コピーアイドル画面：原稿サイズ指定Ａ４、コピー枚数指定３枚」という画面内容が対応付けられる。
【００８９】
続けてテスト手順４において、操作信号としては「スタート」ハードキーが押下されたところ、上述の解釈により、その「スタート」ハードキー押下が意味するイベント内容「コピー開始要求」に変換されテストケースとして記録されている。またこのとき、イベント内容「コピー開始要求」に対応する画面内容は、画面画像に基づき解釈され、その結果「コピーアイドル画面」という画面内容が対応付けられる。なおこの場合は、原稿サイズ指定Ａ４、コピー枚数指定３枚の印刷条件によりコピーが実行され、その後「コピーアイドル画面」（コピーアプリ初期画面）に遷移したものである。
【００９０】
（２）テスト実施
テスター（ユーザ）は、本体ソフトウェアの動作テストを行うにあたって、自動テストツール上（図８）、テストしたいテストケースの指定を行い、「テスト開始」を押下する。テストケースの作成は、上述したように予め自動テストツールを用いて作成することができる。
【００９１】
図１７は、テスト実施処理の示すシーケンス図である。テスターにより「テスト開始」ボタン押下により開始されるテスト実施処理について、図を参照しながら以下説明する。
【００９２】
自動テストツール上テスターにより「テスト開始」ボタンを押下されると(Ｓ９０１)、自動テスト実行部２０は、テスト実施処理を開始する。まず自動テスト実行部２０は、記憶部（ＨＤＤ）１７から、指定されたテストケースと、そのテストケース関連の画面内容（情報）を取得する（Ｓ９１０）。なおこのとき取得した画面内容を第１画面内容と呼ぶ。
【００９３】
テストケースには、上述の通り解釈された指示内容が含まれている（例えば、図１６のイベント内容）ので、自動テスト実行部２０は、この指示内容を操作部１１に対して伝達する（Ｓ９１１）。操作部１１は操作内容を受けて、この操作内容をコントローラ部１３に伝達する（Ｓ９１２）。なお設計上可能であれば、自動テスト実行部２０が操作内容を直接コントローラ部１３に伝達してもよい。
【００９４】
一方、コントローラ部１３に操作内容が伝達されたことに伴い、コントローラ部１３は操作部１１に対し画面データを送信する（Ｓ９０５）。これは画面遷移させるための画面データである。自動テスト実行部２０は、表示画面が切替えられると、画面画像の取得（キャプチャ）を行う（Ｓ９０６）。
【００９５】
ここで自動テスト実行部２０は、今度はここで取得された画面画像を当該画面画像が示す画面内容に解釈する（Ｓ９１３）。比較判定対象を同じ画面内容レベルにするためである。なおこのとき解釈された画面内容を第２画面内容と呼ぶ。
【００９６】
そして自動テスト実行部２０は、Ｓ９１０にて先に記憶部（ＨＤＤ）１７から取得した第１画面内容と、Ｓ９１３にて解釈した第２画面内容とを比較し、両画面内容が一致するか否かの判定を行う（Ｓ９１４）。両画面内容が一致すれば、ＭＦＰ１の操作部１１は、テストケースと同じ振る舞い動作を行っていることを意味する。つまり、ある所定操作に従って、仕様上意図される表示画面を表示するかどうかの確認が取れたことになり、テスト結果は成功といえる。一方、両画面内容が不一致であれば、ＭＦＰ１の操作部において、ある所定操作に従って、仕様上、画面の内容的に意図される表示画面を表示していないということになり、テスト結果は失敗といえる。なおここでの判定方法は、画面の内容が実質的に一致又は不一致を判定できればよく、必ずしも画面内容の文字列の完全同一に限られない。
【００９７】
自動テスト実行部２０は、判定結果に基づき、テスト結果のレポートを作成しこれをテスターに対しレポートする（Ｓ９０８、Ｓ９０９）。
【００９８】
図１８は、画面内容比較例を示す。例えば図１６のテスト手順１における画面内容の比較例を示す。ここではテスト実施時（テストケース再生時）において、「コピー」ハードキー押下が意味するイベント内容「コピーアプリ画面遷移要求」が入力されると、実際に「コピーアイドル画面」（コピーアプリ初期画面）が操作パネル１１上に表示され、さらにこの表示画面の画面画像に基づき、画面内容は「コピーアイドル画面」であると解釈されたとする。そして、「コピーアイドル画面」（第１画面内容）及び「コピーアイドル画面」（第２画面内容）との比較判定が行われ、両画面内容（情報）は一致するため、テスト結果は成功となる。
【００９９】
一方仮に、テスト実施時（テストケース再生時）において、「コピー」ハードキー押下が意味するイベント内容「コピーアプリ画面遷移要求」が入力されると、実際には「ファックスアイドル画面」（ファックスアプリ初期画面）が操作パネル１１上に表示され、さらにこの表示画面の画面画像に基づき、画面内容は「ファックスアイドル画面」であると解釈されたとする。この場合、「コピーアイドル画面」（第１画面内容）及び「ファックスアイドル画面」（第２画面内容）との比較判定が行われ、両画面内容（情報）は不一致であるため、テスト結果は失敗となる。テスト実行時の本体ソフトウェアは、何かしらバグなどプログラム上の不具合が生じているものとして、開発者は再度この本体ソフトウェア・プログラムの点検を行うことになる。
【０１００】
以上、本実施形態２において、自動テスト実行部２０は、テストケースの作成にあたって、ＭＦＰ１にて意味付けされた情報（操作内容）に変換してから保存を行う。また取得された画面画像をＢＭＰ形式の画像データについてもこれをそのまま保存するのではなく、その画面画像に意味付けを行なった情報（画面内容）を保存する。
【０１０１】
そしてテストケース再生時において、意味付けされた操作内容を入力する。これにより、テスト対象の本体ソフトウェアが、プログラム修正などによって操作信号（ハードキーの変更、タッチパネル上のボタン座標位置の変更等）が変更されたものであったり、さらには異なるＭＦＰ機種向けの本体ソフトウェアであっても、意味付けされた共通の操作内容を入力できるので、旦作成したテストケースを利用できる点で有用である。
【０１０２】
また、テスト実施時（テストケース再生時）、画面画像の比較判定時においても意味付けされた情報同士の比較判定を行うので、テスト対象の本体ソフトウェアが、プログラム修正などによって表示画面が変更されたものであったり、さらには異なるＭＦＰ機種向けの本体ソフトウェアであっても、表示画面の意味付けされた共通の画面内容（情報）の比較により表示画像の一致・不一致判定を行うことができる点で有用である。
【０１０３】
以上、本発明によれば、操作に伴う画面表示の動作テストを効率的に行える自動テストツール・プログラム及び自動テスト方法を提供できる。
【０１０４】
本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。例えば本実施形態においては情報処理装置の一例として、画像形成装置に対して本発明を適用したものであり、その他のシステムや装置においても広く適用され得る。
【０１０５】
なお、上述の実施形態１、２ではテスト環境に実機ＭＦＰ１を用いたが、言うまでもなく実機に代えて、PC環境における実機レス環境でテストを実施することも可能である。例えばＰＣ環境において、ＭＦＰを構成するエンジンやメモリなどのデバイス相当として機能するエミュレータを使用する。エンジンエミュレータは、ＭＦＰのスキャナ、プロッタなどのデバイスをエミュレートするソフトウェアで、エンジンI/Fを介したコマンドレベルのシーケンスのやり取りをエミュレートする。その他にも、画像の転送をエミュレートするビデオドライバ、ＭＦＰが保有するＲＡＭメモリをエミュレートするメモリドライバ、ＨＤＤをエミュレートするＨＤＤドライバなど、各種デバイスエミュレータを搭載できる。
【符号の説明】
【０１０６】
１        ＭＦＰ
１１        操作部（操作パネル）
１１ａ    入力装置
１１ｂ    表示装置
１２        記憶メディアＩ／Ｆ
１２ａ    ドライブ装置
１２ｂ    記録媒体
１３        コントローラ（部）
１３ａ    ＲＯＭ
１３ｂ    ＲＡＭ
１３ｃ    ＣＰＵ
１４        データ通信Ｉ／Ｆ
１４ａ    インターフェース装置
１５        スキャナ
１５ａ    画像読取装置
１６        プロッタ
１６ａ    印刷装置
１７        ＨＤＤ
２０        自動テスト実行部
２１        操作信号取得部
２２        画面画像取得部
２３        記憶指示部
２４        操作信号入力部
２５        比較判定部
２６        テスト結果レポート部
３１        操作信号解釈部
３２        画面画像解釈部
３３        操作内容入力部
３４        記憶指示部
３５        比較判定部
【先行技術文献】
【特許文献】
【０１０７】
【特許文献１】特開２００９−１１６５３５
【図１】
2012038162.tif 000003
【図２】
2012038162.tif 000004
【図３】
2012038162.tif 000005
【図４】
2012038162.tif 000006
【図５】
2012038162.tif 000007
【図６】
2012038162.tif 000008
【図７】
2012038162.tif 000009
【図８】
2012038162.tif 000010
【図９】
2012038162.tif 000011
【図１０】
2012038162.tif 000012
【図１１】
2012038162.tif 000013
【図１２】
2012038162.tif 000014
【図１３】
2012038162.tif 000015
【図１４】
2012038162.tif 000016
【図１５】
2012038162.tif 000017
【図１６】
2012038162.tif 000018
【図１７】
2012038162.tif 000019
【図１８】
2012038162.tif 000020