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

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

Info

Publication number
JP2010020561A
JP2010020561A JP2008180755A JP2008180755A JP2010020561A JP 2010020561 A JP2010020561 A JP 2010020561A JP 2008180755 A JP2008180755 A JP 2008180755A JP 2008180755 A JP2008180755 A JP 2008180755A JP 2010020561 A JP2010020561 A JP 2010020561A
Authority
JP
Japan
Prior art keywords
event
software
evaluation target
evaluation
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.)
Granted
Application number
JP2008180755A
Other languages
English (en)
Other versions
JP5396759B2 (ja
Inventor
Jun Ehata
潤 江畑
Kenji Niimura
健治 新村
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 JP2008180755A priority Critical patent/JP5396759B2/ja
Publication of JP2010020561A publication Critical patent/JP2010020561A/ja
Application granted granted Critical
Publication of JP5396759B2 publication Critical patent/JP5396759B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

【課題】評価対象機とエミュレータの両方の環境において、機器に搭載されるソフトウェアの動作を検証・評価することが可能な情報処理装置、画像処理装置、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体を提供する。
【解決手段】情報処理装置は、評価対象機が搭載するソフトウェアSW及び/又はハードウェアHWにより提供される各種機能を擬似的に再現する評価対象機再現手段11を有する装置であって、評価対象機再現手段11に対して、評価対象ソフトウェアSW1と、評価対象ソフトウェアSW1以外のソフトウェアSW及び/又はハードウェアHWとの間で送受信されるイベントを制御するイベント制御手段22と、イベント制御手段22によりイベントの取得及び/又は発行を制御し、評価対象ソフトウェアSW1の動作をテストする動作テスト手段12とを有する。
【選択図】図5

Description

本発明は、情報処理装置、画像処理装置、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体に係り、特に、機器が搭載するソフトウェア部品の動作を検証・評価する技術に関するものである。
情報通信技術の高度化に伴い、多機能な電子機器製品が市場に供給されるようになった。
このような機器の開発環境では、ソフトウェア開発が複雑となり、システム規模が増大する一方で、これらの製品サイクルは短く、1世代前の製品から新たな世代の製品を市場投入までの期間(製品リリース間隔)を短縮する傾向にある。
このようなことから、機器の製造元(メーカー)では、機器の品質を、製品として市場投入しても問題ないレベルまで、短期間に向上させなければならない。
しかし、多機能な機器の場合、動作するソフトウェア部品が数多く存在し、機器の動作を検証・評価するテスト工程における作業負荷もそれに伴って増大する。
特に、機器と利用者とのインタフェース機能を実現する操作受付・情報通知部のテスト工程では、手作業による動作検証や、目視確認による動作評価など、テストを行う担当者(以下、「テスター」と言う。)に依存する作業が多く、テスターへの負担が大きい。その結果、テスト工程の作業効率も悪い。
そのため、テスト工程において、テスト品質を維持しながら作業効率の向上を図る必要がある。
そこで、従来では、入力デバイスを介して人間が行った操作を記録し、かつ入力デバイスの操作を人間に代わって計算機で行うことを可能としたことにより、人間の操作を擬似的に自動実行することができる入力イベント記録/再生装置が提案されている(例えば「特許文献1」を参照)。
特開平07−234807号公報
しかしながら、特許文献1に開示される従来の入力イベント記録/再生装置は、外部機器からの入力イベントを記録する機能と、外部機器に対して仮想入力イベントを出力する機能で構成されており、手作業の操作を自動化することは可能であるが、この装置を用いて動作の検証・評価を行う場合には、評価対象(テスト対象)ソフトウェアが搭載された機器(以下、「評価対象機」と言う。)そのものが必要となる。
そのため、例えば、テスト工程の作業効率を向上させるために、複数のテスト項目を同時に行う場合には、用いる入力イベント記録/再生装置の台数分だけ評価対象機を用意しなければならないが、開発途中の評価対象機は絶対数少ないことから、作業効率が向上するほどの台数を用意することは困難である。
このように、従来の入力イベント記録/再生装置では、手作業を自動化することで、テスターの負担を軽減し、かつテスト品質を維持することができても、評価対象機を用いたテスト環境を前提としているため、必ずしも作業効率の向上に結びつくものではなかった。
また、機器の特性(例えば「形状」や「大きさ」など)によっては、物理的に評価対象機を用意できない場合もあり、さらには、最終的なハードウェア設計が完了する前にソフトウェアの動作を検証・評価したい場合や、小規模にカスタマイズされたソフトウェアの動作を検証・評価したい場合など、評価対象機のない状態でテストを行いたい場面も考えられる。
また、製造元としては、市場供給後の製品保守を行うための評価対象機を維持するコストを軽減したい。
このように、従来の入力イベント記録/再生装置では、前述した様々なケースに対応することができない。
また、前述した様々なケースに対応する場合には、評価対象機とエミュレータとの両方の環境で、異なる動作テスト機能の実装や、それぞれの仕様に合わせた異なるテストデータの管理など、テストを実施するための準備作業が煩雑となることが考えられる。
本発明では、上記従来技術の問題点を鑑み、評価対象機とエミュレータの両方の環境において、機器に搭載されるソフトウェアの動作を検証・評価することが可能な情報処理装置、画像処理装置、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体を提供することを目的とする。
上記目的を達成するため、本発明の情報処理装置は、評価対象機が搭載するソフトウェア及び/又はハードウェアにより提供される各種機能を擬似的に再現する評価対象機再現手段を有する情報処理装置であって、前記評価対象機再現手段に対して、評価対象ソフトウェアと、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアとの間で送受信されるイベントを制御するイベント制御手段と、前記イベント制御手段によりイベントの取得及び/又は発行を制御し、前記評価対象ソフトウェアの動作をテストする動作テスト手段とを有することを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、前記イベント制御手段が、前記評価対象機再現手段が有する、評価対象ソフトウェアと、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアとの間で送受信されるイベントの通信経路であるソフトウェア部品の動作を制御することを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、前記動作テスト手段が、前記イベント制御手段を制御し取得した前記イベントを記録する記録手段と、前記記録手段により記録されたイベントに基づき、前記評価対象ソフトウェアの動作テストを実行する実行手段と、前記実行手段により実行された動作テストの動作結果に基づき、前記評価対象ソフトウェアの動作を検証・評価する検証・評価手段とを有することを特徴とする。
このような構成によって、本発明の情報処理装置は、評価対象機が搭載するハード・ソフトウェアによる各種機能を擬似的に再現する評価対象機再現部と、評価対象機再現部上が再現したシステム上で動作する評価対象ソフトウェアに対して動作テストを行う動作テスト部とを有し、動作テスト部が、評価対象機再現部で評価対象ソフトウェアの送受信イベントを制御するソフトウェア部品を介して、操作手順の記録及び再生(実行)を行い、評価対象ソフトウェアの動作を検証・評価する。
また、上記目的を達成するため、本発明の情報処理装置は、前記記録手段が、前記イベント制御手段を制御し取得した、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアから前記評価対象ソフトウェアへ送信された入力イベントを、前記動作テストを行うときの操作手順データとして記録するとともに、前記入力イベントに応じて前記評価対象ソフトウェアから前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアへ送信された出力イベントを、前記評価対象ソフトウェアの動作を検証・評価するときの検証データとして記録することを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、前記実行手段が、前記記録手段により記録された操作手順データの記録データ順に従って、前記操作手順データ内の各入力イベントに関する情報に基づき、前記イベント制御手段により前記入力イベントの発行を制御し、前記評価対象ソフトウェアの動作テストを実行することを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、前記検証・評価手段が、前記実行手段により動作テストを実行したときに、前記イベント制御手段を制御し取得した前記出力イベントと、前記記録手段により記録された検証データから記録データ順に抽出した各出力イベントとを比較し、その比較結果に基づき、前記評価対象ソフトウェアの動作を検証・評価することを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、前記検証・評価手段が、検証・評価時に正常な出力イベントであると判断する出力イベントデータの許容範囲を示す評価基準の有無を判定する評価基準有無判定手段を有し、前記評価基準有無判定手段により、前記評価基準を有していると判定された場合に、前記評価基準に基づき、前記評価対象ソフトウェアの動作を検証・評価することを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、前記評価基準を、前記出力イベントに対応付けて設定する評価基準設定手段を有することを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、前記評価基準有無判定手段が、前記イベント制御手段を制御し取得した前記出力イベントの識別情報に基づき、前記出力イベントに対応付けて設定された評価基準の有無を判定することを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、前記記録手段が、前記イベント制御手段を制御し取得した前記イベントを、当該情報処理装置が備える記憶装置及び/又は着脱可能な記憶媒体に格納し記録することを特徴とする。
これによって、本発明の情報処理装置は、評価対象機とエミュレータの両方の環境において、機器に搭載されるソフトウェアの動作を検証・評価することができる。
また、上記目的を達成するため、本発明の画像処理装置は、評価対象機である当該画像処理装置が搭載するソフトウェア及び/又はハードウェアにより各種機能を提供する評価対象機能提供手段を有する画像処理装置であって、前記評価対象機能提供手段に対して、評価対象ソフトウェアと、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアとの間で送受信されるイベントを制御するイベント制御手段と、前記イベント制御手段によりイベントの取得及び/又は発行を制御し、前記評価対象ソフトウェアの動作をテストする動作テスト手段とを有することを特徴とする。
また、上記目的を達成するため、本発明の画像処理装置は、前記イベント制御手段が、前記評価対象機再現手段が有する、評価対象ソフトウェアと、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアとの間で送受信されるイベントの通信経路であるソフトウェア部品の動作を制御することを特徴とする。
また、上記目的を達成するため、本発明の画像処理装置は、前記動作テスト手段が、前記イベント制御手段を制御し取得した前記イベントを記録する記録手段と、前記記録手段により記録されたイベントに基づき、前記評価対象ソフトウェアの動作テストを実行する実行手段と、前記実行手段により実行された動作テストの動作結果に基づき、前記評価対象ソフトウェアの動作を検証・評価する検証・評価手段とを有することを特徴とする。
上記目的を達成するため、本発明のソフトウェア動作テスト方法は、評価対象機が搭載するソフトウェア及び/又はハードウェアにより提供される各種機能を擬似的に再現する評価対象機再現手段を有する情報処理装置、又は、評価対象機である当該画像処理装置が搭載するソフトウェア及び/又はハードウェアにより各種機能を提供する評価対象機能提供手段を有する画像処理装置におけるソフトウェア動作テスト方法であって、前記評価対象機再現手段又は前記評価対象機能提供手段に対して、評価対象ソフトウェアと、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアとの間で送受信されるイベントを制御するイベント制御手順と、前記イベント制御手順によりイベントの取得及び/又は発行を制御し、前記評価対象ソフトウェアの動作をテストする動作テスト手順とを有することを特徴とする。
このような手順によって、本発明のソフトウェア動作テスト方法は、評価対象機再現部により再現されたシステム、又は評価対象機能提供部により提供されたシステム上で動作する評価対象ソフトウェアに対して動作テストを行う動作テスト部が、評価対象機再現部で評価対象ソフトウェアの送受信イベントを制御するソフトウェア部品を介して、操作手順の記録及び再生(実行)を行い、評価対象ソフトウェアの動作を検証・評価する機能を実現する。
これによって、本発明の画像処理方法は、評価対象機とエミュレータの両方の環境において、機器に搭載されるソフトウェアの動作を検証・評価する機能を提供できる。
上記目的を達成するため、本発明のソフトウェア動作テストプログラムは、評価対象機が搭載するソフトウェア及び/又はハードウェアにより提供される各種機能を擬似的に再現する評価対象機再現手段を有する情報処理装置、又は、評価対象機である当該画像処理装置が搭載するソフトウェア及び/又はハードウェアにより各種機能を提供する評価対象機能提供手段を有する画像処理装置におけるソフトウェア動作テストプログラムであって、コンピュータを、前記評価対象機再現手段又は前記評価対象機能提供手段に対して、評価対象ソフトウェアと、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアとの間で送受信されるイベントを制御するイベント制御手段と、前記イベント制御手段によりイベントの取得及び/又は発行を制御し、前記評価対象ソフトウェアの動作をテストする動作テスト手段として機能させる。
本発明によれば、ソフトウェア動作テスト機能を実現するソフトウェア構成を、評価対象機に搭載される場合とエミュレータに搭載される場合とで同一の構成にすることで、評価対象機とエミュレータの両方の環境において、機器に搭載されるソフトウェアの動作を検証・評価することができる。
以下、本発明の好適な実施の形態(以下、「実施形態」という。)について、図面を用いて詳細に説明する。
[第1の実施形態]
まず、評価対象機に搭載された評価対象ソフトウェアの動作の検証・評価を、どのような流れで行うのかについて、テスターの操作とそれに対応する評価対象機内の動作を例に説明する。なお、以下に説明では、操作パネルの画面遷移に関するソフトウェアのテスト工程を一例として挙げる。画面遷移動作の検証・評価を行うテスト工程は、テスターの手作業により行われ、従来では、操作パネル上の操作キーを介して動作指示を行った後に、画面遷移が正しく行われるか否かを目視で確認していたため、テスターにとって負荷の大きい作業であった。このようなテスト工程に対して、操作手順を記録し、記録した手順に従って作業を再現できれば、テスト品質を維持しながら、作業効率を向上させることができる。
<ソフトウェア動作テストの動作例>
ソフトウェア動作テストは、「操作手順の記録」、「記録手順の再生」、「検証・評価」の順に行われる。
《操作手順の記録》
図1は、本発明の第1の実施形態に係るテスターの操作手順を記録するときの動作例を示す図である。まず、テスターUは、評価対象機が備える操作パネルに表示された操作画面W(UI)を介して、評価対象ソフトウェア(図中では「アプリケーションAP」)への動作指示(画面表示を行う動作指示)などの所定のパネル操作を行う(ステップS11)。
評価対象機では、操作画面Wから受け付けた動作指示に対応する操作イベントが、操作パネルからコントローラCTLへ送られ(ステップS12)、コントローラCTLが、受け取った操作イベントを、該当するアプリケーションAPに送る(ステップS13)。また、コントローラCTLは、ステップS12において受け取った操作イベントをテストツールTに送る(ステップS15)。
また、アプリケーションAPは、受け取った操作イベントにより動作指示された所定の処理を行った後に、処理結果や次の操作要求などの操作画面遷移後の画面データ(画像データを含むグラフィック部品群)を生成し、コントローラCTLに送り(ステップS14)、コントローラCTLが、受け取った画面データをテストツールTに送る(ステップS16)。
テストツールTは、ステップS15において受け取った操作イベントを、例えば評価対象機が備えるハードディスクHDなどの記憶装置の所定の記憶領域に格納し、操作手順データとして記録する。また、ステップS16において受け取った画面データも、検証・評価時に正しいとする基準画面(正解画面)として記録する(ステップS17)。また、ステップS17では、上記各情報(操作手順データと画面データ)を対応付けて記録する。
また、コントローラCTLは、ステップS14において受け取った画面データを操作パネルへ送り(ステップS18)、操作パネルが、受け取った画面データを基に、手動操作による新たな操作画面W(正解画面)を表示し、テスターUに次の操作(次の動作指示)を促す(ステップS19)。
本実施形態では、以上のような動作を繰り返すことにより、テスターUの操作手順をデータ化し記録する。
《記録した操作手順の再生》
図2は、本発明の第1の実施形態に係る記録した操作手順を再生するときの動作例を示す図である。本実施形態では、前述した記録データを基に操作手順を再生し、テスト工程を再現する。
テストツールTは、ハードディスクHDから操作手順データと対応する画面データとを、記録された順に取得し(ステップS21)、取得した操作手順データをコントローラCTLへ送る(ステップS22)。
コントローラCTLは、受け取った操作手順データを基に、記録された各操作イベント情報に従って、該当するアプリケーションAPへ擬似的に操作イベントを送り(ステップS23)、アプリケーションAPが、受け取った操作イベントにより動作指示された所定の処理を行った後に、そのとき表示する操作画面Wの画面データ(グラフィック部品群)を生成し、コントローラCTLに送り(ステップS24)、コントローラCTLが、受け取った画面データをテストツールTに送る(ステップS25)。
テストツールTは、ステップS25において受け取った画面データを、ハードディスクHDの所定の記憶領域に格納し、検証・評価時の正解画面と比較する検証用画面として記録する(ステップS26)。
また、コントローラCLTは、ステップS24において受け取った画面データを操作パネルへ送り(ステップS27)、操作パネルが、受け取った画面データを基に、操作手順の再生による新たな操作画面W(検証用画面)を表示し、テスターUに操作手順の実行状態を通知する(ステップS28)。
本実施形態では、以上のような動作を、記録された一連の操作手順に従って(テスト工程の単位で)実行することにより、手作業で行っていたテスターUの操作手順を自動化し、テスト工程の各作業を再現する。
《検証・評価》
図3は、本発明の第1の実施形態に係る評価対象ソフトウェアの動作を検証・評価するときの動作例を示す図である。遷移画面動作の検証・評価は、テストツールTにより行われる。例えば、テストツールTでは、前述した「操作手順の記録」により得られた正解画面の画面データIMG1と「記録した操作手順の再生」により得られた検証用画面の画面データIMG2とを比較し、検証・評価結果を得る。その比較方法には、画面データが画像である特性を生かし画像類似度による方法などが挙げられる。
このようにして得られた検証・評価の結果は、結果レポートとして所定の形式で出力される。その出力方法としては、テストツールTからコントローラCTLを介して、操作パネルに表示させたり、印刷機能(プロッタ)を備えた評価対象機であれば、用紙に印刷したりする方法が挙げられる。
このように、従来、テスターUの手作業により行われていたテスト工程も、前述した「記録」、「再生」、「検証・評価」の各手順により、作業を自動化し、テスターUの作業能力に依存することなく、一定のテスト品質かつ作業効率の良い方法で、評価対象ソフトウェアの動作を検証・評価することが可能となる。
では、前述した動作例を踏まえ、本実施形態に係る「ソフトウェア動作テスト機能」について詳細に説明する。
<ハードウェア構成>
まず、ソフトウェア動作テスト機能を搭載する本実施形態に係る情報処理装置のハードウェア構成について説明する。図4は、本発明の第1の実施形態に係る情報処理装置100のハードウェア構成例を示す図である。
図4に示すように、情報処理装置100は、入力装置101と、表示装置102と、ドライブ装置103と、RAM(Random Access Memory)104と、ROM(Read Only Memory)105と、CPU(Central Processing Unit)106と、インタフェース装置107と、ハードディスク108とから構成され、それぞれバスで相互に接続されている。
入力装置101は、キーボード及びマウスなどで構成され、情報処理装置100に各操作信号を入力するのに用いられる。表示装置102は、ディスプレイなどで構成され、情報処理装置100による処理結果などを表示する。
インタフェース装置107は、情報処理装置100をネットワークなどのデータ伝送路(非図示)に接続するインタフェースである。情報処理装置100は、インタフェース装置107を介して外部機器(非図示)とのデータ通信を行う。
ハードディスク108は、情報処理装置100全体を制御し情報処理システムを提供するプログラムやデータ、情報処理システムにおいて各種機能(例えば「文書・画像編集やデータ通信」など)を提供するアプリケーションのプログラムやデータなどを格納している記憶装置である。また、ハードディスク108は、格納しているプログラムやデータを、所定のファイルシステムやDB(Data Base)により管理している。
なお、上記プログラムやデータは、例えばCD(Compact Disk)などの記録媒体103aによって情報処理装置100に提供されるか、ネットワークなどのデータ伝送路からインタフェース装置107を介してダウンロードされる。例えば、記録媒体103aから提供される場合は、記録媒体103aを読み取り可能なドライブ装置103を介してハードディスク108にインストールされる。
ROM105は、電源を切っても内部データを保持することができる不揮発性の半導体メモリ(記憶装置)である。ROM105には、情報処理装置100が起動されるときに実行されるBIOS(Basic Input/Output System)や、情報処理装置100のシステム設定やネットワーク関連の設定などのデータを格納している。
RAM104は、上記各種記憶装置から読み出されたプログラムやデータを一時保持する。CPU106は、RAM104上に読み出されたプログラムを実行する。
情報処理装置100は、このようなハードウェア構成により、例えば、ハードディスク108からRAM104上に読み出されたアプリケーションのプログラムをCPU106により実行し、文書や画像データの閲覧・編集を行ったり、インタフェース装置107を介して外部機器とのデータ通信を行ったりすることができる。
<ソフトウェア動作テスト機能>
本実施形態に係るソフトウェア動作テスト機能では、評価対象機に搭載される場合と、エミュレータに搭載される場合とで、機能を実現するソフトウェア構成を同一の構成とすることで、評価対象機とエミュレータの両方の環境に容易に対応でき(容易に導入でき)、また、評価対象機とエミュレータの両方の環境で、同一の操作手順記録データと検証用データとを用いて、評価対象ソフトウェアの動作を検証・評価することができる。
以降に説明するソフトウェア動作テストは、情報処理装置100に1つのアプリケーションとしてインストールされたソフトウェア動作テストプログラムを、RAM104上に読み出し、CPU106により実行することで実現される機能である。
では、その機能構成と動作について説明する。
《機能構成》
図5は、本発明の第1の実施形態に係るソフトウェア動作テスト機能の構成例を示す図である。図5には、エミュレータに搭載されたソフトウェア動作テスト機能の構成例が示されている。まず、機能構成を説明する前に「エミュレータ」について簡単に触れておく。
エミュレータ(Emulator)とは、機械の模倣装置、あるいは模倣ソフトウェアのことである。ある機械部品やソフトウェアを動作させるのに、オリジナルのシステムを用意するのが難しい場合に、オリジナルと同じ動作を行う簡便なシステムを用意することがある。この装置をエミュレータと言う。これにより、エミュレータ上で、動作させたいソフトウェアや機械部品をオリジナルと同じように機能させることができる。
本実施形態では、模倣対象を評価対象機とし、評価対象機と同じ動作を行うシステムを情報処理装置100で動作させる。つまり、情報処理装置100がエミュレータとなる。
よって、情報処理装置100では、評価対象機が搭載するハード・ソフトウェアによる各種機能が擬似的に再現された(エミュレートされた)システム(以下、「評価対象機再現部」と言う。)上で動作する評価対象ソフトウェアSW1に対して動作テストを行う。
このように、本実施形態では、主に、評価対象機再現部11により再現された環境で動作する評価対象ソフトウェアSW1に対して検証・評価を行う動作テスト部12とから構成される。
(評価対象機再現部)
評価対象機再現部11は、評価対象ソフトウェアSW1と、評価対象ソフトウェアSW1と連携して機能提供を実現する連携ソフトウェアSW3と、評価対象機が備える各種ハードウェア資源(各種デバイス)をエミュレートするハードウェアエミュレーションツールHETとを有し、評価対象ソフトウェアSW1と、連携ソフトウェアSW3又はハードウェアエミュレーションツールHETの少なくとも1つとの間には、相互間で送受信される各種イベント(例えば「動作指示」など)の通信経路となるイベント・キャプチャ部21が配置される構成となっている。
上記ハードウェアエミュレーションツールHETは、評価対象ソフトウェアSW1が実現する機能により使用される各種ハードウェア資源をエミュレートするハードウェアエミュレータHEと、各種ハードウェア資源のデバイスドライバ機能(ハードウェアとソフトウェアとのインタフェース機能)をエミュレートするエミュレーションドライバEDとから構成され、評価対象機に依存するハードウェア資源の提供機能を擬似的に再現している。
また、上記イベント・キャプチャ部21は、「記録」や「再生」などの動作テスト実行時に、後述するイベント記録・再生部22との連携処理により、イベントの取得や発行と言ったイベント制御が可能となっている。この制御の詳細な説明については、イベント記録・再生部22の説明にて行う。
このような評価対象機再現部11により、評価対象ソフトウェアSW1は、情報処理装置100において、評価対象機に搭載されたときと同じ動作を行うことが可能となる。
例えば、「テスターUが、評価対象機の操作パネルを介して、テスト工程の作業手順に従った操作を行い、評価対象機に搭載されるアプリケーションAPを動作させる」場合、情報処理装置100では、上記評価対象機再現部11のハードウェアエミュレーションツールHETにより、入力装置101を介したテスターUからの動作指示を受け付け、受け付けた動作指示を、イベント・キャプチャ部21を介して、評価対象ソフトウェアSW1に送り、評価対象ソフトウェアSW1が、動作指示に従って処理を実行することで再現することができる。
続いて、ソフトウェア動作テスト機能である動作テスト部12について説明する。
(動作テスト部)
動作テスト部12は、イベント記録・再生部22及び検証部23により構成される。
イベント記録・再生部22は、「(A)イベント記録機能」と「(B)イベント再生機能」との2つの機能を有している。「イベント記録機能」では、前述した評価対象機再現部11の評価対象ソフトウェアSW1が送受信するイベントを記録し、「イベント再生機能」では、記録したイベントを再生し、評価対象ソフトウェアSW1を動作させる。
また、イベント記録・再生部22は、上記イベント記録及び再生機能を、評価対象機再現部11のイベント・キャプチャ部21と連携動作することで実現する。
検証部23は、「(C)検証・評価機能」を有し、上記イベント再生機能により得られる評価対象ソフトウェアSW1の動作結果を基に、評価対象ソフトウェアSW1が正しく動作しているか否かを検証・評価する。
以下に、上記各機能部の詳細や他の機能部との連携動作について説明する。
(A)イベント記録機能
イベント記録・再生部22は、イベント・キャプチャ部21を介して、評価対象ソフトウェアSW1が送受信するイベントを取得し、ハードディスク108の所定の記憶領域に格納する。
評価対象ソフトウェアSW1が送受信するイベントには、評価対象ソフトウェアSW1が、ハードウェアエミュレーションツールHET又は連携ソフトウェアSW3の少なくとも1つを含むリソース環境(以下、「外部環境」と言う。)から受信する入力イベントと、評価対象ソフトウェアSW1が送信する出力イベントに大別される。
入力イベントには、評価対象ソフトウェアSW1への動作指示など、例えば、テスターUが、入力装置101を介して、テスト工程の作業手順に従った操作を行ったときに受信する操作イベントなどが含まれる。また、出力イベントには、受信した操作イベントに従って動作した評価対象ソフトウェアSW1の動作結果イベントなどが含まれる。
これらの各種イベントは、全て、イベント・キャプチャ部21を介して、評価対象ソフトウェアSW1と外部環境との間でやり取りされる。
よって、イベント記録・再生部22は、イベント・キャプチャ部21に対してイベント取得を要求し、上記入出力イベントを取得する。例えば、イベント記録・再生部22は、画面操作時に上記イベント取得の要求を行った場合、イベント・キャプチャ部21を介して、入力イベントである操作イベントと、出力イベントとして動作結果イベントを取得する。
《処理手順》
図6は、本発明の第1の実施形態に係るイベント記録機能の処理手順例を示すシーケンス図である。(A)には、外部環境から評価対象ソフトウェアSW1への入力イベントを取得し記録する場合、一方(B)には、評価対象ソフトウェアSW1から外部環境への出力イベントを取得し記録する場合のそれぞれの例が示されている。
・入力イベントの記録
図6(A)に示すように、情報処理装置100が有するイベント記録機能は、まず、イベント・キャプチャ部21が、外部環境から評価対象ソフトウェアSW1への入力イベントを取得し(ステップS101)、取得した入力イベントを、取得要求元のイベント記録・再生部22へ送信する(ステップS102)。
イベント記録・再生部22は、受け取った入力イベントを基に、操作手順記録データ31を生成し、ハードディスク108の所定の記憶領域にデータファイルとして格納する(ステップS103)。
・出力イベントの記録
図6(B)に示すように、情報処理装置100が有するイベント記録機能は、まず、イベント・キャプチャ部21が、評価対象ソフトウェアSW1から外部環境への出力イベントを取得し(ステップS201)、取得した出力イベントを、取得要求元のイベント記録・再生部22へ送信する(ステップS202)。
イベント記録・再生部22は、受け取った出力イベントを基に、検証用データ41を生成し、ハードディスク108の所定の記憶領域にデータファイルとして格納する(ステップS203)。
このように、イベント記録・再生部22は、入力イベントとして取得した操作イベントと、出力イベントとして取得した動作結果イベントとを、異なるイベント情報としてハードディスク108に格納し、各情報で構成されたファイルデータを生成する。
イベント記録・再生部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は、ハードディスク108に保存されている操作手順記録データ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は、受け取った動作結果イベントと、ハードディスク108に保存されている検証用データ41の各動作結果イベントとを比較することで、動作の検証・評価を行う。
検証用データ41には、イベント記録時に取得した動作結果イベントに関する情報(イベント識別情報及び動作結果情報)が、取得した順に記録されている。つまり、テスターUが行った操作に対応して、評価対象ソフトウェアSW1が動作した順に発行された動作結果イベントが記録されている。
よって、イベント記録・再生部22がイベント再生機能により、操作手順記録データ31を基に動作テストを実行していることから、評価対象ソフトウェアSW1が正しく動作していれば、評価対象ソフトウェアSW1からは、検証用データ41を構成する各動作結果イベントが得られる。
これにより、検証部23は、イベント再生時に、イベント記録・再生部22から送信された動作結果イベントと、検証用データ41からデータ順(記録データ順)に従って抽出した動作結果イベントとを比較し、一致していれば、評価対象ソフトウェアSW1が、操作イベントの受信に従って正しく動作していると判定する。一方、異なっていれば、正しく動作していないと判定する。
以上のように、検証部23は、イベント記録・再生部22により、動作テストの操作手順に従って実行された評価対象ソフトウェアSW1から取得した動作結果を基に、正しく動作しているか否か(正常に動作しているか否か)を判断し、評価対象ソフトウェアSW1の動作を検証・評価する。
《処理手順》
図7は、本発明の第1の実施形態に係るイベント再生及び検証・評価機能の処理手順例を示すシーケンス図である。
図7に示すように、情報処理装置100が有するイベント再生及び検証・評価機能は、まず、イベント記録・再生部22が、ハードディスク108に保存されている操作手順記録データ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は、ハードディスク108に保存されている検証用データ41を取得し(ステップS309)、受け取った動作結果イベントと、検証用データ41からデータ順に従って抽出した動作結果イベントとを比較し、一致していれば、評価対象ソフトウェアSW1が、操作イベントの受信に従って正しく動作していると判定する。一方、異なっていれば、正しく動作していないと判定する。すなわち、評価対象ソフトウェアSW1の動作を検証・評価する(ステップS310)。
<まとめ>
以上のように、本発明の第1の実施形態によれば、本実施形態に係る情報処理装置100は、評価対象機が搭載するハード・ソフトウェアによる各種機能を擬似的に再現する評価対象機再現部11と、評価対象機再現部11上が再現したシステム上で動作する評価対象ソフトウェアSW1に対して動作テストを行う動作テスト部12とを有している。
このような構成において、動作テスト部12が、評価対象機再現部11で評価対象ソフトウェアSW1の送受信イベントを制御するソフトウェア部品21を介して、操作手順の記録及び再生(実行)を行い、評価対象ソフトウェアSW1の動作を検証・評価する。すなわち、上記ソフトウェア部品21と動作テスト部12とが協調動作し、評価対象ソフトウェアSW1の動作を検証・評価する。
これによって、情報処理装置100では、評価対象機に搭載される場合と、エミュレータに搭載される場合とで、機能を実現するソフトウェア構成を同一の構成とすることで、評価対象機とエミュレータの両方の環境に容易に対応できる(容易に導入できる)。また、評価対象機とエミュレータの両方の環境で、同一の操作手順記録データ31と検証用データ41とを用いて、評価対象ソフトウェアSW1の動作を検証・評価することができる(テストデータを共通化することができる)。
よって、情報処理装置100は、評価対象機とエミュレータの両方の環境において、機器に搭載されるソフトウェアの動作を検証・評価することができる。
[第2の実施形態]
ソフトウェアの動作を検証・評価するときに、この検証・評価を自動化することは、テスト工程における作業効率(ソフトウェア評価の効率)を向上する上で効果的である。
しかし、実際に評価対象ソフトウェアから取得される動作結果には、評価対象とは別の要因により微小な差異が含まれる場合がある。従来は、テスターが検証・評価を行っていたことから問題はなかったが、自動化した場合には、誤った評価の原因となりうる。
上記微小な差異には、例えば、画面遷移動作のテストを行ったときに、出力画面に連携する他のソフトウェアやシステムからの情報が動作結果に含まれる場合などである。このような場合、同じ操作手順に従ってテストを行ったとしても、動作結果が異なることとなる。
また、演算精度の違いや演算アルゴリズムの違いなどによって、評価対象機上とエミュレータ上で、微小な差異が生じることも考えられる。
これでは、評価対象機とエミュレータの両方の環境で、同一の操作手順記録データと検証用データとを用いて、評価対象ソフトウェアの動作を検証・評価することが困難となり、評価対象ソフトウェアの動作結果に含まれる差異により、テスト工程におけるソフトウェア評価が誤って行われ、テスト品質を低下させてしまう。その結果、ソフトウェアの品質に悪影響を及ぼすことになる。
そこで、本実施形態では、予め、イベント種ごとに許容可能な差異の範囲を決めておき、この許容可能な範囲を基に、評価対象ソフトウェアの動作を検証・評価する検証・評価機能を有することで、上記問題点を解決するものである。つまり、本実施形態では、検証・評価時の評価基準を、イベント種ごとにカスタマイズ可能な(柔軟に変更可能な)構成となっている。
以下に、上記本実施形態に係る「評価基準をカスタマイズ可能な検証・評価機能」について説明するが、本実施形態と第1の実施形態との違いは、上記検証・評価機能のみであることから、それ以外の技術的事項については、第1の実施形態と同一の図面と参照符号を用いて、その説明を省略する。
<ソフトウェア動作テスト機能>
第1の実施形態において説明したように、ソフトウェア動作テスト機能は、主に、評価対象機再現部11と動作テスト部12とから構成され、以下に説明する検証・評価機能は、上記動作テスト部12が有する検証部23により実現される。
《機能構成》
図8は、本発明の第2の実施形態に係る本発明の第2の実施形態に係る評価基準をカスタマイズ可能な検証・評価機能の構成例を示す図である。
図8に示すように、検証部23は、イベント記録・再生部22がイベント再生機能により、評価対象ソフトウェアSW1から取得した動作結果を基に、正しく動作しているか否か(正常に動作しているか否か)を検証・評価する。
その中で、検証部23は、同機能部が有する比較部51により、イベント記録・再生部22から受け取った動作結果イベントと、ハードディスク108に保存されている検証用データ41の各動作結果イベントとを比較することで、動作の検証・評価を行う。
そこで、本実施形態では、比較部51において、動作結果イベントの比較を行うときに、イベント種ごとにそれぞれの評価基準を設定可能な構成としている。より具体的には、動作結果イベントの比較を行うときに、イベントごとに評価関数61nを追加可能となっている。
上記イベント種とは、動作結果イベントの中で取り扱われるデータ種(複数のデータ種の組み合わせを含む)から分類されるイベントの種類である。ここで言うデータ種とは、例えば、整数値や浮動小数点などの数値データ、またイメージデータなどである。
さらに上記評価関数61nとは、取得した動作結果が正しい動作結果にどの程度近似しているかを評価し、その結果をソフトウェア評価とする関数である。
《処理手順》
図9は、本発明の第2の実施形態に係る評価基準を基に検証・評価を行う検証・評価機能の処理手順を示すフローチャートである。
図9に示すように、検証・評価機能は、検証部23の比較部51が、イベント記録・再生部22から受け取った動作結果イベント(評価対象イベント)に対応する評価関数61nを検索(追加されているか否かを判定)する(ステップS401)。
比較部51は、該当する評価関数61nがある場合には(ステップS401;YES)、評価関数61nに所定の評価パラメータを入力し、評価基準を基に評価値を算出し(ステップS402)、評価対象ソフトウェアSW1の評価結果を得る(ステップS404)。
一方、該当する評価関数61nがない場合には(ステップS405:YES)、イベント記録・再生部22から受け取った動作結果イベントと、検証用データ41からデータ順に従って抽出した動作結果イベントとを比較し(ステップS405)、比較結果を得る(ステップS406)。
このように、比較部51では、イベント記録・再生部22から受け取った動作結果イベントを基に検証・評価を行うときに、評価関数61nに所定の評価パラメータを入力し、評価基準を基に出力された(所定の計算式により算出された)評価対象ソフトウェアの評価値が得られる。また、このとき比較部51は、例えば、イベント記録・再生部22から受け取った動作結果イベントのイベント識別情報(例えば「イベントID」など)を基に、イベントに対応する評価関数61nが、比較部51に追加されているか否かを判定し、追加されていれば、該当する評価関数61nを用いて評価値を算出する。
ここで、評価関数61nについてさらに説明する。
(評価関数)
評価関数61nでは、例えば、以下に示すデータ種ごとの評価基準(許容可能な範囲)を基に、評価対象ソフトウェアSW1を評価する。このように、動作結果イベントの中で取り扱われるデータ種(複数のデータ種の組み合わせを含む)によって、イベント種に対応する評価基準を決定する。
(データ種) : (評価基準(許容可能な範囲))
・数値データ : 数値の許容差や許容割合(%)
・イメージデータ : 誤差率[誤り画素数/全画素数]
・イメージデータ : 有効座標範囲[評価対象外エリアを除外]
・イベント発生時刻 : 時間の許容差(秒)
評価関数61nには、2つの評価パラメータを入力可能であり、これらの評価パラメータは、イベント記録・再生部22から受け取った動作結果イベントと、ハードディスク108に保存されている検証用データ41から抽出した動作結果イベントとである。
また、評価関数61nは、動作結果イベントのイベント識別情報に対応付けて比較部51に追加可能である。よって、評価関数61nは、イベントごとに一意に特定することができる。
このように、検証部23は、比較部51にイベントごとに追加されている評価関数61nから得られる評価結果から、評価対象ソフトウェアSW1の動作を検証・評価する。
以上のように、検証部23は、同機能部内の比較部51により、動作テストの操作手順に従って実行された評価対象ソフトウェアSW1から取得した動作結果を評価パラメータとする評価関数61nの評価基準を基に、正しく動作しているか否か(正常に動作しているか否か)を判断し、評価対象ソフトウェアSW1の動作を検証・評価する。
<まとめ>
以上のように、本発明の第2の実施形態によれば、本実施形態に係る情報処理装置100は、第1の実施形態において説明を行った各機能部に構成されており、動作テスト部12が、評価対象機再現部11で評価対象ソフトウェアSW1の送受信イベントを制御するソフトウェア部品21を介して、操作手順の記録及び再生(実行)を行い、評価対象ソフトウェアSW1の動作を検証・評価する。
さらに、本実施形態では、評価対象ソフトウェアSW1の動作を検証・評価する検証・評価機能において、動作テストの操作手順に従って実行された評価対象ソフトウェアSW1から取得した動作結果を評価パラメータとする評価関数61nの評価基準を基に、正しく動作しているか否かを判断し、評価対象ソフトウェアSW1の動作を検証・評価する。また、本実施形態では、上記評価基準の調整を、評価関数61nの追加/削除により行え、イベント種ごとにカスタマイズ可能な(柔軟に変更可能な)構成となっている。
これによって、情報処理装置100では、評価対象ソフトウェアSW1から取得される動作結果に、評価対象とは別の要因による微小な差異が含まれている場合であっても、評価関数61nの追加により調整された評価基準により、テスト動作が自動実行時における上記微小な差異による誤ったソフトウェア評価を防ぎ、安定したテスト品質を維持することができる。
よって、情報処理装置100は、第1の実施形態と同様の効果を奏するとともに、安定したテスト品質を維持することにより、ソフトウェアの品質も維持することができる。
<機能構成の変形例>
上記各実施形態では、主にエミュレータである情報処理装置100において動作するソフトウェア動作テスト機能について説明を行った。
ここからは、評価対象機や、評価対象機とテスト実行機との組み合わせなど、ソフトウェア動作テスト機能を他の形態に実装した場合について説明する。
《評価対象機》
図10は、本発明の各実施形態に係るソフトウェア動作テスト機能構成の変形例(その1)を示す図である。図10には、評価対象機200にソフトウェア動作テスト機能を実装した場合の機能構成例が示されている。
情報処理装置100の場合には、評価対象機200が備える各種ハードウェア資源(各種デバイス)をエミュレートするハードウェアエミュレーションツールHETを有していたが、評価対象機200の場合には、エミュレートする必要がないことから、評価対象ソフトウェアSW1と、連携ソフトウェアSW3、各種ハードウェアHW、又は各種デバイスドライバSW2の少なくとも1つとの間に、相互間で送受信される各種イベントの通信経路となるイベント・キャプチャ部21を配置する構成となっている。
これにより、評価対象機200においても、エミュレータで動作する動作テスト部12の構成をそのまま用いることが可能となり、上記各実施形態において説明を行った情報処理装置100の機能構成を同一の構成によりソフトウェア動作テストを行うことができる。また、情報処理装置100と評価対象機200との両方のテスト環境において、同一の操作手順記録データ31及び検証用データ41とが共通して使用できることは言うまでもない。
《評価対象機とテスト実行機》
図11は、本発明の各実施形態に係るソフトウェア動作テスト機能構成の変形例(その2)を示す図である。図11には、評価対象機200とテスト実行機100とに、ソフトウェア動作テスト機能を実装した場合の機能構成例が示されている。
テスト実行機100は、情報処理装置であり、動作テスト部12のみで構成される。また、上記評価対象機200には、評価対象ソフトウェアSW1と、連携ソフトウェアSW3、各種ハードウェアHW、又は各種デバイスドライバSW2の少なくとも1つとの間に、相互間で送受信される各種イベントの通信経路となるイベント・キャプチャ部21を配置する構成となっている。
このような構成から、評価対象機200とテスト実行機100とを、所定のデータ伝送路で接続することにより、評価対象機200のイベント・キャプチャ部21と、テスト実行機100のイベント記録・再生部22との協調動作が可能となる。
ここまで、上記各実施形態に基づき本発明の説明を行ってきたが、上記各実施形態において、図を用いて説明を行った各処理手順は、処理手順が実行される動作環境(プラットフォーム)にあったプログラミング言語でコード化したプログラムとしてコンピュータで実行される。これにより前述したソフトウェア動作テスト機能を実現することができる。よって、上記プログラムは、コンピュータが読み取り可能な記録媒体103aに格納することができる。
よって、上記プログラムは、フロッピー(登録商標)ディスク、CD、DVD(Digital Versatile Disk)などの記録媒体103aに記憶させることによって、これらの記録媒体103aを読み取り可能なドライブ装置103を介して、情報処理装置100や評価対象機200にインストールすることができる。また、情報処理装置100や評価対象機200には、ネットワークなどのデータ伝送路に接続可能なインタフェース装置107を備えていることから、インターネットなどの電気通信回線を用いて上記プログラムを装置内部にダウンロードし、インストールすることもできる。
また、上記実施形態において、イベント記録・再生部22が、操作手順記録データ31や検証用データ41を記録するときに、同機能部が動作する装置が備えた記憶装置に格納する例を挙げたが、例えば、ドライブ装置103を介して、着脱可能な記録媒体103aに格納し記録しても良い。
また、上記実施形態において、イベント記録・再生部22によって、イベント記録機能とイベント再生機能とを1つのソフトウェア部品が実現する構成例を挙げたが、イベント記録機能はイベント記録部、また、イベント再生機能はイベント再生部と言ったように、機能ごとに別のソフトウェア部品による構成としても良い。
最後に、上記実施形態に挙げた形状や構成に、その他の要素との組み合わせなど、ここで示した要件に、本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
本発明の第1の実施形態に係るテスターの操作手順を記録するときの動作例を示す図である。 本発明の第1の実施形態に係る記録した操作手順を再生するときの動作例を示す図である。 本発明の第1の実施形態に係る評価対象ソフトウェアの動作を検証・評価するときの動作例を示す図である。 本発明の第1の実施形態に係る情報処理装置のハードウェア構成例を示す図である。 本発明の第1の実施形態に係るソフトウェア動作テスト機能の構成例を示す図である。 本発明の第1の実施形態に係るイベント記録機能の処理手順例を示すシーケンス図である。 本発明の第1の実施形態に係るイベント再生及び検証・評価機能の処理手順例を示すシーケンス図である。 本発明の第2の実施形態に係る評価基準をカスタマイズ可能な検証・評価機能の構成例を示す図である。 本発明の第2の実施形態に係る評価基準を基に検証・評価を行う検証・評価機能の処理手順を示すフローチャートである。 本発明の各実施形態に係るソフトウェア動作テスト機能構成の変形例(その1)を示す図である。 本発明の各実施形態に係るソフトウェア動作テスト機能構成の変形例(その2)を示す図である。
符号の説明
11 評価対象機再現部
12 動作テスト部
21 イベント・キャプチャ部
22 イベント記録・再生部
23 検証部
31 操作手順記録データ
41 検証用データ
51 比較部
61 評価関数
100 情報処理装置(テスト実行機)
101 入力装置
102 表示装置
103 ドライブ装置(a:記録媒体)
104 RAM
105 ROM
106 CPU
107 インタフェース装置
108 ハードディスク(情報処理装置側)
200 評価対象機
AP アプリケーション
CTL コントローラ
ED エミュレーションドライバ
HD ハードディスク(評価対象機側)
HE ハードウェアエミュレータ
HET ハードウェアエミュレーションツール
HW ハードウェア
IMG 画面データ(1:正解画面,2:検証用画面)
R 結果レポート
SW ソフトウェア(1:評価対象,2:ドライバ,3:連携)
T テストツール
U テスター
W 操作画面(UI)

Claims (16)

  1. 評価対象機が搭載するソフトウェア及び/又はハードウェアにより提供される各種機能を擬似的に再現する評価対象機再現手段を有する情報処理装置であって、
    前記評価対象機再現手段に対して、評価対象ソフトウェアと、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアとの間で送受信されるイベントを制御するイベント制御手段と、
    前記イベント制御手段によりイベントの取得及び/又は発行を制御し、前記評価対象ソフトウェアの動作をテストする動作テスト手段とを有することを特徴とする情報処理装置。
  2. 前記イベント制御手段は、
    前記評価対象機再現手段が有する、評価対象ソフトウェアと、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアとの間で送受信されるイベントの通信経路であるソフトウェア部品の動作を制御することを特徴とする請求項1に記載の情報処理装置。
  3. 前記動作テスト手段は、
    前記イベント制御手段を制御し取得した前記イベントを記録する記録手段と、
    前記記録手段により記録されたイベントに基づき、前記評価対象ソフトウェアの動作テストを実行する実行手段と、
    前記実行手段により実行された動作テストの動作結果に基づき、前記評価対象ソフトウェアの動作を検証・評価する検証・評価手段とを有することを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記記録手段は、
    前記イベント制御手段を制御し取得した、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアから前記評価対象ソフトウェアへ送信された入力イベントを、前記動作テストを行うときの操作手順データとして記録するとともに、
    前記入力イベントに応じて前記評価対象ソフトウェアから前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアへ送信された出力イベントを、前記評価対象ソフトウェアの動作を検証・評価するときの検証データとして記録することを特徴とする請求項3に記載の情報処理装置。
  5. 前記実行手段は、
    前記記録手段により記録された操作手順データの記録データ順に従って、前記操作手順データ内の各入力イベントに関する情報に基づき、前記イベント制御手段により前記入力イベントの発行を制御し、前記評価対象ソフトウェアの動作テストを実行することを特徴とする請求項3又は4に記載の情報処理装置。
  6. 前記検証・評価手段は、
    前記実行手段により動作テストを実行したときに、前記イベント制御手段を制御し取得した前記出力イベントと、前記記録手段により記録された検証データから記録データ順に抽出した各出力イベントとを比較し、その比較結果に基づき、前記評価対象ソフトウェアの動作を検証・評価することを特徴とする請求項3ないし5のいずれか一項に記載の情報処理装置。
  7. 前記検証・評価手段は、
    検証・評価時に正常な出力イベントであると判断する出力イベントデータの許容範囲を示す評価基準の有無を判定する評価基準有無判定手段を有し、
    前記評価基準有無判定手段により、前記評価基準を有していると判定された場合に、
    前記評価基準に基づき、前記評価対象ソフトウェアの動作を検証・評価することを特徴とする請求項3ないし6のいずれか一項に記載の情報処理装置。
  8. 当該情報処理装置は、
    前記評価基準を、前記出力イベントに対応付けて設定する評価基準設定手段を有することを特徴とする請求項7に記載の情報処理装置。
  9. 前記評価基準有無判定手段は、
    前記イベント制御手段を制御し取得した前記出力イベントの識別情報に基づき、前記出力イベントに対応付けて設定された評価基準の有無を判定することを特徴とする請求項7又は8に記載の情報処理装置。
  10. 前記記録手段は、
    前記イベント制御手段を制御し取得した前記イベントを、当該情報処理装置が備える記憶装置及び/又は着脱可能な記憶媒体に格納し記録することを特徴とする請求項3ないし9のいずれか一項に記載の情報処理装置。
  11. 評価対象機である当該画像処理装置が搭載するソフトウェア及び/又はハードウェアにより各種機能を提供する評価対象機能提供手段を有する画像処理装置であって、
    前記評価対象機能提供手段に対して、評価対象ソフトウェアと、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアとの間で送受信されるイベントを制御するイベント制御手段と、
    前記イベント制御手段によりイベントの取得及び/又は発行を制御し、前記評価対象ソフトウェアの動作をテストする動作テスト手段とを有することを特徴とする画像処理装置。
  12. 前記イベント制御手段は、
    前記評価対象機再現手段が有する、評価対象ソフトウェアと、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアとの間で送受信されるイベントの通信経路であるソフトウェア部品の動作を制御することを特徴とする請求項11に記載の画像処理装置。
  13. 前記動作テスト手段は、
    前記イベント制御手段を制御し取得した前記イベントを記録する記録手段と、
    前記記録手段により記録されたイベントに基づき、前記評価対象ソフトウェアの動作テストを実行する実行手段と、
    前記実行手段により実行された動作テストの動作結果に基づき、前記評価対象ソフトウェアの動作を検証・評価する検証・評価手段とを有することを特徴とする請求項11又は12に記載の画像処理装置。
  14. 評価対象機が搭載するソフトウェア及び/又はハードウェアにより提供される各種機能を擬似的に再現する評価対象機再現手段を有する情報処理装置、又は、評価対象機である当該画像処理装置が搭載するソフトウェア及び/又はハードウェアにより各種機能を提供する評価対象機能提供手段を有する画像処理装置におけるソフトウェア動作テスト方法であって、
    前記評価対象機再現手段又は前記評価対象機能提供手段に対して、評価対象ソフトウェアと、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアとの間で送受信されるイベントを制御するイベント制御手順と、
    前記イベント制御手順によりイベントの取得及び/又は発行を制御し、前記評価対象ソフトウェアの動作をテストする動作テスト手順とを有することを特徴とするソフトウェア動作テスト方法。
  15. 評価対象機が搭載するソフトウェア及び/又はハードウェアにより提供される各種機能を擬似的に再現する評価対象機再現手段を有する情報処理装置、又は、評価対象機である当該画像処理装置が搭載するソフトウェア及び/又はハードウェアにより各種機能を提供する評価対象機能提供手段を有する画像処理装置におけるソフトウェア動作テストプログラムであって、
    コンピュータを、
    前記評価対象機再現手段又は前記評価対象機能提供手段に対して、評価対象ソフトウェアと、前記評価対象ソフトウェア以外のソフトウェア及び/又はハードウェアとの間で送受信されるイベントを制御するイベント制御手段と、
    前記イベント制御手段によりイベントの取得及び/又は発行を制御し、前記評価対象ソフトウェアの動作をテストする動作テスト手段として機能させるソフトウェア動作テストプログラム。
  16. 請求項15に記載のプログラムを記憶した、コンピュータが読み取り可能な記録媒体。
JP2008180755A 2008-07-10 2008-07-10 情報処理装置、画像処理装置、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体 Expired - Fee Related JP5396759B2 (ja)

Priority Applications (1)

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

Applications Claiming Priority (1)

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

Publications (2)

Publication Number Publication Date
JP2010020561A true JP2010020561A (ja) 2010-01-28
JP5396759B2 JP5396759B2 (ja) 2014-01-22

Family

ID=41705386

Family Applications (1)

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

Country Status (1)

Country Link
JP (1) JP5396759B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8640092B2 (en) 2009-06-25 2014-01-28 Ricoh Company, Ltd. Compatibility evaluation apparatus, compatibility evaluation method, and recording medium
JP2016062136A (ja) * 2014-09-16 2016-04-25 三菱電機株式会社 試験装置及び試験プログラム
US9601320B2 (en) 2012-04-02 2017-03-21 Laser Systems & Solutions Of Europe Method for stabilizing a plasma and an improved ionization chamber

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002149409A (ja) * 2000-11-07 2002-05-24 Alpine Electronics Inc 電子機器の機能管理方式
JP2002259162A (ja) * 2001-03-02 2002-09-13 Canon Inc 機器制御ソフトウェア開発支援システム
JP2003216310A (ja) * 2001-09-28 2003-07-31 Ricoh Co Ltd キー操作監視方法、描画情報取得方法、キー操作再生方法、これらの方法をコンピュータに実行させるプログラムおよび画像形成装置
JP2004252585A (ja) * 2003-02-18 2004-09-09 Matsushita Electric Ind Co Ltd プログラム検証システム
JP2005049947A (ja) * 2003-07-29 2005-02-24 Ricoh Co Ltd 実機レスシミュレーション装置
JP2005250937A (ja) * 2004-03-05 2005-09-15 Matsushita Electric Ind Co Ltd マイクロコンピュータソフトウェアのプログラム検証装置
JP2005322157A (ja) * 2004-05-11 2005-11-17 Nippon Steel Corp テスト支援装置、テスト支援システム及びテスト支援方法
JP2007249219A (ja) * 2007-03-30 2007-09-27 Ricoh Co Ltd 画像出力装置
JP2007265263A (ja) * 2006-03-29 2007-10-11 Fujitsu Ltd ソフトウェアの自動試験プログラム、ソフトウェアの自動試験装置、およびソフトウェアの自動試験方法
JP2007328509A (ja) * 2006-06-07 2007-12-20 Sony 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 機器、制御装置及び制御ソフトウェア更新方法

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002149409A (ja) * 2000-11-07 2002-05-24 Alpine Electronics Inc 電子機器の機能管理方式
JP2002259162A (ja) * 2001-03-02 2002-09-13 Canon Inc 機器制御ソフトウェア開発支援システム
JP2003216310A (ja) * 2001-09-28 2003-07-31 Ricoh Co Ltd キー操作監視方法、描画情報取得方法、キー操作再生方法、これらの方法をコンピュータに実行させるプログラムおよび画像形成装置
JP2004252585A (ja) * 2003-02-18 2004-09-09 Matsushita Electric Ind Co Ltd プログラム検証システム
JP2005049947A (ja) * 2003-07-29 2005-02-24 Ricoh Co Ltd 実機レスシミュレーション装置
JP2005250937A (ja) * 2004-03-05 2005-09-15 Matsushita Electric Ind Co Ltd マイクロコンピュータソフトウェアのプログラム検証装置
JP2005322157A (ja) * 2004-05-11 2005-11-17 Nippon Steel Corp テスト支援装置、テスト支援システム及びテスト支援方法
JP2007265263A (ja) * 2006-03-29 2007-10-11 Fujitsu Ltd ソフトウェアの自動試験プログラム、ソフトウェアの自動試験装置、およびソフトウェアの自動試験方法
JP2007328509A (ja) * 2006-06-07 2007-12-20 Sony 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 機器、制御装置及び制御ソフトウェア更新方法
JP2007249219A (ja) * 2007-03-30 2007-09-27 Ricoh Co Ltd 画像出力装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8640092B2 (en) 2009-06-25 2014-01-28 Ricoh Company, Ltd. Compatibility evaluation apparatus, compatibility evaluation method, and recording medium
US9601320B2 (en) 2012-04-02 2017-03-21 Laser Systems & Solutions Of Europe Method for stabilizing a plasma and an improved ionization chamber
JP2016062136A (ja) * 2014-09-16 2016-04-25 三菱電機株式会社 試験装置及び試験プログラム

Also Published As

Publication number Publication date
JP5396759B2 (ja) 2014-01-22

Similar Documents

Publication Publication Date Title
US20110307739A1 (en) Multimedia hardware emulation for application testing
EP2245551A1 (en) Identification of elements of currently-executing component script
JP5320872B2 (ja) 画像処理装置、情報処理装置、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体
US20110314335A1 (en) Failure reproducing apparatus and failure reproducing method
CN110610089A (zh) 用户行为模拟方法、装置及计算机设备
JP5396759B2 (ja) 情報処理装置、画像処理装置、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体
EP3296875B1 (en) Simulation reproduction device, simulation reproduction method, and simulation reproduction program
CN103455288B (zh) 信息处理装置及控制方法
JP5365242B2 (ja) 情報処理装置、ソフトウェア動作テストシステム、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体
JP5425497B2 (ja) ソフトウェア検証システムと方法およびプログラム
JP2008226207A (ja) シミュレーション装置
JP2005038253A (ja) テスト方法、テストシステム、及び、プログラム
JP5314959B2 (ja) 情報処理装置、及びその制御方法、コンピュータプログラム、記憶媒体
JP2007140954A (ja) オペレータ擬似システムおよびオペレータ擬似方法
JP2014029708A (ja) 情報処理装置、ソフトウェア動作テストシステム、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体
US7962796B2 (en) State testing device and methods thereof
JP2007286654A (ja) シーケンサシミュレーション装置
JP2021064318A (ja) 画像形成装置、アプリケーションプログラム及びテスト方法
JP5627320B2 (ja) 動画保存装置及び動画保存システム
CN107544833A (zh) 图像处理装置、调试支援方法以及记录有调试支援程序的计算机可读取的记录介质
CN110806981A (zh) 一种应用程序测试方法、装置、设备和存储介质
JP7073653B2 (ja) 情報処理装置
JP2010170459A (ja) テストシステム、テスト方法およびテストプログラム
JP2021182207A (ja) プログラマブル・コントローラ(plc)用制御プログラムのシミュレーションシステム、シミュレーション方法及びシミュレーションプログラム
JP6383331B2 (ja) 制御エミュレータ及びi/oエミュレータ

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: 20121121

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: 20130405

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130618

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130816

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: 20130924

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131007

R151 Written notification of patent or utility model registration

Ref document number: 5396759

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees