説明

ソフトウェアテスト装置

【課題】
本発明の目的は、複数台の計算機のテストを同時に並行して可能であると共に、表示の差異があってもオペレータが適宜判断しながらテスト可能なソフトウェアテスト装置を提供することにある。
【解決手段】
テスト計算機1が複数台の被テスト計算機5に要求するキャプチャ領域について各被テスト計算機5から送信されるキャプチャ画像のうち、選択した複数台の被テスト計算機5のキャプチャ画像を合成して表示装置3に表示する。各被テスト計算機5のキャプチャ画像の相違を目視判断して複数台の被テスト計算機5におけるソフトウェアのテストを実行する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ソフトウェアテスト装置に関し、特にマルチプラットフォーム上で動作するソフトウェアの同時テストを行うことのできるソフトウェアテスト装置に関する。
【背景技術】
【0002】
計算機のソフトウェアテスト装置としては、多くのソフトウェア装置が提案されている。例えば、下記特許文献1には、予めテスト手順を登録しておき、当該テスト手順を順次複数台の計算機で実行し、各計算機の実行結果を比較してテスト結果の検証を行う自動テスト装置が開示されている。
【0003】
【特許文献1】特開平5-46435公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
従来技術は、複数台の計算機の出力結果が完全に一致していない場合、エラーと判定されるため、Webブラウザ上で動作するWebアプリケーション等において、問題の無い範囲で微妙に表示が異なるような場合でもエラーとなりテスト中止になるという問題点を有する。
【0005】
本発明の目的は、複数台の計算機のテストを同時に並行して可能であると共に、表示の差異があってもオペレータが適宜判断しながらテスト可能なソフトウェアテスト装置を提供することにある。
【課題を解決するための手段】
【0006】
本発明の特徴とするところは、テスト計算機が複数台の被テスト計算機に要求するキャプチャ領域について各被テスト計算機から送信されるキャプチャ画像のうち、選択した複数台の被テスト計算機のキャプチャ画像を合成して表示し、各被テスト計算機のキャプチャ画像の相違を目視判断して複数台の被テスト計算機におけるソフトウェアのテストを実行するようにしたことにある。
【発明の効果】
【0007】
本発明は複数台の被テスト計算機のキャプチャ画像を合成して表示し、各被テスト計算機のキャプチャ画像の相違を目視判断して複数台の被テスト計算機におけるソフトウェアのテストしているので、問題の無い範囲で微妙に表示に差異があってもオペレータが適宜判断しながらテスト可能でテスト中止となる確率を低減できる。
【発明を実施するための最良の形態】
【0008】
1台のテスト計算機は入力装置と表示装置を有し、オペレータがソフトウェアのテスト作業を実行する。複数台の被テスト計算機はテスト対象のソフトウェアを動作させる。1台のテスト計算機と複数台の被テスト計算機でソフトウェアテスト装置を構成する。テスト計算機は、各被テスト計算機に要求するキャプチャ領域を設定するキャプチャ領域設定手段と、キャプチャ領域設定手段により設定した領域のキャプチャ画像を各被テスト計算機に要求するキャプチャ画像要求手段と、各被テスト計算機から送信されるキャプチャ画像のうち、選択した複数台の被テスト計算機のキャプチャ画像を合成した合成キャプチャ画像を生成するキャプチャ画像合成手段と、キャプチャ画像合成手段により合成したキャプチャ画像を表示装置のキャプチャ画像表示領域に表示するキャプチャ画像表示手段とを具備する。キャプチャ画像合成手段は、選択した複数台の被テスト計算機におけるキャプチャ画像の各画素をOR演算で合成した合成キャプチャ画像を生成する。各被テスト計算機から送信されるキャプチャ画像の相違により複数台の被テスト計算機におけるソフトウェアの実行を目視判断する。
【実施例】
【0009】
以下、本発明の一実施例について図面を参照して説明する。
【0010】
図1に本発明の一実施例を示す。
【0011】
図1において、1はオペレータがテストを実行するテスト計算機、2はマウス、キーボード等の入力装置、3はCRT等の表示装置、4は記憶装置、5はテストするソフトウェアが動作する複数台の被テスト計算機である。
【0012】
テスト計算機1は、キャプチャ領域を設定するキャプチャ領域設定手段11、該キャプチャ領域設定手段11により設定した領域のキャプチャ画像を各被テスト計算機5に要求するキャプチャ画像要求手段12、各被テスト計算機5を表すアイコンを表示装置3に表示するアイコン表示手段、1番目の被テスト計算機5から取得したキャプチャ画像とその他の被テスト計算機4から取得したキャプチャ画像を比較してキャプチャ画像間に差異がある場合、差異のある被テスト計算機5に対応するアイコンの色・形状等を変更するアイコン変更手段14、各被テスト計算機5のうち表示選択した被テスト計算機5から取得したキャプチャ画像の各画素をOR(論理和)演算で合成した合成キャプチャ画像を生成するキャプチャ画像合成手段15、該キャプチャ画像合成手段15により合成したキャプチャ画像を表示装置3に表示するキャプチャ画像表示手段16、該キャプチャ画像表示手段16により表示したキャプチャ画像上で入力装置2を用いて実行したイベントを各被テスト計算機5に送信するイベント送信手段17から構成されている。
【0013】
被テスト計算機5は、キャプチャ画像要求手段12の要求に対して、キャプチャ領域設定手段11で設定した領域のキャプチャ画像をテスト計算機1に送信するキャプチャ画像送信手段18、イベント送信手段17により送信されたイベントを被テスト計算機5で発生させるイベント発生手段19から構成されている。にテスト計算機1と複数台の被テスト計算機5はネットワーク20により接続されている。
【0014】
図2は表示装置3に表示される画面表示の一例を示す。図2は2台の被テスト計算機5を表示している例を示している。
【0015】
図2において、キャプチャ画像表示領域31にはキャプチャ画像表示手段16によりキャプチャ画像が表示される。キャプチャ画像表示領域31に表示されるキャプチャ画像は2台の被テスト計算機5のキャプチャ画像をキャプチャ画像合成手段15で合成した合成画像である。
【0016】
アイコン32a、32bは2台の被テスト計算機5を表している。アイコン32a、32bにはキャプチャ画像合成手段15による被テスト計算機5のキャプチャ合成画像を表示するのを選択する表示選択ボックス33a,33bが設けられている。表示選択ボックス33aと表示選択ボックス33bで共に「表示」を選択すると、1台目の被テスト計算機5のキャプチャ画像と2台目の被テスト計算機5のキャプチャ画像をキャプチャ画像合成手段15で合成する。
【0017】
表示選択ボックス33aで「表示」、表示選択ボックス33bで「非表示」を選択した場合には、キャプチャ画像合成手段15は単に1台目のキャプチャ画像をコピーする。また、表示選択ボックス33aで「非表示」、表示選択ボックス33bで「表示」を選択した場合には、キャプチャ画像合成手段15は単に2台目のキャプチャ画像をコピーする。
【0018】
3台以上の被テスト計算機5の場合も同様であり、キャプチャ画像合成手段15は「表示」を選択した被テスト計算機5のキャプチャ画像を選択して合成する。
【0019】
実行動作選択ボックス34は「キャプチャ領域設定」、若しくは「テスト実行」のいずれかの実行動作を選択するものであり、キャプチャ領域の設定を行う場合は「キャプチャ領域設定」、テストを実行する場合は「テスト実行」を選択する。
【0020】
図3はキャプチャ管理レコードの一例であり、被テスト計算機5の台数分のレコードが記憶装置4に格納される。
【0021】
図3において、キャプチャ管理レコード40は、被テスト計算機名称フィールド41、キャプチャ領域左上座標フィールド42、キャプチャ領域右下座標フィールド43、表示フラグフィールド44およびキャプチャ画像格納フィールド45から形成されている。
【0022】
図4にキャプチャ領域設定の処理手順を示すフローチャートを示す。
【0023】
オペレータがステップ100において実行動作選択ボックス34の「キャプチャ領域設定」を選択すると、キャプチャ領域設定手段11は被テスト計算機5に対応するアイコン32の表示選択ボックス33の選択状態を全て「非表示」に設定し、記憶装置4に格納されている全てのキャプチャ管理レコード40の表示フラグフィールド44に「0」(非表示)を設定する。
【0024】
ステップ101に移行し、オペレータが領域設定を行う被テスト計算機5に対応する表示選択ボックス33の「表示」を選択すると、キャプチャ領域設定手段11は選択した被テスト計算機5に対応するキャプチャ管理レコード40の表示フラグフィールド44の値を「1」(表示)に設定する。キャプチャ画像要求手段12はステップ102において選択した被テスト計算機5に全領域のキャプチャ画像を要求するキャプチャ画像要求メッセージを送信する。
【0025】
図5にキャプチャ画像要求メッセージの一例構成を示す。キャプチャ画像要求メッセージ50は、要求するキャプチャ領域の左上座標を格納するフィールド51と要求するキャプチャ領域の右下座標を格納するフィールド52から形成される。左上座標と右下座標の2点を対角とする矩形領域がキャプチャ画像要求メッセージの要求するキャプチャ画像の領域となる。
【0026】
被テスト計算機5の描画領域は、例えば、左上を(0,0)、右下を(1023,767)というように、画面のピクセルの値を使用する。全領域のキャプチャ画像を要求するには、キャプチャ領域左上座標フィールド51に(0,0)、キャプチャ領域右下座標フィールド52に(1023,767)を設定したキャプチャ画像要求メッセージ50を送信する。
【0027】
被テスト計算機5はステップ201でキャプチャ画像要求メッセージ50を受信すると、キャプチャ画像送信手段18はキャプチャ画像要求メッセージ50のキャプチャ領域左上座標フィールド51、及びキャプチャ領域右下座標フィールド52からキャプチャ領域を取得し、ステップ202に移り要求された領域のキャプチャ画像を生成してステップ203に移行してテスト計算機1に送信する。
【0028】
テスト計算機1のキャプチャ画像要求手段12がステップ103で被テスト計算機5から送信されたキャプチャ画像を受信すると、キャプチャ画像表示手段16はステップ104に移行して受信したキャプチャ画像をキャプチャ画像表示領域31に表示する。
【0029】
次に、オペレータがステップ105において、キャプチャ画像表示領域31の領域内でソフトウェアのテストに関係する領域、例えばWebブラウザのフレーム内部の領域対角の2点を入力装置2のマウスでクリック、あるいはラバーバンドにより領域指定を行うと、キャプチャ領域設定手段11はステップ106において被テスト計算機5に対応するキャプチャ管理レコード40のキャプチャ領域左上座標フィールド42とキャプチャ画像右下座標フィールド43に各々領域指定した左上座標、及び右下座標を格納する。キャプチャ領域設定手段11はステップ106で座標データを記憶装置4に格納する。
【0030】
なお、キャプチャ画像表示領域31にキャプチャ画像を等倍表示した場合は、キャプチャ画像表示領域31の左上を(0,0)とする相対座標を取ればよいが、キャプチャ画像表示領域31にキャプチャ画像を縮小表示している場合には、その縮小倍率にあわせて座標値を調整する。即ち、キャプチャ画像を1/2倍表示しているのであれば、キャプチャ画像表示領域31の左上を(0,0)として相対指定した座標値を2倍した座標値を該被テスト計算機5に対応するキャプチャ管理レコード40のキャプチャ領域左上座標フィールド42とキャプチャ領域右下座標フィールド43に格納する。
【0031】
このようなキャプチャ領域設定処理は各被テスト計算機5毎に行われ、ステップ107においてキャプチャ領域設定を行っていない被テスト計算機5が存在すると判断するとステップ101に戻り繰り返しキャプチャ領域設定処理が実行される。全ての被テスト計算機5についてキャプチャ領域設定が終了すると、キャプチャ領域設定処理が完了する。
【0032】
なお、全ての被テスト計算機5についてキャプチャ領域設定を行うようにしているが、1台の被テスト計算機5についてキャプチャ領域設定を行い、他の被テスト計算機5についてはこの設定座標値を使用するようにすることもできる。また、2台目以降の被テスト計算機5へのキャプチャ領域の設定時には1台目のキャプチャ領域で設定した領域をデフォルト表示し、位置を微調整してキャプチャ領域の位置決めを行えるようにすることもできる。
【0033】
図6にテスト実行のフローチャートを示す。
【0034】
ステップ301においてオペレータが実行動作選択ボックス34で「テスト実行」を選択すると、キャプチャ領域設定手段11はステップ302においてアイコン形状や記憶装置4にキャプチャ画像合成用領域を作成するなどの初期化処理を実行する。キャプチャ画像要求手段12はステップ304において記憶装置4から1台目(1番目)の被テスト計算機5に対応するキャプチャ管理レコード40を読み込み、また、ステップ305に移りキャプチャ要求メッセージ50を被テスト計算機5に送信する。
【0035】
被テスト計算機5はステップ401でキャプチャ要求メッセージ50を受信すると、キャプチャ画像送信手段18はステップ402においてキャプチャ画像要求メッセージ50のキャプチャ領域左上座標と右下座標に基づき要求された領域のキャプチャ画像を生成し、ステップ403に移行して生成したキャプチャ画像をテスト計算機1に送信する。
【0036】
テスト計算機1のキャプチャ画像要求手段12はステップ306で被テスト計算機5から送信されたキャプチャ画像を受信し、ステップ307に移行してキャプチャ管理レコード40のキャプチャ画像フィールド45にキャプチャ画像を格納する。
【0037】
キャプチャ画像合成手段12はステップ308において被テスト計算機5におけるキャプチャ管理レコード40の表示フラグフィールド44の値を判定する。表示フラグが「1」(表示)であればステップ309に移行する。キャプチャ画像合成手段12はステップ309でキャプチャ画像合成用領域の各画素とキャプチャ画像の各画素のOR(論理和)演算結果をキャプチャ画像合成用領域に書き込みステップ310に移行する。ステップ308で表示フラグ44の値が「0」(非表示)と判定するとステップ310に移行する。
【0038】
キャプチャ画像表示手段16はステップ310において現在処理中の被テスト計算機5が1台目であると判断するとステップ313に移る。キャプチャ画像表示手段16はステップ310で2台目以降であると判断すると、ステップ311に移り2台目以降の被テスト計算機5におけるキャプチャ画像と1台目の被テスト計算機5に対応するキャプチャ管理レコード40のキャプチャ画像フィールド45から取り出したキャプチャ画像を表示装置3のキャプチャ画像表示領域31に表示する。
【0039】
オペレータはステップ311において表示装置4に重ね合わせ表示された2台の被テスト計算機5のキャプチャ画像を目視によって一致しているか判断する。表示位置や文字フォントなどが問題の無い範囲で微妙に表示に差異があってもオペレータが一致しているとし適宜判断しながらテストする。
【0040】
ステップ311で一致していると判断するとステップ313に移り、また、不一致と判断するとアイコン変更手段14はステップ312において該当するテスト計算機5のアイコン32の色・形状等により他のアイコンと識別可能な状態に表示する。このように該当するテスト計算機5のアイコン32を変更してステップ313に移行する。
【0041】
オペレータはステップ313で未処理の被テスト計算機5があると判断するとステップ304に戻り繰り返し実行する。未処理の被テスト計算機5がなければステップ314でキャプチャ画像表示領域31にオペレータによるイベント(マウス移動・マウスクリック・キーボード入力等)が発生したか否かをチェックし、イベントが無かった場合にはステップ302の初期設定処理に戻る。イベント送信手段17はイベントが有った場合にはステップ315で当該イベントに対応するイベントメッセージを生成して全被テスト計算機5に送信するステップ302に戻る。
【0042】
図7はイベントメッセージの一例構成を示す。イベントメッセージ60はイベント種別フィールド61とイベントデータフィールド62から形成されている。イベント種別フィールド61はマウス移動、マウスクリック、キーボード入力等のイベント種別を格納し、イベントデータフィールド62は、例えばイベント種別がマウスクリックであれば、マウスクリックした座標、キーボード入力であればキーボード入力した文字列が格納される。
【0043】
被テスト計算機5はステップ404でイベントメッセージ60を受信すると、イベント発生手段19は、イベントメッセージ60のイベント種別フィールド61、及びイベントデータフィールド62から、各々イベント種別、及びイベントデータを取り出し、ステップ405において被テスト計算機5に当該イベントを発生させステップ401に戻る。
【0044】
このようにしてマルチプラットフォーム上で動作するソフトウェアの同時テストを行うのであるが、複数台の被テスト計算機のキャプチャ画像を合成して表示し、各被テスト計算機のキャプチャ画像の相違を目視判断して複数台の被テスト計算機におけるソフトウェアのテストしているので、問題の無い範囲で微妙に表示に差異があってもオペレータが適宜判断しながらテスト可能でテスト中止となる確率を低減できる。特にブラウザ上で動作するWebアプリケーションの同時テストに好適である。
【図面の簡単な説明】
【0045】
【図1】本発明の一実施例を示す機能ブロック図である。
【図2】本発明の表示画面の一例構成図である。
【図3】本発明のキャプチャ管理レコードの一例構成図である。
【図4】本発明の動作を説明するためのフローチャートである。
【図5】本発明のキャプチャ画像要求メッセージの一例構成図である。
【図6】本発明の動作を説明するためのフローチャートである。
【図7】本発明のイベントメッセージの一例構成図である。
【符号の説明】
【0046】
1…テスト計算機、2…入力装置、3…表示装置、4…記憶装置、5…被テスト計算機、11…キャプチャ領域設定手段、12…キャプチャ画像要求手段、13…アイコン表示手段、14…アイコン変更手段、15…キャプチャ画像合成手段、16…キャプチャ画像表示手段、17…イベント送信手段、18…キャプチャ画像送信手段、19…イベント発生手段、20…ネットワーク。

【特許請求の範囲】
【請求項1】
入力装置と表示装置を有し、オペレータがソフトウェアのテスト作業を実行する1台のテスト計算機と、テスト対象のソフトウェアが動作する複数台の被テスト計算機からなるソフトウェアテスト装置であって、前記テスト計算機は、前記各被テスト計算機に要求するキャプチャ領域を設定するキャプチャ領域設定手段と、前記キャプチャ領域設定手段により設定した領域のキャプチャ画像を前記各被テスト計算機に要求するキャプチャ画像要求手段と、前記各被テスト計算機から送信されるキャプチャ画像のうち、選択した複数台の被テスト計算機のキャプチャ画像を合成した合成キャプチャ画像を生成するキャプチャ画像合成手段と、前記キャプチャ画像合成手段により合成したキャプチャ画像を前記表示装置のキャプチャ画像表示領域に表示するキャプチャ画像表示手段とを具備し、前記各被テスト計算機から送信されるキャプチャ画像の相違により前記複数台の被テスト計算機におけるソフトウェアのテストを実行することを特徴とするソフトウェアテスト装置。
【請求項2】
請求項1において、キャプチャ画像合成手段は、選択した複数台の被テスト計算機におけるキャプチャ画像の各画素をOR演算で合成した合成キャプチャ画像を生成することを特徴とするソフトウェアテスト装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate