JP5320872B2 - 画像処理装置、情報処理装置、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体 - Google Patents

画像処理装置、情報処理装置、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体 Download PDF

Info

Publication number
JP5320872B2
JP5320872B2 JP2008180756A JP2008180756A JP5320872B2 JP 5320872 B2 JP5320872 B2 JP 5320872B2 JP 2008180756 A JP2008180756 A JP 2008180756A JP 2008180756 A JP2008180756 A JP 2008180756A JP 5320872 B2 JP5320872 B2 JP 5320872B2
Authority
JP
Japan
Prior art keywords
event
evaluation target
software
data
processing apparatus
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.)
Expired - Fee Related
Application number
JP2008180756A
Other languages
English (en)
Other versions
JP2010020562A (ja
Inventor
健治 新村
潤 江畑
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2008180756A priority Critical patent/JP5320872B2/ja
Publication of JP2010020562A publication Critical patent/JP2010020562A/ja
Application granted granted Critical
Publication of JP5320872B2 publication Critical patent/JP5320872B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

本発明は、画像処理装置、情報処理装置、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体に係り、特に、機器が搭載するソフトウェア部品の動作を検証・評価する技術に関するものである。
情報通信技術の高度化に伴い、多機能な電子機器製品が市場に供給されるようになった。
このような機器の開発環境では、ソフトウェア開発が複雑となり、システム規模が増大する一方で、これらの製品サイクルは短く、一世代前の製品から新たな世代の製品を市場投入までの期間(製品リリース間隔)を短縮する傾向にある。
このようなことから、機器の製造元(メーカー)では、機器の品質を、製品として市場投入しても問題ないレベルまで、短期間に向上させなければならない。
しかし、多機能な機器の場合、動作するソフトウェア部品が数多く存在し、機器の動作を検証・評価するテスト工程における作業負荷もそれに伴って増大する。
特に、機器と利用者とのインタフェース機能を実現する操作受付・情報通知部のテスト工程では、手作業による動作検証や、目視確認による動作評価など、テストを行う担当者(以下、「テスター」と言う。)に依存する作業が多く、テスターへの負担が大きい。その結果、テスト工程の作業効率も悪い。
そのため、テスト工程において、テスト品質を維持しながら作業効率の向上を図る必要がある。
そこで、従来では、入力デバイスを介して人間が行った操作を記録し、かつ入力デバイスの操作を人間に代わって計算機で行うことを可能としたことにより、人間の操作を擬似的に自動実行することができる入力イベント記録/再生装置が提案されている(例えば「特許文献1」を参照)。
特開平07−234807号公報
しかしながら、特許文献1に開示される従来の入力デバイス記録/再生装置は、外部機器からの入力イベントを記録する機能と、外部機器に対して仮想入力イベントを出力する機能で構成されており、手作業の操作を自動化することは可能であるが、例えば、評価対象(テスト対象)ソフトウェアが搭載された機器(以下、「評価対象機」と言う。)や、評価対象機の機能を再現したエミュレータなど、テスト環境の違いによる問題点が考慮されていない。
テスト環境に起因する問題点とは、操作手順を再現するために記録したデータ(操作手順記録データ)や、記録したデータを基に操作手順を再現したときに評価対象ソフトウェアの動作を検証・評価するために記録したデータ(検証用データ)などに、テスト環境の違いによる微少な差異が含まれたり、テスター操作やテスト環境特有の記録データのばらつきが発生したりする点である。
テスト品質を維持しながら、テスト工程の作業効率を向上させるためには、評価対象機やエミュレータと言った異なるテスト環境においても、同一のテストデータを用いることが可能であることが重要となる。
なぜなら、異なるテスト環境ごとに、対応するテストデータを準備したり、テスト工程の中で管理したりすることは作業者によって煩雑であり、かつ、同一のテスト工程に対してテストデータが複数存在すると、テスターが誤ったテストデータを用いて作業を行ってしまう可能性もあり、テスト品質の低下に繋がる。
このように、従来の入力デバイス記録/再生装置では、前述した問題点について考慮されていない。
本発明では、上記従来技術の問題点を鑑み、異なるテスト環境においても、テスト品質を維持し、テスト工程の作業効率を向上させることが可能な画像処理装置、情報処理装置、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体を提供することを目的とする。
上記目的を達成するため、本発明の画像処理装置は、評価対象機である当該画像処理装置が搭載するソフトウェア及び/又はハードウェアにより各種機能を提供する評価対象機能提供手段を有する画像処理装置であって、前記評価対象機能提供手段に対して、評価対象ソフトウェアと、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアとの間で送受信されるイベントを制御するイベント制御手段と、前記評価対象機能提供手段の動作環境に応じて、前記イベント制御手段によイベントの取得及び/又は発行を制御し、前記評価対象ソフトウェアの動作をテストする動作テスト手段とを有し、前記動作テスト手段は、前記イベントの識別情報又は属性情報に基づき、前記イベント毎に該イベントのデータを補正するか否かを判定するデータ補正判定手段と、前記データ補正判定手段により判定された前記イベントのデータを、該イベント毎に所定の変換規則に従って補正するデータ補正手段とを有することを特徴とする。
また、上記目的を達成するため、本発明の画像処理装置は、前記動作テスト手段が、前記イベント制御手段を制御し取得した前記イベントを記録する記録手段と、前記記録手段により記録されたイベントに基づき、前記評価対象ソフトウェアの動作テストを実行する実行手段と、前記実行手段により実行された動作テストの動作結果に基づき、前記評価対象ソフトウェアの動作を検証・評価する検証・評価手段とを有することを特徴とする。
このような構成によって、本発明の画像処理装置は、評価対象機が搭載するハード・ソフトウェアにより各種機能を提供する評価対象機能提供部と、評価対象機能提供部により提供されたシステム上で動作する評価対象ソフトウェアに対して動作テストを行う動作テスト部とを有し、動作テスト部が、評価対象機能提供部で評価対象ソフトウェアの送受信イベントを制御するソフトウェア部品を介して、操作手順の記録及び再生(実行)を行い、評価対象機能提供部の動作環境(テスト環境)に応じて、評価対象ソフトウェアの動作を検証・評価する。
また、上記目的を達成するため、本発明の画像処理装置は、前記記録手段が、前記イベント制御手段を制御し取得した、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアから前記評価対象ソフトウェアへ送信された入力イベントを、前記動作テストを行うときの操作手順データとして記録するとともに、前記入力イベントに応じて前記評価対象ソフトウェアから前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアへ送信された出力イベントを、前記評価対象ソフトウェアの動作を検証・評価するときの検証データとして記録することを特徴とする。
また、上記目的を達成するため、本発明の画像処理装置は、前記実行手段が、前記記録手段により記録された検証データの記録データ順に従って、前記検証データ内の各出力イベントに関する情報に基づき、前記イベント制御手段により前記出力イベントの発行を制御し、前記ハードウェアへ前記出力イベントを発行する出力イベント発行手段を有し、前記記録手段が、前記出力イベント発行手段により発行された出力イベントに応じて、前記ハードウェアから前記評価対象ソフトウェアへ送信された入力イベントを、前記操作手順データとして繰り返し記録することを特徴とする。
また、上記目的を達成するため、本発明の画像処理装置は、前記記録手段が、前記イベント制御手段を制御し取得した、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアから前記評価対象ソフトウェアへ送信された入力イベントに基づき、所定の生成規則に従って、複数パターンの操作手順データを生成する操作手順パターンデータ生成手段を有し、前記操作手順パターンデータ生成手段により生成された複数パターンの操作手順データを記録することを特徴とする。
また、上記目的を達成するため、本発明の画像処理装置は、前記記録手段が、前記イベント制御手段を制御し取得した前記イベントを、当該画像処理装置が備える記憶装置及び/又は着脱可能な記憶媒体に格納し記録することを特徴とする。
これによって、本発明の画像処理装置は、異なるテスト環境においても、テスト品質を維持し、テスト工程の作業効率を向上させることができる。
また、上記目的を達成するため、本発明の情報処理装置は、評価対象機が搭載するソフトウェア及び/又はハードウェアにより提供される各種機能を擬似的に再現する評価対象機再現手段を有する情報処理装置であって、前記評価対象機再現手段に対して、評価対象ソフトウェアと、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアとの間で送受信されるイベントを制御するイベント制御手段と、前記評価対象機再現手段の動作環境に応じて、前記イベント制御手段によイベントの取得及び/又は発行を制御し、前記評価対象ソフトウェアの動作をテストする動作テスト手段とを有し、前記動作テスト手段は、前記イベントの識別情報又は属性情報に基づき、前記イベント毎に該イベントのデータを補正するか否かを判定するデータ補正判定手段と、前記データ補正判定手段により判定された前記イベントのデータを、該イベント毎に所定の変換規則に従って補正するデータ補正手段とを有することを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、前記動作テスト手段が、前記イベント制御手段を制御し取得した前記イベントを記録する記録手段と、前記記録手段により記録されたイベントに基づき、前記評価対象ソフトウェアの動作テストを実行する実行手段と、前記実行手段により実行された動作テストの動作結果に基づき、前記評価対象ソフトウェアの動作を検証・評価する検証・評価手段とを有することを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、前記記録手段が、前記イベント制御手段を制御し取得した、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアから前記評価対象ソフトウェアへ送信された入力イベントを、前記動作テストを行うときの操作手順データとして記録するとともに、前記入力イベントに応じて前記評価対象ソフトウェアから前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアへ送信された出力イベントを、前記評価対象ソフトウェアの動作を検証・評価するときの検証データとして記録することを特徴とする。
上記目的を達成するため、本発明のソフトウェア動作テスト方法は、評価対象機が搭載するソフトウェア及び/又はハードウェアにより提供される各種機能を擬似的に再現する評価対象機再現手段を有する情報処理装置、又は、評価対象機である当該画像処理装置が搭載するソフトウェア及び/又はハードウェアにより各種機能を提供する評価対象機能提供手段を有する画像処理装置におけるソフトウェア動作テスト方法であって、前記評価対象機再現手段又は前記評価対象機能提供手段に対して、評価対象ソフトウェアと、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアとの間で送受信されるイベントを制御するイベント制御手順と、前記評価対象機再現手段又は前記評価対象機能提供手段の動作環境に応じて、前記イベント制御手順によイベントの取得及び/又は発行を制御し、前記評価対象ソフトウェアの動作をテストする動作テスト手順とを有し、前記動作テスト手順は、前記イベントの識別情報又は属性情報に基づき、前記イベント毎に該イベントのデータを補正するか否かを判定するデータ補正判定手順と、前記データ補正判定手順により判定された前記イベントのデータを、該イベント毎に所定の変換規則に従って補正するデータ補正手順とを有することを特徴とする。
このような手順によって、本発明のソフトウェア動作テスト方法は、評価対対象機が搭載するハード・ソフトウェアによる各種機能を擬似的に再現する評価対象機再現部、又は評価対象機が搭載するハード・ソフトウェアにより各種機能を提供する評価対象機能提供部と、評価対象機再現部が再現したシステム又は評価対象機能提供部により提供されたシステム上で動作する評価対象ソフトウェアに対して動作テストを行う動作テスト部とを有し、動作テスト部が、評価対象機再現部又は評価対象機能提供部で評価対象ソフトウェアの送受信イベントを制御するソフトウェア部品を介して、操作手順の記録及び再生(実行)を行い、評価対象ソフトウェアの動作環境(テスト環境)に応じて、評価対象ソフトウェアの動作を検証・評価する機能を実現する。
これによって、本発明の画像処理方法は、異なるテスト環境においても、テスト品質を維持し、テスト工程の作業効率を向上させることが可能なソフトウェア動作テスト機能を提供できる。
上記目的を達成するため、本発明のソフトウェア動作テストプログラムは、評価対象機が搭載するソフトウェア及び/又はハードウェアにより提供される各種機能を擬似的に再現する評価対象機再現手段を有する情報処理装置、又は、評価対象機である当該画像処理装置が搭載するソフトウェア及び/又はハードウェアにより各種機能を提供する評価対象機能提供手段を有する画像処理装置におけるソフトウェア動作テストプログラムであって、コンピュータを、前記評価対象機再現手段又は前記評価対象機能提供手段に対して、評価対象ソフトウェアと、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアとの間で送受信されるイベントを制御するイベント制御手段と、前記評価対象機再現手段又は前記評価対象機能提供手段に応じて、前記イベント制御手段によりイベントの取得及び/又は発行を制御し、前記評価対象ソフトウェアの動作をテストする動作テスト手段と、前記イベントの識別情報又は属性情報に基づき、前記イベント毎に該イベントのデータを補正するか否かを判定するデータ補正判定手段と、前記データ補正判定手により判定された前記イベントのデータを、該イベント毎に所定の変換規則に従って補正するデータ補正手段として機能させる。
本発明によれば、評価対象ソフトウェアの動作を検証・評価する前に、検証・評価時に用いる各種テストデータに含まれるテスト環境の違いに起因する差異を補正することで、異なるテスト環境においても、テスト品質を維持し、テスト工程の作業効率を向上させることができる。
以下、本発明の好適な実施の形態(以下、「実施形態」という。)について、図面を用いて詳細に説明する。
[第1の実施形態]
<ハードウェア構成>
では、本実施形態に係る画像処理装置のハードウェア構成について説明する。図1は、本発明の第1の実施形態に係る画像処理装置100のハードウェア構成例を示す図である。
本実施形態に係る画像処理装置100は、操作パネル11と、記録媒体I/F12と、コントローラ13と、データ通信I/F14と、ハードディスク110と、スキャナ15と、プロッタ16とから構成され、それぞれバスで相互に接続されている。
操作パネル11は、入力装置101と表示装置102とを備えており、入力装置101は、ハードウェアキーなどで構成され、画像処理装置100に各操作信号を入力するのに用いられる。また、表示装置102は、ディスプレイなどで構成され、例えば動作条件などの画像処理動作に関する各種情報を表示する。
データ通信I/F14は、インタフェース装置109を備えており、画像処理装置100を、有線及び/又は無線回線により構築されたLAN(Local Area Network)やWAN(Wide Area Network)などのネットワーク(データ通信網)に接続するインタフェースである。
ハードディスク110は、大容量の不揮発性記憶装置であり、画像処理装置100で取り扱われる受信文書データや読み取り画像データなどの各種データを格納する。また、ハードディスク110は、これらの各種データを、所定のファイルシステムやDB(Data Base)により管理する。
記録媒体I/F12は、ドライブ装置103を備えており、例えばフラッシュメモリなどの記録媒体104を、画像処理装置100に接続するためのインタフェースである。この記録媒体I/F12によって、画像処理装置100と記録媒体104との間でデータのやり取りを行うことが可能となる。例えば、記録媒体104は、画像処理装置100において動作させる機能を実現するプログラムなどを当該装置にインストールするときに利用する。
コントローラ13は、ROM(Read Only Memory)105、RAM(Random Access Memory)106、NV−RAM(Non Volatile RAM)107、及びCPU(Central Processing Unit)108を備えている。
ROM105は、画像処理装置100が起動されるときに実行されるプログラム(OS:Operating Systemの役割をするプログラム)や各種データ、また画像処理装置100が有する各種機能を実現するプログラム(アプリケーションプログラム)や各種データを格納する。また、RAM106は、ROM105やハードディスク110から読み出された各種プログラムやデータを一時保持する。NV−RAM107は、画像処理動作を制御するための初期設定値(画像処理制御に関する初期設定値)などの画像処理装置100に関する設定データを格納している。さらに、CPU108は、RAM106上に読み出されたプログラムを実行する。
コントローラ13は、上記ハードウェア構成により、例えば、データ通信I/F14を介して印刷データを受信した場合に、ROM105からRAM106上に読み出されたPDL(Page Description Language)を解釈可能なプログラム(PDLパーサ)をCPU108により実行し、印刷データを解釈してビットマップイメージを生成する。
スキャナ15は、画像読取装置111を備えており、読み取り面に配置された原稿を光学的に読み取り画像データを生成する。また、プロッタ16は、印刷装置112を備えており、例えば、電子写真方式によって、コントローラ13から転送されたビットマップイメージを記録紙(印刷用紙)に印刷する。ここでは、画像形成方式の一例として電子写真方式による例を示ししたが、例えば、インクジェット方式であっても良い。
このように、本実施形態に係る画像処理装置100では、コントローラ13のRAM106上に読み出された所定のプログラムがCPU108で実行され、当該装置が備える各インタフェースから入力されたデータに対して要求された処理を行う。
評価対象機を、上記ハードウェア構成を備える画像処理装置100であった場合、上記所定のプログラムが、評価対象ソフトウェアとなる。
<ソフトウェア動作テストの動作例>
ここからは、評価対象機に搭載された評価対象ソフトウェアの動作の検証・評価を、どのような流れで行うのかについて、テスターの操作とそれに対応する評価対象機内の動作を例に説明する。なお、以下に説明では、評価対象機を画像処理装置100とし、操作パネル11の画面遷移に関するソフトウェアのテスト工程を一例として挙げる。画面遷移動作の検証・評価を行うテスト工程は、テスターの手作業により行われ、従来では、操作パネル11上の操作キーを介して動作指示を行った後に、画面遷移が正しく行われるか否かを目視で確認していたため、テスターにとって負荷の大きい作業であった。このようなテスト工程に対して、操作手順を記録し、記録した手順に従って作業を再現できれば、テスト品質を維持しながら、作業効率を向上させることができる。
ソフトウェア動作テストは、「操作手順の記録」、「記録手順の再生」、「検証・評価」の順に行われる。
《操作手順の記録》
図2は、本発明の第1の実施形態に係るテスターの操作手順を記録するときの動作例を示す図である。まず、テスターUは、画像処理装置100が備える操作パネル11に表示された操作画面W(UI)を介して、評価対象ソフトウェア(図中では「アプリケーションAP」)への動作指示(画面表示を行う動作指示)などの所定のパネル操作を行う(ステップS11)。
画像処理装置100では、操作画面Wから受け付けた動作指示に対応する操作イベントが、操作パネル11からコントローラ13へ送られ(ステップS12)、コントローラ13が、受け取った操作イベントを、該当するアプリケーションAPに送る(ステップS13)。また、コントローラ13は、ステップS12において受け取った操作イベントをテストツールTに送る(ステップS15)。
また、アプリケーションAPは、受け取った操作イベントにより動作指示された所定の処理を行った後に、処理結果や次の操作要求などの操作画面遷移後の画面データ(画像データを含むグラフィック部品群)を生成し、コントローラ13に送り(ステップS14)、コントローラ13が、受け取った画面データをテストツールTに送る(ステップS16)。
テストツールTは、ステップS15において受け取った操作イベントを、例えば画像処理装置100が備えるハードディスク110などの記憶装置の所定の記憶領域に格納し、操作手順データとして記録する。また、ステップS16において受け取った画面データも、検証・評価時に正しいとする基準画面(正解画面)として記録する(ステップS17)。また、ステップS17では、上記各情報(操作手順データと画面データ)を対応付けて記録する。
また、コントローラ13は、ステップS14において受け取った画面データを操作パネル11へ送り(ステップS18)、操作パネル11が、受け取った画面データを基に、手動操作による新たな操作画面W(正解画面)を表示し、テスターUに次の操作(次の動作指示)を促す(ステップS19)。
本実施形態では、以上のような動作を繰り返すことにより、テスターUの操作手順をデータ化し記録する。
《記録した操作手順の再生》
図3は、本発明の第1の実施形態に係る記録した操作手順を再生するときの動作例を示す図である。本実施形態では、前述した記録データを基に操作手順を再生し、テスト工程を再現する。
テストツールTは、ハードディスク110から操作手順データと対応する画面データとを、記録された順に取得し(ステップS21)、取得した操作手順データをコントローラ13へ送る(ステップS22)。
コントローラ13は、受け取った操作手順データを基に、記録された各操作イベント情報に従って、該当するアプリケーションAPへ擬似的に操作イベントを送り(ステップS23)、アプリケーションAPが、受け取った操作イベントにより動作指示された所定の処理を行った後に、そのとき表示する操作画面Wの画面データ(グラフィック部品群)を生成し、コントローラ13に送り(ステップS24)、コントローラ13が、受け取った画面データをテストツールTに送る(ステップS25)。
テストツールTは、ステップS25において受け取った画面データを、ハードディスク110の所定の記憶領域に格納し、検証・評価時の正解画面と比較する検証用画面として記録する(ステップS26)。
また、コントローラ13は、ステップS24において受け取った画面データを操作パネル11へ送り(ステップS27)、操作パネル11が、受け取った画面データを基に、操作手順の再生による新たな操作画面W(検証用画面)を表示し、テスターUに操作手順の実行状態を通知する(ステップS28)。
本実施形態では、以上のような動作を、記録された一連の操作手順に従って(テスト工程の単位で)実行することにより、手作業で行っていたテスターUの操作手順を自動化し、テスト工程の各作業を再現する。
《検証・評価》
図4は、本発明の第1の実施形態に係る評価対象ソフトウェアの動作を検証・評価するときの動作例を示す図である。遷移画面動作の検証・評価は、テストツールTにより行われる。例えば、テストツールTでは、前述した「操作手順の記録」により得られた正解画面の画面データIMG1と「記録した操作手順の再生」により得られた検証用画面の画面データIMG2とを比較し、検証・評価結果を得る。その比較方法には、画面データが画像である特性を生かし画像類似度による方法などが挙げられる。
このようにして得られた検証・評価の結果は、結果レポートとして所定の形式で出力される。その出力方法としては、テストツールTからコントローラ13を介して、操作パネル11に表示させたり、印刷機能(プロッタ16)を備えた画像処理装置100であれば、用紙に印刷したりする方法が挙げられる。
このように、従来、テスターUの手作業により行われていたテスト工程も、前述した「記録」、「再生」、「検証・評価」の各手順により、作業を自動化し、テスターUの作業能力に依存することなく、一定のテスト品質かつ作業効率の良い方法で、評価対象ソフトウェアの動作を検証・評価することが可能となる。
では、前述した動作例を踏まえ、本実施形態に係る「ソフトウェア動作テスト機能」について詳細に説明する。
<ソフトウェア動作テスト機能>
本実施形態に係るソフトウェア動作テスト機能では、評価対象機に搭載される場合と、エミュレータに搭載される場合とで、機能を実現するソフトウェア構成を同一の構成とすることで、評価対象機とエミュレータの両方の環境に容易に対応でき(容易に導入でき)、また、評価対象機とエミュレータの両方の環境で、同一の操作手順記録データと検証用データとを用いて、評価対象ソフトウェアの動作を検証・評価することができる。さらに、評価対象ソフトウェアの動作を検証・評価する前に、異なるテスト環境の各種テストデータを用いてテスト動作を行ったときに、評価対象ソフトウェアから出力されるイベントデータに含まれるテスト環境(例えば「評価対象機」と「エミュレータ」など)の違いに起因する差異を補正することで、異なるテスト環境においても、テスト品質を維持し、テスト工程の作業効率を向上させることができる。
以降に説明するソフトウェア動作テストは、画像処理装置100に1つのアプリケーションとしてインストールされたソフトウェア動作テストプログラムを、RAM106上に読み出し、CPU108により実行することで実現される機能である。
では、その機能構成と動作について説明する。
《機能構成》
図5は、本発明の第1の実施形態に係るソフトウェア動作テスト機能の構成例を示す図である。図5には、画像処理装置100に搭載されたソフトウェア動作テスト機能の構成例が示されている。
図5に示されるように、画像処理装置100に搭載されたソフトウェア動作テスト機能は、主に、評価対象ソフトウェアSW1を含む画像処理装置100が提供機能実現のために搭載する各種ハード・ソフトウェアである評価対象機能提供部81と、評価対象機能提供部81で動作する評価対象ソフトウェアSW1に対して検証・評価を行う動作テスト部82とから構成される。
(評価対象機能提供部)
評価対象機能提供部81は、ソフトウェア部品として、評価対象ソフトウェアSW1と、画像処理装置100が備える各種ハードウェア資源(各種デバイス)のデバイスドライバ機能(ハードウェアとソフトウェアとのインタフェース機能)を実現する各種デバイスドライバSW2と、評価対象ソフトウェアSW1と連携して機能提供を実現する連携ソフトウェアSW3とを有し、ハードウェア部品として、画像処理装置100が備える各種ハードウェア(各種デバイス)HWを備える構成となっている。
さらに、評価対象機能提供部81では、評価対象ソフトウェアSW1と、各種デバイスドライバSW2、連携ソフトウェアSW3、又は各種ハードウェアHWの少なくとも1つとの間には、相互間で送受信される各種イベント(例えば「動作指示」など)の通信経路となるイベント・キャプチャ部21が配置される構成となっている。
上記イベント・キャプチャ部21は、「記録」や「再生」などの動作テスト実行時に、後述するイベント記録・再生部22との連携処理により、イベントの取得や発行と言ったイベント制御が可能となっている。この制御の詳細な説明については、イベント記録・再生部22の説明にて行う。
続いて、ソフトウェア動作テスト機能である動作テスト部12について説明する。
(動作テスト部)
動作テスト部12は、イベント記録・再生部22及び検証部23により構成される。
イベント記録・再生部22は、「(A)イベント記録機能」と「(B)イベント再生機能」との2つの機能を有している。「イベント記録機能」では、前述した評価対象機再現部11の評価対象ソフトウェアSW1が送受信するイベントを記録し、「イベント再生機能」では、記録したイベントを再生し、評価対象ソフトウェアSW1を動作させる。
また、イベント記録・再生部22は、上記イベント記録及び再生機能を、評価対象機能提供部81のイベント・キャプチャ部21と連携動作することで実現する。
検証部23は、「(C)検証・評価機能」を有し、上記イベント再生機能により得られる評価対象ソフトウェアSW1の動作結果を基に、評価対象ソフトウェアSW1が正しく動作しているか否かを検証・評価する。
以下に、上記各機能部の詳細や他の機能部との連携動作について説明する。
(A)イベント記録機能
イベント記録・再生部22は、イベント・キャプチャ部21を介して、評価対象ソフトウェアSW1が送受信するイベントを取得し、ハードディスク110の所定の記憶領域に格納する。
評価対象ソフトウェアSW1が送受信するイベントには、評価対象ソフトウェアSW1が、各種デバイスドライバSW2、連携ソフトウェアSW3、又は各種ハードウェアHWの少なくとも1つを含むリソース環境(以下、「外部環境」と言う。)から受信する入力イベントと、評価対象ソフトウェアSW1が送信する出力イベントに大別される。
入力イベントには、評価対象ソフトウェアSW1への動作指示など、例えば、テスターUが、操作パネル11を介して、テスト工程の作業手順に従った操作を行ったときに受信する操作イベントなどが含まれる。また、出力イベントには、受信した操作イベントに従って動作した評価対象ソフトウェアSW1の動作結果イベントなどが含まれる。
これらの各種イベントは、全て、イベント・キャプチャ部21を介して、評価対象ソフトウェアSW1と外部環境との間でやり取りされる。
よって、イベント記録・再生部22は、イベント・キャプチャ部21に対してイベント取得を要求し、上記入出力イベントを取得する。例えば、イベント記録・再生部22は、画面操作時に上記イベント取得の要求を行った場合、イベント・キャプチャ部21を介して、入力イベントである操作イベントと、出力イベントとして動作結果イベントを取得する。
《処理手順》
図6は、本発明の第1の実施形態に係るイベント記録機能の処理手順例を示すシーケンス図である。(A)には、外部環境から評価対象ソフトウェアSW1への入力イベントを取得し記録する場合、一方(B)には、評価対象ソフトウェアSW1から外部環境への出力イベントを取得し記録する場合のそれぞれの例が示されている。
・入力イベントの記録
図6(A)に示すように、画像処理装置100が有するイベント記録機能は、まず、イベント・キャプチャ部21が、外部環境から評価対象ソフトウェアSW1への入力イベントを取得し(ステップS101)、取得した入力イベントを、取得要求元のイベント記録・再生部22へ送信する(ステップS102)。
イベント記録・再生部22は、受け取った入力イベントを基に、操作手順記録データ31を生成し、ハードディスク110の所定の記憶領域にデータファイルとして格納する(ステップS103)。
・出力イベントの記録
図6(B)に示すように、画像処理装置100が有するイベント記録機能は、まず、イベント・キャプチャ部21が、評価対象ソフトウェアSW1から外部環境への出力イベントを取得し(ステップS201)、取得した出力イベントを、取得要求元のイベント記録・再生部22へ送信する(ステップS202)。
イベント記録・再生部22は、受け取った出力イベントを基に、検証用データ41を生成し、ハードディスク110の所定の記憶領域にデータファイルとして格納する(ステップS203)。
このように、イベント記録・再生部22は、入力イベントとして取得した操作イベントと、出力イベントとして取得した動作結果イベントとを、異なるイベント情報としてハードディスク110に格納し、各情報で構成されたファイルデータを生成する。
イベント記録・再生部22は、取得した操作イベントを基に、操作手順を記録したデータファイルである操作手順記録データ31を生成する。例えば、生成される操作手順記録データ31は、操作イベントを識別するイベント識別情報(イベントID)、操作手順による動作指示や動作条件などを示す操作手順情報(外部環境からの動作指示や動作条件)、操作イベントが発行される時間を示すイベント発行時間情報などから構成されている。
また、イベント記録・再生部22は、取得した動作結果イベントを基に、評価対象ソフトウェアSW1が正しく動作しているかを検証・評価するときの基準データである検証用データ41を生成する。例えば、検証用データ41は、動作結果イベントを識別するイベント識別情報(イベントID)、動作結果を示す動作結果情報(入力イベントに応じた外部環境への動作指示や動作条件)などから構成されている。
このようにして生成されたデータファイル31及び41は、後述する操作手順再生時に、再生中の操作手順に対応する検証・評価の基準が一意に特定可能なように、互いのデータ31及び41が対応付けられて保存される。
また、これらのデータ31及び41は、例えばテスト単位など、記録された操作手順を実行したときに1つのテストが終了する単位でファイル化され保存される。
以上のように、イベント記録・再生部22は、イベント・キャプチャ部21と連携して機能することで、テスト工程の中で行われる操作手順と、操作手順に対応する評価対象ソフトウェアSW1の動作結果とを記録する。
(B)イベント再生機能
イベント記録・再生部22は、イベント・キャプチャ部21を介して、評価対象ソフトウェアSW1を動作させ、その動作結果を取得する。つまり、評価対象ソフトウェアSW1の動作テストを行う。
イベント記録・再生部22は、評価対象ソフトウェアSW1に対して、入力イベントである操作イベントを擬似的に送信し、外部環境から操作イベントを受信したときと同様の動作をさせる。その結果、評価対象ソフトウェアSW1から外部環境へ送信された出力イベントである動作結果イベントを取得する。
また、イベント記録・再生部22は、ハードディスク110に保存されている操作手順記録データ31を基に上記操作イベントを送信する。
操作手順記録データ31には、イベント記録時に取得した操作イベントに関する情報(イベント識別情報、操作手順情報、及びイベント発行時間情報など。)が、取得した順に記録されている。つまり、テスターUが行った操作順に発行された操作イベントが記録されている。
よって、イベント記録・再生部22は、操作手順記録データ31を構成するデータの順(記録データ順)に、イベント・キャプチャ部21に対して操作イベントに関する情報のイベント識別情報を送信する。その結果、イベント・キャプチャ部21が、イベント識別情報を基に、識別情報に該当する操作イベントを、評価対象ソフトウェアSW1へ送信する。
また、上記イベント・キャプチャ部21における操作イベントの送信タイミングは、イベント記録・再生部22により制御される。
イベント記録・再生部22は、操作イベントに関する情報のイベント発行時間情報を基に、イベント・キャプチャ部21に対してイベント識別情報の送信を制御する。その結果、イベント・キャプチャ部21における操作イベントの送信が制御される。
以上のように、イベント記録・再生部22は、イベント・キャプチャ部21と連携して機能することで、記録しておいた操作手順を基に、テスターUが手作業で行っていた操作を、テスターUの操作と同じタイミングで自動実行する。これにより、動作テストの作業効率の向上を図ることができ、かつ、テスト工程の中で行われる操作手順を忠実に再現することが可能となる。
(C)検証・評価機能
続いて、検証部23は、イベント記録・再生部22がイベント再生機能により、評価対象ソフトウェアSW1から取得した動作結果を基に、正しく動作しているか否か(正常に動作しているか否か)を検証・評価する。
検証部23には、イベント記録・再生部22から、評価対象ソフトウェアSW1の出力イベントである動作結果イベントが送信される。その結果、検証部23は、受け取った動作結果イベントと、ハードディスク110に保存されている検証用データ41の各動作結果イベントとを比較することで、動作の検証・評価を行う。
検証用データ41には、イベント記録時に取得した動作結果イベントに関する情報(イベント識別情報及び動作結果情報)が、取得した順に記録されている。つまり、テスターUが行った操作に対応して、評価対象ソフトウェアSW1が動作した順に発行された動作結果イベントが記録されている。
よって、イベント記録・再生部22がイベント再生機能により、操作手順記録データ31を基に動作テストを実行していることから、評価対象ソフトウェアSW1が正しく動作していれば、評価対象ソフトウェアSW1からは、検証用データ41を構成する各動作結果イベントが得られる。
これにより、検証部23は、イベント再生時に、イベント記録・再生部22から送信された動作結果イベントと、検証用データ41からデータ順に従って抽出した動作結果イベントとを比較し、一致していれば、評価対象ソフトウェアSW1が、操作イベントの受信に従って正しく動作していると判定する。一方、異なっていれば、正しく動作していないと判定する。
以上のように、検証部23は、イベント記録・再生部22により、動作テストの操作手順に従って実行された評価対象ソフトウェアSW1から取得した動作結果を基に、正しく動作しているか否か(正常に動作しているか否か)を判断し、評価対象ソフトウェアSW1の動作を検証・評価する。
《処理手順》
図7は、本発明の第1の実施形態に係るイベント再生及び検証・評価機能の処理手順例を示すシーケンス図である。
図7に示すように、画像処理装置100が有するイベント再生及び検証・評価機能は、まず、イベント記録・再生部22が、ハードディスク110に保存されている操作手順記録データ31を取得し(ステップS301)、取得した操作手順記録データ31を基に、テスターUが手作業で行っていた操作を、テスターUの操作と同じタイミングで自動実行する(ステップS302)。
イベント記録・再生部22は、取得した操作手順記録データ31を構成するデータの順に、イベント・キャプチャ部21に対して操作イベントに関する情報(記録された操作手順数:N)のイベント識別情報と操作手順情報を、イベント発行時間情報に従ったタイミングで送信する(ステップS303n)。
イベント・キャプチャ部21は、受け取ったイベント識別情報と操作手順情報とを基に、該当する操作イベント(記録された操作手順数:N)を、外部環境からの入力イベントとして、評価対象ソフトウェアSW1へ送信する(ステップS304n)。
評価対象ソフトウェアSW1は、受け取った入力イベントに従って(要求された)所定の処理を行い(ステップS305)、イベント・キャプチャ部21が、評価対象ソフトウェア21から外部環境への出力イベントとして送信された動作結果イベントを取得する(ステップS306)。
イベント・キャプチャ部21は、取得した動作結果イベントを、イベント記録・再生部22へ送信し(ステップS307)、イベント記録・再生部22が検証部23へ送信する(ステップS308)。
その結果、検証部23は、ハードディスク110に保存されている検証用データ41を取得し(ステップS309)、受け取った動作結果イベントと、検証用データ41からデータ順に従って抽出した動作結果イベントとを比較し、一致していれば、評価対象ソフトウェアSW1が、操作イベントの受信に従って正しく動作していると判定する。一方、異なっていれば、正しく動作していないと判定する。すなわち、評価対象ソフトウェアSW1の動作を検証・評価する(ステップS310)。
ここからは、ソフトウェア動作テスト機能が有する「評価対象ソフトウェアSW1からの出力イベントを補正するイベントデータ補正機能」について説明する。
<イベントデータ補正機能>
以下に、テスト環境の違い(評価対象機とエミュレータとの違い)に起因するイベントデータの差異の一例を挙げる。
・イベントを表現するデータ型の違い
・イベントを表現するデータ構造の違い
・イベントを表現するデータ値の違い
・座標系や文字コードなどの違い
通常、これらの微少な差異は、エミュレータが吸収する役割を果たすが、ハードウェアや動作環境(例えば「OS」など)の違いに起因する場合には、差異を吸収することが困難である。このような理由から、異なる形式のまま(差異を含むまま)、評価対象ソフトウェアSW1と外部環境との間でやり取りされる入出力イベントを取り扱う場合が多い。
また、評価対象機に対して複数の派生製品が存在すると、例えば、操作パネル11の画面仕様(例えば「画面サイズ」など)の違いから、一部の操作イベント(入力イベント)の内容が異なる場合があり、これにより、評価対象ソフトウェアSW1から異なる形式(差異を含む)出力イベントを得ることとなる。
その結果、前述した検証部23が、差異が含まれる操作手順記録データ31及び検証用データ41を用いて実行されたことによる動作結果を基に、評価対象ソフトウェアSW1の動作を検証。評価することになる。
これでは、例えば、評価対象機で記録された操作手順記録データ31を用いて、エミュレータで動作テストを実行した場合に、得られる動作結果が、エミュレータが保持する検証用データ41で想定する動作結果と異なる可能性があり、評価対象機やエミュレータそれぞれのテスト環境において記録した操作手順記録データ31を、他方のテスト環境で使用することができない。また、使用した場合には、検証・評価の精度が維持できず、テスト品質が低下する可能性がある。これは検証用データ41においても同様である。
そこで、本実施形態に係るソフトウェア動作テスト機能では、このようなテスト環境の違いに起因する動作テスト実行時の評価対象ソフトウェアから出力されるイベントの差異を、評価対象ソフトウェアの動作を検証・評価する前に補正するイベントデータ補正機能を有する構成としている。
以下に、上記イベントデータ補正機能について詳しく説明する。
《機能構成》
図8は、本発明の第1の実施形態に係るイベントデータ補正機能の構成例を示す図である。図8には、画像処理装置100に搭載されたソフトウェア動作テスト機能が有する検証・評価機能の構成例が示されている。
本実施形態では、上記検証・評価機能において評価対象ソフトウェアSW1から取得した出力イベントのデータを補正する機能構成を、イベントデータ補正機能の一例として説明するが、例えば、イベント記録機能において、イベント記録・再生部22から受け取った入出力イベントを記録するとき(操作手順記録データ31及び検証用データ41を生成・保存するとき)に補正を行う機能構成であっても良い。
図8に示されるように、検証・評価機能を実現する検証部23は、データ識別部51と、データ変換部52と、イベント系列生成部53と、比較部54とから構成される。
データ識別部51は、イベント記録・再生部22から受け取った出力イベントが、差異を補正するためにデータ補正を行う必要があるか否か(所定のデータ変換(データの置き換え)が必要か否か)を判定し、データ補正が必要な出力イベントと必要のない出力イベントとを識別する。
データ変換部52は、データ識別部51によりデータ補正が必要と識別された出力イベントを、所定のデータ変換規則に従ってデータ変換し、差異を補正する。
データ変換部52は、出力イベントに関する情報のうち、イベント識別情報やイベントの属性値などから、データ補正が必要な出力イベントか必要のない出力イベントかを判断する。データ変換部52において、どの出力イベントを補正対象とするか、またどの属性値を補正対象とするかについては、前述した「テスト環境の違い(評価対象機とエミュレータとの違い)に起因するイベントデータの差異」の特性から予め決定しておく。
これにより、データ変換部52は、決定しておいたデータ補正判定条件を基に、データ補正が必要か否かを判断する。
また、このようにしてデータ補正が必要と判断された出力イベントには、差異の特性から、どのような補正を行うかを決定する。差異の種類には、前述したように、「異なるデータ型」、「異なるデータ構造」、「異なるデータ値」、及び「異なる座標系や文字コード」などがある。そこで、データ変換部52では、これらの差異をデータ変換することで補正する。
データ変換には、上記差異の特性から一意に変換規則を決定可能なデータ構造をもつ変換テーブルデータ61や、入力データに対して変換データを出力する変換関数などを用いる。例えば、データ変換部52は、データ補正が必要な出力イベントに関する情報を基に、上記変換テーブルデータ61を参照し、該当する変換規則に従ってデータを置き換える。また、データ補正が必要な出力イベントを変換関数に入力し、変換後の出力イベントのデータを得る。
なお、上記変換関数は、データ変換部52が保持する構成であっても良いが、上記変換テーブルデータ61は、データ変換部52が保持する構成であっても良いし、データ変換部52の機能を実現するモジュールとは別に、ハードディスク110などの所定の記憶領域にデータファイルとして格納され、必要に応じて、データ変換部52がアクセス可能な構成であっても良い。
このようにして、データ変換部52は、テスト環境に起因するイベントデータの差異を補正する。
続いて、イベント系列生成部53は、データ識別部51によりデータ補正が必要ないと識別された出力イベントと、データ変換部52により差異が補正された出力イベントとを合成し、1つのイベント系列を生成する。ここで言う「イベント系列」とは、前述したイベント記録・再生部22により記録される一連の入出力イベント群であり、さらに、このイベント系列は、イベント・キャプチャ部21が取得した時系列順に、入出力イベントが記録されるデータ構造を示している。
よって、イベント系列生成部53は、データ補正後の出力イベントと、データ補正が必要でないと判断された出力イベントとを、イベント・キャプチャ部21が取得した時系列順に整列し、1つのイベント系列を生成する。
比較部54は、イベント系列生成部53により生成された補正後のイベント系列からデータ順に従って抽出した出力イベントである動作結果イベントと、ハードディスク110に保存されている検証用データ41からデータ順に従って抽出した出力イベントである動作結果イベントとを比較し、一致していれば、評価対象ソフトウェアSW1が、入力イベントである操作イベントの受信に従って正しく動作していると判定する。一方、異なっていれば、正しく動作していないと判定する。
以下に、上記各機能部によるイベントデータ補正の動作について説明する。
《処理手順》
図9は、本発明の第1の実施形態に係るイベントデータを補正した後に検証・評価を行う検証・評価機能の処理手順を示すフローチャートである。
図9に示すように、検証・評価機能は、検証部23のデータ識別部51が、イベント記録・再生部22から受け付けた出力イベントに対して、テスト環境に起因する差異を補正する必要があるデータか否かを識別し(ステップS401)、データ補正が必要であると識別された出力イベントAをデータ変換部52へ送信する(ステップS402)。また、データ補正が必要ないと識別された出力イベントBをイベント系列生成部53へ送信する(ステップS403)。
データ変換部52は、保持している変換テーブルデータ61(変換関数を含む)を参照し、受け取った出力イベントAに対応する変換規則に従って(又は変換関数を用いて)、データを置き換える(又は変換関数を算出する)などしてイベントデータを補正(A→A')し(ステップS404)、補正後の出力イベントA'をイベント系列生成部53へ送信する(ステップS405)。
イベント系列生成部53は、ステップS405において送信された補正後の出力イベントA'やステップS403において送信されたデータ補正が必要ない出力イベントBなどの複数の出力イベントを、イベント・キャプチャ部21が取得した時系列順に整列し、補正後の出力イベントA'を含むイベント系列(A'+B)を生成し(ステップS406)、補正後のイベント系列(A'+B)を比較部54へ送信する(ステップS407)。
その結果、比較部54は、ハードディスク110に保存されている検証用データ41を取得し(ステップS408)、受け取った補正後のイベント系列(A'+B)からデータ順に従って抽出した動作結果イベントと、検証用データ41からデータ順に従って抽出した動作結果イベントとを比較し、一致していれば、評価対象ソフトウェアSW1が、操作イベントの受信に従って正しく動作していると判定する。一方、異なっていれば、正しく動作していないと判定する。すなわち、評価対象ソフトウェアSW1の動作を検証・評価する(ステップS509)。
<まとめ>
以上のように、本発明の第1の実施形態によれば、本実施形態に係る画像処理装置100は、評価対象機が搭載するハード・ソフトウェアにより各種機能を提供する評価対象機能提供部81と、評価対象機提供部81により提供されたシステム上で動作する評価対象ソフトウェアSW1に対して動作テストを行う動作テスト部82とを有する。
このような構成において、動作テスト部82が、評価対象機能提供部81で評価対象ソフトウェアSW1の送受信イベントを制御するソフトウェア部品21を介して、操作手順の記録及び再生(実行)を行い、評価対象ソフトウェアSW1の動作を検証・評価する。すなわち、上記ソフトウェア部品21と動作テスト部82とが協調動作し、評価対象ソフトウェアSW1の動作を検証・評価する。
さらに、本実施形態では、評価対象ソフトウェアSW1の動作を検証・評価する前に、異なるテスト環境の各種テストデータを用いてテスト動作を行ったときに、評価対象ソフトウェアSW1から出力されるイベントデータに含まれるテスト環境(例えば「評価対象機」と「エミュレータ」など)の違いに起因する差異を補正する。
これによって、画像処理装置100では、評価対象機に搭載される場合と、エミュレータに搭載される場合とで、機能を実現するソフトウェア構成を同一の構成とすることで、評価対象機とエミュレータの両方の環境に容易に対応できる(容易に導入できる)。また、評価対象機とエミュレータの両方の環境で、同一の操作手順記録データ31と検証用データ41とを用いて、評価対象ソフトウェアSW1の動作を検証・評価することができる(テストデータを共通化することができる)。
さらに、異なるテスト環境に起因するイベントデータの差異を補正することで、異なるテスト環境においても、同一の操作手順記録データ31と検証用データ41とを用いて、精度良く動作テストを実行できる(テスト品質を維持することができる)。
よって、画像処理装置100は、異なるテスト環境においても、テスト品質を維持し、テスト工程の作業効率を向上させることができる。
[第2の実施形態]
評価対象機やエミュレータと言ったテスト環境が備える各種ハードウェア(評価対象ソフトウェアから見た外部環境)は、それぞれの環境において異なっている。
このような場合、これらのハードウェアに起因してイベントの発生タイミング(発行された時間)や発生順序が一定でない場合が考えられる。すなわち、ハードウェアに起因してイベントにばらつきが生じる。
一方で、イベント記録機能においては、単に、テスト工程の操作手順に従って、外部環境から評価対象ソフトウェアへの入力イベントを記録していることから、1つのイベント系列しか記録されない。そのため、このばらつきによって、動作テストにおいて正しく評価されなかった評価対象ソフトウェアがでてきてしまう。なぜなら、ばらつきのパターンに対応する複数のイベント系列を記録していないため、十分に動作テストが行えていないためである。
これでは、ソフトウェアの品質に悪影響を及ぼしてしまうこととなる。
そこで、本実施形態では、評価対象ソフトウェアと該当ハードウェアとの間のやり取りを指示する操作を複数回繰り返して行い、イベント記録機能により複数のイベント系列を記録することで、上記問題点を解決するものである。つまり、本実施形態では、ハードウェアに起因する入力イベントのばらつきを、複数のイベント系列として収集可能な(ばらつきのパターンに対応する操作手順を記録可能な)構成となっている。
以下に、上記本実施形態に係る「各種ハードウェアに起因する入力イベントのばらつきに対応した操作手順を記録可能なイベント記録機能」について説明するが、本実施形態と第1の実施形態との違いは、上記イベント記録機能のみであることから、それ以外の技術的事項については、第1の実施形態と同一の図面と参照符号を用いて、その説明を省略する。
<ソフトウェア動作テスト機能>
第1の実施形態において説明したように、ソフトウェア動作テスト機能は、主に、評価対象機能提供部81と動作テスト部82とから構成され、以下に説明するイベント記録機能は、上記動作テスト部82が有するイベント記録・再生部22により実現される。
《処理手順》
図10は、本発明の第2の実施形態に係る各種ハードウェアHWに起因する入力イベントのばらつきに対応するイベント記録機能の処理手順例を示すシーケンス図である。
図10に示すように、イベント記録機能は、イベント記録・再生部22が、ハードディスク110に保持されている検証用データ41を取得する(ステップS501)。
イベント記録・再生部22は、取得した検証用データ41(過去の記録)から各種ハードウェアHWとの間でやり取りされる出力イベントにおいて、出力イベントの発生タイミングや発生順序にばらつき(記録された出力イベントに関する情報に規則性がない状態)が生じている評価対象ソフトウェアSW1のデータ(出力イベントに関する情報)を抽出し(ステップS502)、抽出したデータ、すなわち出力イベントに関する情報を、記録されたデータ順に従ってイベント・キャプチャ部21へ送信する(ステップS503n)。
イベント・キャプチャ部21は、受け取った出力イベントに関する情報を基に、該当する動作結果イベント(記録されたイベント数:N)を、評価対象ソフトウェアSW1からの出力イベントとして、対象ハードウェアHWへ送信する(ステップS504n)。
対象ハードウェアHWは、受け取った出力イベントに従って所定の処理を行い(ステップS505)、イベント・キャプチャ部21が、対象ハードウェアHWから評価対象ソフトウェア21への入力イベントとして送信された操作イベントを取得する(ステップS506)。
イベント・キャプチャ部21は、取得した操作イベントを、イベント記録・再生部22へ送信し(ステップS507)、イベント記録・再生部22が、受け取った入力イベントを基に、操作手順記録データ31を生成し、ハードディスク110の所定の記憶領域にデータファイルとして格納する(ステップS508)。
このようにしてイベント記録機能は、上記ステップS501〜S508の処理手順を、複数回(例えば「ばらつきのパターンとしてデータが抽出された評価対象ソフトウェアの数分」など)繰り返して行うことで、ハードウェアHWに起因するイベントのばらつきのパターンに対応した操作手順記録データ31を生成し保存する。
<まとめ>
以上のように、本発明の第2の実施形態によれば、本実施形態に係る画像処理装置100は、第1の実施形態において説明を行った各機能部に構成されており、動作テスト部82が、評価対象機能提供部81で評価対象ソフトウェアSW1の送受信イベントを制御するソフトウェア部品21を介して、操作手順の記録及び再生(実行)を行い、評価対象ソフトウェアSW1の動作を検証・評価する。
さらに、本実施形態では、評価対象ソフトウェアSW1と各種ハードウェアHWとの間でやり取りされるイベントを記録するイベント記録機能において、過去に記録した検証用データ41に対して、各種ハードウェアHWとの間でやり取りされる出力イベントの発生タイミングや発生順序にばらつき(記録された出力イベントに関する情報に規則性がない状態)が生じている評価対象ソフトウェアSW1を解析する。続いて、上記ソフトウェア部品21を介して、該当評価対象ソフトウェアSW1から該当ハードウェアHWへの疑似的な出力イベントを、複数回繰り返して発行する。その結果、該当ハードウェアHWに起因する入力イベントのばらつきのパターンに対応した操作手順記録データ31を生成し保存する。
これによって、画像処理装置100では、各種ハードウェアHWに起因して評価対象ソフトウェアSW1への入力イベントにばらつきが生じる場合であっても、ばらつきのパターンに対応する複数のイベント系列を記録することにより、これらのテストパターンを網羅した動作テストを実施することができ、安定したテスト品質を維持することができる。
よって、画像処理装置100は、第1の実施形態と同様の効果を奏するとともに、安定したテスト品質を維持することにより、ソフトウェアの品質も維持することができる。
[第3の実施形態]
操作手順の記録は、テスターが操作パネルを介して行った操作に対応する入力イベントを、操作パネルと評価対象ソフトウェアとの間に配置されるイベント・キャプチャ部が取得することに行われる。よって、テスターの操作タイミングに従って操作手順が記録されることになる。
このような場合、テスターごとに操作タイミングが異なることが考えられる。すなわち、テスターの操作に起因してイベントにばらつきが生じる。
一方で、イベント記録機能においては、第2の実施形態において説明を行ったように、単に、テスト工程の操作手順に従って、外部環境から評価対象ソフトウェアへの入力イベントを記録していることから、1つのイベント系列しか記録されないため、動作テストにおいて正しく評価されなかった評価対象ソフトウェアがでてきてしまう。
そこで、本実施形態では、各種ハードウェアから評価対象ソフトウェアへの入力イベントのイベント発生タイミング(発行された時間)と発生順序とを入れ替えた複数個の操作パターンを生成することで、上記問題点を解決するものである。つまり、本実施形態では、テスターの操作に起因する入力イベントのばらつきを、擬似的に再現する複数のイベント系列を記録可能な(想定されるばらつきの操作パターンに対応する操作手順を記録可能な)構成となっている。
以下に、上記本実施形態に係る「テスターの操作に起因する入力イベントのばらつきに対応した操作手順を記録可能なイベント記録機能」について説明するが、本実施形態と第1の実施形態との違いは、上記イベント記録機能のみであることから、それ以外の技術的事項については、第1の実施形態と同一の図面と参照符号を用いて、その説明を省略する。
<ソフトウェア動作テスト機能>
第1の実施形態において説明したように、ソフトウェア動作テスト機能は、主に、評価対象機能提供部81と動作テスト部82とから構成され、以下に説明するイベント記録機能は、上記動作テスト部82が有するイベント記録・再生部22により実現される。
《機能構成》
図11は、本発明の第3の実施形態に係るテスターUの操作に起因する入力イベントのばらつきに対応可能なイベント記録機能の構成例を示す図である。図11には、画像処理装置100に搭載されたソフトウェア動作テスト機能が有するイベント記録機能の構成例が示されている。
図11に示されるように、イベント記録機能を実現するイベント記録・生成部22は、操作イベント識別部71と、操作パターン生成部72と、操作手順合成部73とから構成される。
操作イベント識別部71は、イベント記録・再生部22から受け取った入力イベントが、予め決めておいた特定のハードウェアHWからの入力イベントか否か(テスターUの操作により発生した操作イベントか否か)を判定し、複数の操作パターンを生成する必要がある入力イベントと必要のない入力イベントとを識別する。
操作パターン生成部72は、操作イベント識別部71により複数の操作パターンを生成する必要があると識別された入力イベントを、所定のデータ生成規則に従って複数のイベントデータを生成する。上記所定のデータ生成規則は、例えば、イベント発生タイミングの変更(発生させる時間の変更)や、イベントの発生順序の入れ替えなどを制御する取り決めであり、予め決定しておく。
これによって、操作パターン生成部72は、入力イベントの発生タイミングと発生順序とを変更した複数のパターンデータ(複数の入力イベント群)を生成する(操作を組み合わせた複数の入力イベントデータを生成する)。
操作手順合成部73は、操作イベント識別部71により複数の操作パターンを生成する必要がないと識別された入力イベントと、操作パターン生成部72により生成された各パターンデータとをそれぞれ合成し、操作パターン数分の操作手順記録データ31を生成する。
以下に、上記各機能部によるイベント記録の動作について説明する。
《処理手順》
図12は、本発明の第3の実施形態に係る操作者に起因する入力イベントのばらつきに対応するイベント記録機能の処理手順を示すフローチャートである。
イベント記録機能は、イベント記録・再生部22の操作イベント識別部71が、各種ハードウェアHWから評価対象ソフトウェアSW1への入力イベントについて、複数の操作パターンを生成する必要があるイベントかを識別し(ステップS601)、複数の操作パターンの生成が必要であると識別された入力イベントAを操作パターン生成部72へ送信する(ステップS602)。また、複数の操作パターンを生成する必要がないと識別された入力イベントBを操作手順合成部73へ送信する(ステップS603)。
操作パターン生成部72は、予め決定したおいた所定の生成規則に従って、受け取った入力イベントAの発生タイミングと発生順序とを変更した複数のパターンデータ(複数の入力イベントA〜A)を生成し(ステップS604)、生成後の複数のパターンデータ(A〜A)を操作手順合成部73へ送信する(ステップS605)。
操作手順合成部73は、ステップS605において送信された生成後の各パターンデータ(A・・A)に対して、ステップS603において送信された複数の操作パターンを生成する必要がないと識別された入力イベントBを合成し、操作パターン数分の操作手順記録データ31n(A+B・・A+B)を生成する(ステップS606)。
その結果、操作手順合成部73は、生成後の複数の操作手順記録データ31nを、ハードディスク110の所定の記憶領域にデータファイルとして格納する(ステップS607)。
<まとめ>
以上のように、本発明の第3の実施形態によれば、本実施形態に係る画像処理装置100は、第1の実施形態において説明を行った各機能部に構成されており、動作テスト部82が、評価対象機能提供部81で評価対象ソフトウェアSW1の送受信イベントを制御するソフトウェア部品21を介して、操作手順の記録及び再生(実行)を行い、評価対象ソフトウェアSW1の動作を検証・評価する。
さらに、本実施形態では、評価対象ソフトウェアSW1と各種ハードウェアHWとの間でやり取りされるイベントを記録するイベント記録機能において、各種ハードウェアHWから評価対象ソフトウェアWS1への入力イベントの発生タイミングや発生順序にばらつき(記録された入力イベントに関する情報に規則性がない状態)が生じているハードウェアHWを基に、該当ハードウェアHWから評価対象ソフトウェアSW1への入力イベントのうち、ばらつきに対応するために複数の操作パターンを生成する必要がある入力イベントを識別し、識別した入力イベントに対して複数のパターンデータを生成する。その結果、該当ハードウェアHWに起因する入力イベントのばらつきの操作パターンに対応した複数の操作手順記録データ31nを生成し保存する。
これによって、画像処理装置100では、テスターUの操作に起因して評価対象ソフトウェアSW1への入力イベントにばらつきが生じる場合であっても、ばらつきの操作パターンに対応する複数のイベント系列を記録することにより、これらの操作パターンを網羅した動作テストを実施することができ、安定したテスト品質を維持することができる。
よって、画像処理装置100は、第1の実施形態と同様の効果を奏するとともに、安定したテスト品質を維持することにより、ソフトウェアの品質も維持することができる。
<機能構成の変形例>
上記各実施形態では、主に評価対象機である画像処理装置100において動作するソフトウェア動作テスト機能について説明を行った。
ここからは、エミュレータや、画像処理装置100とテスト実行機との組み合わせなど、ソフトウェア動作テスト機能を他の形態に実装した場合について説明する。
《エミュレータ》
図13は、本発明の各実施形態に係るソフトウェア動作テスト機能構成の変形例(その1)を示す図である。図13には、情報処理装置であるテスト実行機200をエミュレータとして、ソフトウェア動作テスト機能を実装した場合の機能構成例を示している。
まず、機能構成を説明する前に「エミュレータ」について簡単に触れておく。
エミュレータ(Emulator)とは、機械の模倣装置、あるいは模倣ソフトウェアのことである。ある機械部品やソフトウェアを動作させるのに、オリジナルのシステムを用意するのが難しい場合に、オリジナルと同じ動作を行う簡便なシステムを用意することがある。この装置をエミュレータと言う。これにより、エミュレータ上で、動作させたいソフトウェアや機械部品をオリジナルと同じように機能させることができる。
本変形例では、模倣対象を評価対象気である画像処理装置100とし、画像処理装置100と同じ動作を行うシステムをテスト実行機200で動作させる。つまり、テスト実行機200がエミュレータとなる。
よって、テスト実行機200では、画像処理装置100が搭載するハード・ソフトウェアによる各種機能が擬似的に再現された(エミュレートされた)システム83(以下、「評価対象機再現部」と言う。)上で動作する評価対象ソフトウェアSW1に対して動作テストを行う。
このように、本変形例では、主に、評価対象機再現部83により再現された環境で動作する評価対象ソフトウェアSW1に対して検証・評価を行う動作テスト部82とから構成される。
(評価対象機再現部)
評価対象機再現部83は、評価対象ソフトウェアSW1と、評価対象ソフトウェアSW1と連携して機能提供を実現する連携ソフトウェアSW3と、評価対象機が備える各種ハードウェア資源(各種デバイス)をエミュレートするハードウェアエミュレーションツールHETとを有し、評価対象ソフトウェアSW1と、連携ソフトウェアSW3又はハードウェアエミュレーションツールHETの少なくとも1つとの間には、相互間で送受信される各種イベント(例えば「動作指示」など)の通信経路となるイベント・キャプチャ部21が配置される構成となっている。
上記ハードウェアエミュレーションツールHETは、評価対象ソフトウェアSW1が実現する機能により使用される各種ハードウェア資源をエミュレートするハードウェアエミュレータHEと、各種ハードウェア資源のデバイスドライバ機能(ハードウェアとソフトウェアとのインタフェース機能)をエミュレートするエミュレーションドライバEDとから構成され、評価対象機に依存するハードウェア資源の提供機能を擬似的に再現している。
また、上記イベント・キャプチャ部21は、「記録」や「再生」などの動作テスト実行時に、イベント記録・再生部22との連携処理により、イベントの取得や発行と言ったイベント制御が可能となっている。この制御の詳細については、画像処理装置100が有するソフトウェア動作テスト機能において説明を行ったイベント記録・再生部22が行う制御動作と同様であるため、ここでの説明を省略する。
このような評価対象機再現部83により、評価対象ソフトウェアSW1は、テスト実行機200において、画像処理装置100に搭載されたときと同じ動作を行うことが可能となる。
例えば、「テスターUが、画像処理装置100の操作パネル11を介して、テスト工程の作業手順に従った操作を行い、画像処理装置100に搭載されるアプリケーションAPを動作させる」場合、テスト実行機200では、上記評価対象機再現部83のハードウェアエミュレーションツールHETにより、テスト実行機200が備える入力装置(例えば「キーバード」や「マウス」など)を介したテスターUからの動作指示を受け付け、受け付けた動作指示を、イベント・キャプチャ部21を介して、評価対象ソフトウェアSW1に送り、評価対象ソフトウェアSW1が、動作指示に従って処理を実行することで再現することができる。
これにより、テスト実行機200においても、動作テスト部82の構成をそのまま用いることが可能となり、上記各実施形態において説明を行った画像処理装置100の機能構成を同一の構成によりソフトウェア動作テストを行うことができる。また、データ実行機200と画像処理装置100との両方のテスト環境において、同一の操作手順記録データ31及び検証用データ41とが共通して使用できることは言うまでもない。
《評価対象機とテスト実行機》
図14は、本発明の各実施形態に係るソフトウェア動作テスト機能構成の変形例(その2)を示す図である。図14には、評価対象機である画像処理装置100とテスト実行機200とに、ソフトウェア動作テスト機能を実装した場合の機能構成例が示されている。
テスト実行機200は、情報処理装置であり、動作テスト部82のみで構成される。また、上記画像処理装置100には、評価対象ソフトウェアSW1と、連携ソフトウェアSW3、各種ハードウェアHW、及び各種デバイスドライバSW2との間に、相互間で送受信される各種イベントの通信経路となるイベント・キャプチャ部21を配置する構成となっている。
このような構成から、画像処理装置100とテスト実行機200とを、所定のデータ伝送路で接続することにより、画像処理装置100のイベント・キャプチャ部21と、テスト実行機200のイベント記録・再生部22との協調動作が可能となる。
ここまで、上記各実施形態に基づき本発明の説明を行ってきたが、上記各実施形態において、図を用いて説明を行った各処理手順は、処理手順が実行される動作環境(プラットフォーム)にあったプログラミング言語でコード化したプログラムとしてコンピュータで実行される。これにより前述したソフトウェア動作テスト機能を実現することができる。よって、上記プログラムは、コンピュータが読み取り可能な記録媒体104に格納することができる。
よって、上記プログラムは、フロッピー(登録商標)ディスク、CD(Compact Disc)、DVD(Digital Versatile Disk)などの記録媒体104に記憶させることによって、これらの記録媒体104を読み取り可能な記録媒体I/F12のドライブ装置103を介して、画像処理装置100やテスト実行機200にインストールすることができる。また、画像処理装置100やテスト実行機200には、ネットワークなどのデータ伝送路に接続可能なデータ通信I/F14を備えていることから、インターネットなどの電気通信回線を用いて上記プログラムを装置内部にダウンロードし、インストールすることもできる。
また、上記実施形態において、イベント記録・再生部22が、操作手順記録データ31や検証用データ41を記録するときに、同機能部が動作する装置が備えた記憶装置に格納する例を挙げたが、例えば、記憶媒体I/F12を介して、着脱可能な記録媒体104に格納し記録しても良い。
また、上記実施形態において、イベント記録・再生部22によって、イベント記録機能とイベント再生機能とを1つのソフトウェア部品が実現する構成例を挙げたが、イベント記録機能はイベント記録部、また、イベント再生機能はイベント再生部と言ったように、機能ごとに別のソフトウェア部品による構成としても良い。
最後に、上記各実施形態に挙げた形状や構成に、その他の要素との組み合わせなど、ここで示した要件に、本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
本発明の第1の実施形態に係る画像処理装置のハードウェア構成例を示す図である。 本発明の第1の実施形態に係るテスターの操作手順を記録するときの動作例を示す図である。 本発明の第1の実施形態に係る記録した操作手順を再生するときの動作例を示す図である。 本発明の第1の実施形態に係る評価対象ソフトウェアの動作を検証・評価するときの動作例を示す図である。 本発明の第1の実施形態に係るソフトウェア動作テスト機能の構成例を示す図である。 本発明の第1の実施形態に係るイベント記録機能の処理手順例を示すシーケンス図である。 本発明の第1の実施形態に係るイベント再生及び検証・評価機能の処理手順例を示すシーケンス図である。 本発明の第1の実施形態に係るイベントデータ補正機能の構成例を示す図である。 本発明の第1の実施形態に係るイベントデータを補正した後に検証・評価を行う検証・評価機能の処理手順を示すフローチャートである。 本発明の第2の実施形態に係る各種ハードウェアに起因する入力イベントのばらつきに対応するイベント記録機能の処理手順例を示すシーケンス図である。 本発明の第3の実施形態に係るテスターの操作に起因する入力イベントのばらつきに対応可能なイベント記録機能の構成例を示す図である。 本発明の第3の実施形態に係る操作者に起因する入力イベントのばらつきに対応するイベント記録機能の処理手順を示すフローチャートである。 本発明の各実施形態に係るソフトウェア動作テスト機能構成の変形例(その1)を示す図である。 本発明の各実施形態に係るソフトウェア動作テスト機能構成の変形例(その2)を示す図である。
符号の説明
11 操作パネル
12 記録媒体I/F
13 コントローラ
14 データ通信I/F
15 スキャナ
16 プロッタ
21 イベント・キャプチャ部
22 イベント記録・再生部
23 検証部
31 操作手順記録データ
41 検証用データ
51 データ識別部
52 データ変換部
53 イベント系列生成部
54 比較部
61 変換テーブルデータ
71 操作イベント識別部
72 操作パターン生成部
73 操作手順合成部
81 評価対象機能提供部
82 動作テスト部
83 評価対象機再現部
100 画像処理装置
101 入力装置
102 表示装置
103 ドライブ装置
104 記録媒体
105 ROM
106 RAM
107 CPU
108 NV−RAM
109 インタフェース装置
110 ハードディスク(画像処理装置側)
111 画像読取装置(スキャナ装置)
112 印刷装置(プロッタ装置)
200 情報処理装置(テスト実行機)
AP アプリケーション
ED エミュレーションドライバ
HD ハードディスク(テスト実行機側)
HE ハードウェアエミュレータ
HET ハードウェアエミュレーションツール
HW ハードウェア
IMG 画面データ(1:正解画面,2:検証用画面)
SW ソフトウェア(1:評価対象,2:ドライバ,3:連携)
T テストツール
U テスター
W 操作画面(UI)

Claims (12)

  1. 評価対象機である当該画像処理装置が搭載するソフトウェア及び/又はハードウェアにより各種機能を提供する評価対象機能提供手段を有する画像処理装置であって、
    前記評価対象機能提供手段に対して、評価対象ソフトウェアと、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアとの間で送受信されるイベントを制御するイベント制御手段と、
    前記評価対象機能提供手段の動作環境に応じて、前記イベント制御手段によるイベントの取得及び/又は発行を制御し、前記評価対象ソフトウェアの動作をテストする動作テスト手段とを有し、
    前記動作テスト手段は、
    前記イベントの識別情報又は属性情報に基づき、前記イベント毎に該イベントのデータを補正するか否かを判定するデータ補正判定手段と、
    前記データ補正判定手段により判定された前記イベントのデータを、該イベント毎に所定の変換規則に従って補正するデータ補正手段とを有することを特徴とする画像処理装置。
  2. 前記動作テスト手段は、
    前記イベント制御手段を制御し取得した前記イベントを記録する記録手段と、
    前記記録手段により記録されたイベントに基づき、前記評価対象ソフトウェアの動作テストを実行する実行手段と、
    前記実行手段により実行された動作テストの動作結果に基づき、前記評価対象ソフトウェアの動作を検証・評価する検証・評価手段とを有することを特徴とする請求項1に記載の画像処理装置。
  3. 前記記録手段は、
    前記イベント制御手段を制御し取得した、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアから前記評価対象ソフトウェアへ送信された入力イベントを、前記動作テストを行うときの操作手順データとして記録するとともに、
    前記入力イベントに応じて前記評価対象ソフトウェアから前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアへ送信された出力イベントを、前記評価対象ソフトウェアの動作を検証・評価するときの検証データとして記録することを特徴とする請求項2記載の画像処理装置。
  4. 前記実行手段が、
    前記記録手段により記録された検証データの記録データ順に従って、前記検証データ内の各出力イベントに関する情報に基づき、前記イベント制御手段により前記出力イベントの発行を制御し、前記ハードウェアへ前記出力イベントを発行する出力イベント発行手段を有し、
    前記記録手段が、
    前記出力イベント発行手段により発行された出力イベントに応じて、前記ハードウェアから前記評価対象ソフトウェアへ送信された入力イベントを、前記操作手順データとして繰り返し記録することを特徴とする請求項3記載の画像処理装置。
  5. 前記記録手段は、
    前記イベント制御手段を制御し取得した、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアから前記評価対象ソフトウェアへ送信された入力イベントに基づき、所定の生成規則に従って、複数パターンの操作手順データを生成する操作手順パターンデータ生成手段を有し、
    前記操作手順パターンデータ生成手段により生成された複数パターンの操作手順データを記録することを特徴とする請求項2ないし4のいずれか一項に記載の画像処理装置。
  6. 前記記録手段は、
    前記イベント制御手段を制御し取得した前記イベントを、当該画像処理装置が備える記憶装置及び/又は着脱可能な記憶媒体に格納し記録することを特徴とする請求項2ないし5のいずれか一項に記載の画像処理装置。
  7. 評価対象機が搭載するソフトウェア及び/又はハードウェアにより提供される各種機能を擬似的に再現する評価対象機再現手段を有する情報処理装置であって、
    前記評価対象機再現手段に対して、評価対象ソフトウェアと、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアとの間で送受信されるイベントを制御するイベント制御手段と、
    前記評価対象機再現手段の動作環境に応じて、前記イベント制御手段によるイベントの取得及び/又は発行を制御し、前記評価対象ソフトウェアの動作をテストする動作テスト手段とを有し、
    前記動作テスト手段は、
    前記イベントの識別情報又は属性情報に基づき、前記イベント毎に該イベントのデータを補正するか否かを判定するデータ補正判定手段と、
    前記データ補正判定手段により判定された前記イベントのデータを、該イベント毎に所定の変換規則に従って補正するデータ補正手段とを有することを特徴とする情報処理装置。
  8. 前記動作テスト手段は、
    前記イベント制御手段を制御し取得した前記イベントを記録する記録手段と、
    前記記録手段により記録されたイベントに基づき、前記評価対象ソフトウェアの動作テストを実行する実行手段と、
    前記実行手段により実行された動作テストの動作結果に基づき、前記評価対象ソフトウェアの動作を検証・評価する検証・評価手段とを有することを特徴とする請求項7に記載の情報処理装置。
  9. 前記記録手段は、
    前記イベント制御手段を制御し取得した、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアから前記評価対象ソフトウェアへ送信された入力イベントを、前記動作テストを行うときの操作手順データとして記録するとともに、
    前記入力イベントに応じて前記評価対象ソフトウェアから前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアへ送信された出力イベントを、前記評価対象ソフトウェアの動作を検証・評価するときの検証データとして記録することを特徴とする請求項8に記載の情報処理装置。
  10. 評価対象機が搭載するソフトウェア及び/又はハードウェアにより提供される各種機能を擬似的に再現する評価対象機再現手段を有する情報処理装置、又は、評価対象機である当該画像処理装置が搭載するソフトウェア及び/又はハードウェアにより各種機能を提供する評価対象機能提供手段を有する画像処理装置におけるソフトウェア動作テスト方法であって、
    前記評価対象機再現手段又は前記評価対象機能提供手段に対して、評価対象ソフトウェアと、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアとの間で送受信されるイベントを制御するイベント制御手順と、
    前記評価対象機再現手段又は前記評価対象機能提供手段の動作環境に応じて、前記イベント制御手順によるイベントの取得及び/又は発行を制御し、前記評価対象ソフトウェアの動作をテストする動作テスト手順とを有し、
    前記動作テスト手順は、
    前記イベントの識別情報又は属性情報に基づき、前記イベント毎に該イベントのデータを補正するか否かを判定するデータ補正判定手順と、
    前記データ補正判定手順により判定された前記イベントのデータを、該イベント毎に所定の変換規則に従って補正するデータ補正手順とを有することを特徴とするソフトウェア動作テスト方法。
  11. 評価対象機が搭載するソフトウェア及び/又はハードウェアにより提供される各種機能を擬似的に再現する評価対象機再現手段を有する情報処理装置、又は、評価対象機である当該画像処理装置が搭載するソフトウェア及び/又はハードウェアにより各種機能を提供する評価対象機能提供手段を有する画像処理装置におけるソフトウェア動作テストプログラムであって、
    コンピュータを、
    前記評価対象機再現手段又は前記評価対象機能提供手段に対して、評価対象ソフトウェアと、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアとの間で送受信されるイベントを制御するイベント制御手段と、
    前記評価対象機再現手段又は前記評価対象機能提供手段に応じて、前記イベント制御手段によりイベントの取得及び/又は発行を制御し、前記評価対象ソフトウェアの動作をテストする動作テスト手段と、
    前記イベントの識別情報又は属性情報に基づき、前記イベント毎に該イベントのデータを補正するか否かを判定するデータ補正判定手段と、
    前記データ補正判定手により判定された前記イベントのデータを、該イベント毎に所定の変換規則に従って補正するデータ補正手段として機能させるソフトウェア動作テストプログラム。
  12. 請求項11に記載のプログラムを記憶した、コンピュータが読み取り可能な記録媒体。
JP2008180756A 2008-07-10 2008-07-10 画像処理装置、情報処理装置、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体 Expired - Fee Related JP5320872B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008180756A JP5320872B2 (ja) 2008-07-10 2008-07-10 画像処理装置、情報処理装置、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008180756A JP5320872B2 (ja) 2008-07-10 2008-07-10 画像処理装置、情報処理装置、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体

Publications (2)

Publication Number Publication Date
JP2010020562A JP2010020562A (ja) 2010-01-28
JP5320872B2 true JP5320872B2 (ja) 2013-10-23

Family

ID=41705387

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008180756A Expired - Fee Related JP5320872B2 (ja) 2008-07-10 2008-07-10 画像処理装置、情報処理装置、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体

Country Status (1)

Country Link
JP (1) JP5320872B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5492593B2 (ja) * 2010-02-22 2014-05-14 株式会社日立システムズ Itシステムの変更作業時における操作逸脱防止支援システムおよび操作逸脱防止支援方法、ならびにそのためのプログラム
JP2012038162A (ja) * 2010-08-09 2012-02-23 Ricoh Co Ltd 自動テストツール・プログラム及び自動テスト方法
US10901810B2 (en) 2014-05-14 2021-01-26 Intel Corporation Event-based record and replay for advanced applications
JP7042026B2 (ja) * 2017-01-25 2022-03-25 株式会社東芝 稼働環境評価システム、制御方法、及びプログラム
JP6703971B2 (ja) * 2017-11-01 2020-06-03 みずほ情報総研株式会社 テスト支援システム、テスト支援方法及びテスト支援プログラム
JP2020166492A (ja) 2019-03-29 2020-10-08 コニカミノルタ株式会社 検査装置、検査方法及びコンピュータープログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04195436A (ja) * 1990-11-28 1992-07-15 Hitachi Ltd 計算機システム自動テスト方式
JPH0546435A (ja) * 1991-08-19 1993-02-26 Matsushita Electric Ind Co Ltd 自動テスト装置および自動テスト方法
JP2000112784A (ja) * 1998-09-30 2000-04-21 Hitachi Software Eng Co Ltd プログラムテスト支援装置及びプログラムテスト支援プログラムを記録した記録媒体
JP2003216310A (ja) * 2001-09-28 2003-07-31 Ricoh Co Ltd キー操作監視方法、描画情報取得方法、キー操作再生方法、これらの方法をコンピュータに実行させるプログラムおよび画像形成装置
JP2005049947A (ja) * 2003-07-29 2005-02-24 Ricoh Co Ltd 実機レスシミュレーション装置
JP2005352670A (ja) * 2004-06-09 2005-12-22 Denso Corp シミュレーション装置及び検査装置
JP2008077316A (ja) * 2006-09-20 2008-04-03 I L C:Kk 検証装置、検証プログラム、および検証方法
JP2008152332A (ja) * 2006-12-14 2008-07-03 Fuji Xerox Co Ltd 機器、制御装置及び制御ソフトウェア更新方法

Also Published As

Publication number Publication date
JP2010020562A (ja) 2010-01-28

Similar Documents

Publication Publication Date Title
JP5320872B2 (ja) 画像処理装置、情報処理装置、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体
KR100808614B1 (ko) 화상 형성 처리 시뮬레이션 장치 및 화상 형성 처리시뮬레이션 방법
US7640147B2 (en) Image forming device simulation apparatus and image forming device simulation method
JP5780115B2 (ja) エラー検知方法、情報処理回路及びエラー検知用プログラム
US8381035B2 (en) Information processing device for creating and analyzing log files
JP2012038162A (ja) 自動テストツール・プログラム及び自動テスト方法
JP2000242463A (ja) 印刷システム
JP4909772B2 (ja) シミュレーション装置
JP6641831B2 (ja) 画像処理装置、画像処理プログラム及び画像処理システム
JP5365242B2 (ja) 情報処理装置、ソフトウェア動作テストシステム、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体
JP5396759B2 (ja) 情報処理装置、画像処理装置、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体
KR100518829B1 (ko) 프린터 에러 처리 시스템 및 그 에러 처리방법
WO2006011308A1 (ja) シーケンサシミュレーション装置およびシーケンサシミュレーションプログラム
JP5052417B2 (ja) 画像形成装置、外部デバイス管理方法及びプログラム
JP5522304B2 (ja) 情報処理装置、ソフトウェア動作テストシステム、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体
JP2021064318A (ja) 画像形成装置、アプリケーションプログラム及びテスト方法
US20190387107A1 (en) Image processing device, self-diagnostic method and non-transitory recording medium
CN107544833A (zh) 图像处理装置、调试支援方法以及记录有调试支援程序的计算机可读取的记录介质
JP5627320B2 (ja) 動画保存装置及び動画保存システム
JP2008158957A (ja) 印刷装置、印刷方法、印刷プログラム、印刷制御装置、印刷制御方法、印刷制御プログラム、及び記録媒体
JP2010128559A (ja) 情報処理方法、そのプログラム及び情報処理装置
JP4917560B2 (ja) 画像形成装置およびその制御方法
JP2008282394A (ja) 選択的にレンダリングを制御するドキュメント処理システムおよび方法
JP3962597B2 (ja) プリンタエミュレート装置、プリンタエミュレート方法、記憶媒体およびプログラム
US20080288232A1 (en) Bridge program, bridge method, and simulator

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110324

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120912

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120925

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130205

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130401

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130618

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130701

R151 Written notification of patent or utility model registration

Ref document number: 5320872

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees