JP2010198335A - ソフトウェア自動試験装置およびその方法 - Google Patents
ソフトウェア自動試験装置およびその方法 Download PDFInfo
- Publication number
- JP2010198335A JP2010198335A JP2009042608A JP2009042608A JP2010198335A JP 2010198335 A JP2010198335 A JP 2010198335A JP 2009042608 A JP2009042608 A JP 2009042608A JP 2009042608 A JP2009042608 A JP 2009042608A JP 2010198335 A JP2010198335 A JP 2010198335A
- Authority
- JP
- Japan
- Prior art keywords
- test
- information
- operation instruction
- software
- instruction information
- 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.)
- Pending
Links
Images
Abstract
【課題】CUIおよびGUIによる試験に対応でき、かつ、ソフトウェアがインストールされる複数台の計算機の実行環境が異なる場合でも試験を同時に行う。
【解決手段】試験指示装置10が、試験対象ソフトウェアに対してユーザから入力された操作情報を取得し、この操作情報に基づいて操作指示情報を作成し、試験対象ソフトウェアを試験実行装置20へ配布する。試験実行装置20が、試験指示装置10において作成された操作指示情報を試験実行装置20における実行環境に対応させる定義情報に基づいて実行環境に適合した新たな操作指示情報に変換し、この新たな操作指示情報に基づいて試験指示装置10から配布された試験対象ソフトウェアの試験を実行し、その試験結果を試験指示装置10へ出力する。そして、試験指示装置10が、試験実行装置20における試験対象ソフトウェアの試験結果を表示する。
【選択図】図1
【解決手段】試験指示装置10が、試験対象ソフトウェアに対してユーザから入力された操作情報を取得し、この操作情報に基づいて操作指示情報を作成し、試験対象ソフトウェアを試験実行装置20へ配布する。試験実行装置20が、試験指示装置10において作成された操作指示情報を試験実行装置20における実行環境に対応させる定義情報に基づいて実行環境に適合した新たな操作指示情報に変換し、この新たな操作指示情報に基づいて試験指示装置10から配布された試験対象ソフトウェアの試験を実行し、その試験結果を試験指示装置10へ出力する。そして、試験指示装置10が、試験実行装置20における試験対象ソフトウェアの試験結果を表示する。
【選択図】図1
Description
本発明は、複数台の計算機にインストールされたソフトウェアを同時にテストするソフトウェア自動試験装置およびその方法に関する。
計算機にインストールされたソフトウェアの実行試験を効率的に行うための種々の装置が提案されている。例えば、テスト計算機が複数台の被テスト計算機に要求するキャプチャ領域について被テスト計算機の各々から送信されるキャプチャ画像のうち、選択したキャプチャ画像を合成して表示することで被テスト計算機のキャプチャ画像の相違を目視で判断し、複数台の被テスト計算機におけるソフトウェアの実行テストを行うソフトウェアテスト装置が知られている(特許文献1参照)。
しかしながら、上記従来技術においては、GUI(Graphical User Interface)による操作を中心として複数台の計算機を同時にテストする構成のため、コマンドの入力によって動作するソフトウェアをテスト対象とするCUI(Character-based User Interface)による試験には適用できないという問題があった。
また、ソフトウェアがインストールされる被テスト計算機においてOSやフォルダ構成などの実行環境が異なる場合には、同一の試験を行うためにもソフトウェアを実行環境に適合するように変更しなければならず、作業員の負担が大きかった。
そこで、本発明は、上記従来技術の問題に鑑み、CUIおよびGUIによる試験に対応でき、かつ、ソフトウェアがインストールされる複数台の計算機の実行環境が異なる場合でも実行試験を同時に行えるソフトウェア自動試験装置およびその方法を提供することを目的とする。
本発明に係るソフトウェア自動試験装置は、試験対象ソフトウェアに対する操作指示情報を作成する試験指示装置と、この試験指示装置に接続され、前記操作指示情報に基づいて前記試験対象ソフトウェアを実行する試験実行装置と、からなり、前記試験指示装置は、前記試験対象ソフトウェアに対してユーザから入力された操作情報を取得し、この操作情報に基づいて操作指示情報を作成する操作指示情報作成部と、前記試験対象ソフトウェアを格納する試験対象ソフトウェア格納部と、前記格納された試験対象ソフトウェアを前記試験実行装置へ配布する配布処理部と、前記試験実行装置における前記試験対象ソフトウェアの試験結果を表示する試験結果処理部と、を備え、かつ、前記試験実行装置は、前記試験指示装置において作成された前記操作指示情報を前記試験実行装置における実行環境に対応させる定義情報を記憶する定義情報記憶部と、前記操作指示情報を前記定義情報に基づいて前記実行環境に適合した新たな操作指示情報に変換する操作指示情報変換部と、前記新たな操作指示情報に基づいて前記試験指示装置から配布された前記試験対象ソフトウェアの試験を実行し、その試験結果を前記試験指示装置へ出力する実行処理部と、を備えることを特徴とする。
本発明に係るソフトウェア自動試験方法は、試験対象ソフトウェアに対する操作指示情報を作成する試験指示装置と、この試験指示装置に接続され、前記操作指示情報に基づいて前記試験対象ソフトウェアを実行する試験実行装置と、からなるコンピュータシステムにおけるソフトウェア自動試験方法であって、前記試験指示装置が、前記試験対象ソフトウェアに対してユーザから入力された操作情報を取得し、この操作情報に基づいて操作指示情報を作成する操作指示情報作成ステップと、前記試験指示装置が、前記試験対象ソフトウェアを前記試験実行装置へ配布する配布処理ステップと、前記試験実行装置が、前記試験指示装置において作成された前記操作指示情報を前記試験実行装置における実行環境に対応させる定義情報に基づいて前記実行環境に適合した新たな操作指示情報に変換する操作指示情報変換ステップと、前記試験実行装置が、前記新たな操作指示情報に基づいて前記試験指示装置から配布された前記試験対象ソフトウェアの試験を実行し、その試験結果を前記試験指示装置へ出力する実行処理部と、前記試験指示装置が、前記試験実行装置における前記試験対象ソフトウェアの試験結果を表示する試験結果処理ステップと、を有することを特徴とする。
本発明によれば、CUIおよびGUIによる試験に対応でき、かつ、ソフトウェアがインストールされる複数台の計算機の実行環境が異なる場合でも実行試験を同時に行えるソフトウェア自動試験装置およびその方法が提供される。
以下、本発明の実施形態について図面を用いて詳細に説明する。
<実施形態1>
図1は、実施形態1に係るソフトウェア自動試験装置の全体構成例を示すブロック図である。同図に示されるように、本実施形態に係るソフトウェア自動試験装置は、試験指示装置10に第1の試験実行装置20、第2の試験実行装置30、および第3の試験実行装置40がLANなどのネットワーク(図示省略する)を介してそれぞれ接続されたコンピュータシステムである。尚、以下ではシステムを構成するネットワーク上の各装置をノードと呼ぶ。
図1は、実施形態1に係るソフトウェア自動試験装置の全体構成例を示すブロック図である。同図に示されるように、本実施形態に係るソフトウェア自動試験装置は、試験指示装置10に第1の試験実行装置20、第2の試験実行装置30、および第3の試験実行装置40がLANなどのネットワーク(図示省略する)を介してそれぞれ接続されたコンピュータシステムである。尚、以下ではシステムを構成するネットワーク上の各装置をノードと呼ぶ。
試験指示装置10は、試験対象ソフトウェア格納部101、入出力部102、操作指示情報作成部103、ノードメモリ部104、配布処理部105、ノードファイル記憶部106、同期処理部107、および試験結果処理部108を備え、各試験実行装置に対して所望のソフトウェアを配布後に操作指示情報を出力して試験を行わせると共に、その試験結果を収集するコンピュータである。
試験対象ソフトウェア格納部101は、試験実行装置において動作試験の対象とするソフトウェア(以下、「試験対象ソフトウェア」という。)を記憶する記憶装置である。尚、試験対象ソフトウェア格納部101には、同一機能の試験対象ソフトウェアが試験実行装置のOSの種類毎に備えられているものとする。
入出力部102は、マウスやキーボードなどの入力装置(図示省略する)から入力されたデータを取得する機能と、液晶ディスプレイやプリンターなどの出力装置(図示省略する)へ各部における処理データ等を出力する機能を備えるプログラムである。
操作指示情報作成部103は、試験対象ソフトウェアに対してユーザから入力された操作情報(コマンド入力、画面操作など)を取得し、この操作情報に基づいて操作指示情報を作成するプログラムである。図2は、操作指示情報作成部103においてGUI操作に対して作成される操作指示情報の具体例を示す図である。ここでは、種別、動作情報、座標情報、スリープ時間、ループ情報、入力フォームID、および入力文字列が項目として例示されている。例えば、データ例(1)は、試験対象ソフトウェアの実行時に画面上で“X座標:210,Y座標:152”の箇所にマウスポインタを移動させ、“DoubleClick”の動作を行わせる操作指示情報である。また、データ(5)は、フォームIDが“form_1”のフォームに“ABCDEFG”の文字列を入力させる操作指示情報である。
また、図3は、操作指示情報作成部103においてCUI操作に対して作成される操作指示情報の具体例を示す図である。ここでは、種別、動作情報、コマンド、コマンド引数、フォルダ情報が項目として例示されている。例えば、データ(1)は、試験対象ソフトウェアに対してコマンド“Command1”を発行し、そのコマンド引数として“Arg1”および“Arg2”を用いて処理を行わせる操作指示情報である。
ノードメモリ部104は、試験指示装置10および試験実行装置(20、30、40)の各々に対応するように分類されたノードメモリを有し、少なくとも操作指示情報および試験結果を装置間で共有可能に記憶する記憶装置である。ノードメモリは、共有メモリを使用したノード間の情報共有手段の一つであり、ノード毎に設けられることにより、自装置(以下、「自ノード」という。)から配信するデータと他の装置(以下、「他ノード」という。)から受信したデータがノード毎に管理される。
配布処理部105は、試験対象ソフトウェア格納部101に格納された試験対象ソフトウェアをノードファイル記憶部106へ出力し、同期処理部107を介して各試験実行装置へ配布させるプログラムである。また、本実施形態において、配布処理部105は、試験対象ソフトウェアをノードファイル記憶部106に記憶させると共に、そのインストール指示情報を操作指示情報作成部103へ出力し、操作指示情報としてノードメモリ部104に記憶させる。
ノードファイル記憶部106は、試験指示装置10および試験実行装置(20、30、40)の各々に対応するように分類されたノードファイルを装置間で共有可能に記憶する記憶装置であり、少なくとも試験対象ソフトウェアおよび試験結果に係るファイルをノードファイルとして記憶する。ノードファイルは、ノード間の情報共有手段の一つであり、ノード毎に作成されることにより、自ノードから配信するファイルと他ノードから受信したファイルはノード毎に管理される。
同期処理部107は、ノードメモリおよびノードファイルを所定の周期で検証し、更新時に装置間の同期処理を行うプログラムである。ノードメモリ、ノードファイル、および同期処理の関係については後述する。
試験結果処理部108は、各試験実行装置(20、30、40)における試験対象ソフトウェアの試験結果を処理し、入出力部102を介して表示するプログラムである。
第1の試験実行装置20は、同期処理部201、ノードメモリ部202、ノードファイル記憶部203、定義情報記憶部204、操作指示情報変換部205、および実行処理部206を備えるコンピュータである。また、第2の試験実行装置30および第3の試験実行装置40は、第1の試験実行装置20と同様の機能を備えるコンピュータであるが、OSが各々異なっている。尚、本実施形態においては第1の試験実行装置20、第2の試験実行装置30、および第3の試験実行装置40のOSをそれぞれWindows(登録商標)、Solaris(登録商標)、Linux(登録商標)とし、台数を3台としているが、試験実行装置の台数やOSの種類はこれに限定されず、任意に設計変更可能とする。
同期処理部201、ノードメモリ部202、およびノードファイル記憶部203は、上述した試験指示装置10の同期処理部107、ノードメモリ部104、およびノードファイル記憶部106とそれぞれ共通するプログラムまたは記憶装置である。
以下、試験指示装置10との間の同期処理を図4および図5に基づいて説明する。図4は、ノードメモリ部104およびノードメモリ部202の関係を説明する図である。同図に示されるように、試験指示装置10のノードメモリ部104は、同期処理部107(図示省略する)における同期処理によって自ノード(試験指示装置10)から送信するデータを記憶する自ノードメモリ104Mと他ノード(試験実行装置20〜40)から受信したデータを記憶する3つの他ノードメモリ104A〜Cから構成されている。ここでは、自ノードメモリ104Mには操作指示情報XおよびY、他ノードメモリ104A〜Cには操作指示情報XおよびYに対して各ノードで行われた試験結果データXおよびYがそれぞれ記憶されている。
これに対し、第1の試験実行装置20のノードメモリ部202は、同期処理部201(図示省略する)における同期処理によって自ノードから送信するデータを記憶する自ノードメモリ202Mと他ノード(試験指示装置10)から受信するデータを記憶する他ノードメモリ202Aから構成されている。ここでは、他ノードメモリ202Aには、他ノード(試験指示装置10)から受信した操作指示情報XおよびYが記憶され、自ノードメモリ202Mには、操作指示情報XおよびYに対して自ノードで行われた試験結果データXおよびYがそれぞれ記憶され、試験指示装置10との通信によりノード間で情報が共有されることが例示されている。
図5は、ノードファイル記憶部106およびノードファイル記憶部203の関係を説明する図である。同図に示されるように、試験指示装置10のノードファイル記憶部106は、同期処理部107(図示省略する)における同期処理によって自ノードから送信するノードファイルを記憶する自ノードファイル記憶領域106Mと他ノード(試験実行装置20〜40)から受信したノードファイルを記憶する3つの他ノードファイル記憶領域106A〜Cから構成されている。ここでは、自ノードファイル記憶領域106Mには試験対象ソフトウェアA、他ノードファイル記憶領域106A〜Cには試験対象ソフトウェアに対して行われた試験結果情報を記録したログファイルがノードファイルとして記憶されている。
これに対し、ノードファイル記憶部203は、同期処理部201(図示省略する)における同期処理によって自ノードから送信するノードファイルを記憶する自ノードファイル記憶領域203Mと他ノード(試験指示装置10)受信したノードファイルを格納する他ノードファイル記憶領域203Aから構成されている。ここでは、他ノードファイル記憶領域203Aには他ノード(試験指示装置10)から受信した試験対象ソフトウェアが記憶され、他メモリ202Mには、操作指示情報に対して自ノードで行われた試験結果であるログファイル(node20_result_A.log)が記憶され、試験指示装置10との通信によりノード間で情報が共有されることが例示されている。
定義情報記憶部204は、試験指示装置10において作成された操作指示情報を各試験実行装置(20、30、40)における実行環境に適合させる定義情報を記憶する記憶装置である。試験実行装置毎に異なる値を設定しなければならない場合や、OSに応じた値を設定する場合に、その対応関係を予め定義しておく。図6は、定義情報記憶部204に記憶される定義情報の具体例を説明する図である。ここでは、ノード番号、送信先ノード番号、OS情報、フォルダ情報が項目として挙げられており、ノード番号が“20”、ノードのOSが“Windows(登録商標)”、試験対象ソフトウェアの格納先が“C:\Folder\”、試験結果の送信先のノードのノード番号が“10”であることを示している。尚、定義情報の項目は任意に変更できる。例えば、フォルダ情報を複数持たせてもよく、試験指示装置10側でインストール指示情報の中に定義情報の項目No(定義No)を含めることによりインストール先の指定が可能となる。この場合、各試験実行装置の記憶する定義情報の項目順序を同一とすると好適である。
操作指示情報変換部205は、試験指示装置10から受信した操作指示情報を定義情報記憶部204の定義情報に基づいて自ノードの実行環境(OSやフォルダ構成など)に適合した新たな操作指示情報に変換するプログラムである。
実行処理部206は、操作指示情報変換部205において出力された新たな操作指示情報に基づいて試験指示装置10から配布された試験対象ソフトウェアの試験を実行し、その試験結果を試験指示装置10へ出力するプログラムである。また、ノードメモリ部202を参照して試験対象ソフトウェアのインストール指示情報が存在する場合には、定義情報を参照して試験対象ソフトウェアのインストールを行う。
図7は、本発明の実施形態1に係るソフトウェア自動試験装置の処理の具体例を示すシーケンス図である。ここでは、説明を簡潔にするため試験指示装置10と第1の試験実行装置20との間の処理について説明するが、試験実行装置が第2の試験実行装置30および第3の試験実行装置40の場合も同様である。
S701において、試験指示装置10は、試験対象ソフトウェアをノードファイル記憶部106に自ノードファイルとして書込む。
S702において、試験指示装置10の同期処理部107は、ノードファイル記憶部106を参照し、配布処理部105で指定された試験対象ソフトウェアを第1の試験実行装置20に配布する。
S702において、試験指示装置10の同期処理部107は、ノードファイル記憶部106を参照し、配布処理部105で指定された試験対象ソフトウェアを第1の試験実行装置20に配布する。
S703において、第1の試験実行装置20の同期処理部201は、試験指示装置10より配布された試験対象ソフトウェアをノードファイル記憶部203に書込む。これに伴い、実行処理部206は、定義情報とインストール指示情報に基づいて試験対象ソフトウェアをインストールする。
S704において、試験指示装置10の操作指示情報作成部103は、画面上での操作状況を監視し、操作情報を取得する。操作情報の具体例としては、ユーザが行ったイベントの種別(Click、DoubleClick等)、イベント時のマウスポインタの座標、入力されたコマンドや文字列の情報などが挙げられる。
S704において、試験指示装置10の操作指示情報作成部103は、画面上での操作状況を監視し、操作情報を取得する。操作情報の具体例としては、ユーザが行ったイベントの種別(Click、DoubleClick等)、イベント時のマウスポインタの座標、入力されたコマンドや文字列の情報などが挙げられる。
S705において、試験指示装置10の操作指示情報作成部103は、取得された操作情報を解析し、所定のフォーマットの操作指示情報を作成すると共に、操作指示情報を自ノードメモリ104Mに書込む。
S706において、試験指示装置10の同期処理部107は、ノードファイル記憶部106を参照し、自ノードメモリ104Mに書込まれた操作指示情報を第1の試験実行装置20(他ノード)へ送信する。
S707において、第1の試験実行装置20の同期処理部201は、試験指示装置10より送信された操作指示情報を受信すると、その操作指示情報を試験指示装置10用の他ノードメモリ202Aに書込む。
S708において、第1の試験実行装置20の操作指示情報変換部205は、他ノードメモリ202Aに書込まれている試験指示装置10からの操作指示情報を所定の周期で読込む。
S708において、第1の試験実行装置20の操作指示情報変換部205は、他ノードメモリ202Aに書込まれている試験指示装置10からの操作指示情報を所定の周期で読込む。
S709において、第1の試験実行装置20の操作指示情報変換部205は、読込んだ操作指示情報を定義情報記憶部204に記憶された定義情報に基づいて自ノードの実行環境に適合した新たな操作指示情報に変換する。
S710において、第1の試験実行装置20の実行処理部206は、変換された操作指示情報を取得し、これに基づいて試験対象ソフトウェアを実行する。
S710において、第1の試験実行装置20の実行処理部206は、変換された操作指示情報を取得し、これに基づいて試験対象ソフトウェアを実行する。
S711において、第1の試験実行装置20の実行処理部206は、操作指示情報に基づく試験対象ソフトウェアの実行結果を自ノードメモリ202Mに書込む。
S712において、第1の試験実行装置20の実行処理部206は、試験対象ソフトウェアの実行結果に係るログファイルを自ノードファイルとして自ノードファイル記憶領域204Mに書込む。
S713において、第1の試験実行装置20の同期処理部201は、自ノードメモリ202Mおよび自ノードファイル記憶領域204Mより試験結果に係るデータおよびファイルを抽出し、試験指示装置10へ送信する。
S713において、第1の試験実行装置20の同期処理部201は、自ノードメモリ202Mおよび自ノードファイル記憶領域204Mより試験結果に係るデータおよびファイルを抽出し、試験指示装置10へ送信する。
S714において、試験指示装置10の同期処理部107は、第1の試験実行装置20から送信された試験結果を受信し、他ノードメモリ104Aおよび他ノードファイル記憶領域106Aにそれぞれ書込む。
S715において、試験指示装置10の試験結果処理部108は、他ノードメモリ104Aおよび他ノードファイル記憶領域106Aから取得した試験結果を入出部102へ出力して画面表示し、処理を終了する。
S715において、試験指示装置10の試験結果処理部108は、他ノードメモリ104Aおよび他ノードファイル記憶領域106Aから取得した試験結果を入出部102へ出力して画面表示し、処理を終了する。
図8は、配布処理部105の処理の具体例を示すフローチャートである。
S801においては、入出力部102においてユーザから入力された配布要求の有無を判定する。ここで、配布要求有りと判定された場合には、S802へ進む。これに対し、配布要求無しと判定された場合には、配布要求があるまで待機状態を維持する。
S801においては、入出力部102においてユーザから入力された配布要求の有無を判定する。ここで、配布要求有りと判定された場合には、S802へ進む。これに対し、配布要求無しと判定された場合には、配布要求があるまで待機状態を維持する。
S802においては、試験対象ソフトウェアをインストールさせ、試験を実行させたい配布先ノードを決定する。
S803においては、配布先ノードのOS情報を取得する。
S803においては、配布先ノードのOS情報を取得する。
S804においては、試験対象ソフトウェアの保存先を決定する。試験指示装置10における保存先の指定方法の例としては、定義情報中の項目No(定義No)を指定することで行う方法が挙げられる。
S805においては、試験対象ソフトウェアの配布先ノードおよび保存先の情報を含むインストール指示情報を操作指示情報作成部103に出力し、自ノードメモリ104Mに書込む。
S806においては、配布先ノードのOSに対応した試験対象ソフトウェアを試験対象ソフトウェア格納部101より取得し、自ノードファイルとしてノードファイル記憶部106の自ノードファイル記憶領域106M内に書込み、処理を終了する。
図9は、操作指示情報作成部103の処理の具体例を示すフローチャートである。
S901においては、試験管理画面(図示省略する)などにおいてユーザにより選択された試験対象ソフトウェアの操作方法(GUIまたはCUI)を取得する。
S902においては、選択された試験種別を取得する。ここでは、試験種別は、複数の操作指示情報を定義したシナリオ情報を読込むことにより連続した処理を行うシナリオ試験と、操作指示情報を逐次読込むことで処理を行うリアルタイム試験の二つから選択される。
S903においては、入出力部102を介してユーザにより選択された試験対象ソフトウェアを起動する。
S904においては、ユーザによる操作の有無を判定する。ここで、試験対象ソフトウェアに対してユーザが操作(コマンド入力やマウスのクリックなど)を行ったと判定された場合には、S905へ進む。これに対し、ユーザによる操作は無いと判定された場合には、操作があるまで待機状態が維持される。
S905においては、ユーザが試験対象ソフトウェアに対して行った操作情報を取得する。例えば、ユーザが画面内のボタンAを押下した場合した場合には、そのボタンの識別IDとイベント情報(Click)などが操作情報として取得される。
S906においては、操作情報を所定のフォーマットに変更した操作指示情報を作成する。尚、本実施形態では、操作方法および試験種別に係る情報が操作指示情報の中に含まれ、送信対象となるものとする。
S907においては、作成された操作指示情報をノードメモリ部104の自ノードメモリ104Mに書込み、処理を終了する。
図10は、同期処理部107および同期処理部201の処理の具体例を示すフローチャートである。ここでは、説明を簡潔にするため、試験指示装置10を自ノード、第1の試験実行装置20を他ノードとして説明する。
S1001においては、自ノードメモリ104Mの更新の有無を判定する。ここで、更新有りと判定された場合には、S1002へ進む。これに対し、更新無しと判定された場合には、S1003へ進む。
S1002においては、他ノードへ自ノードメモリ104Mの更新情報を送信する。
S1003においては、自ノードファイル記憶領域106Mを参照し、未送信の自ノードファイルの有無を判定する。ここで、未送信の自ノードファイル有りと判定された場合には、S1004へ進む。これに対し、未送信の自ノードファイル無しと判定された場合には、S1005へ進む。
S1004においては、他ノードへ自ノードファイルを送信する。
S1005においては、他ノードからノードメモリの更新情報の受信があったか否かを判定する。ここで、ノードメモリの更新情報の受信有りと判定された場合には、S1006へ進む。これに対し、更新情報の受信無しと判定された場合には、S1007へ進む。
S1006においては、他ノードより受信した更新情報によって自ノード内の他ノードメモリ104Aの更新を行う。
S1007においては、他ノードから他ノードファイルの受信があったか否かを判定する。ここで、他ノードファイルの受信有りと判定された場合には、S1008へ進む。これに対し、他ノードファイルの受信無しと判定された場合には、処理を終了する。
S1008においては、受信された他ノードファイルを自ノード内の他ノードファイル記憶領域106Aに書き込み、処理を終了する。
図11は、操作指示情報変換部205の処理の具体例を示すフローチャートである。
S1101においては、所定の周期で試験指示装置10に係る他ノードメモリ202Aを参照し、未処理の操作指示情報の有無を判定する。ここで、未処理の操作指示情報が有ると判定された場合には、S1102へ進む。これに対し、未処理の操作指示情報が無いと判定された場合には、処理を終了する。
S1102においては、他ノードメモリ202Aより操作指示情報を1操作ずつ読込む。
S1101においては、所定の周期で試験指示装置10に係る他ノードメモリ202Aを参照し、未処理の操作指示情報の有無を判定する。ここで、未処理の操作指示情報が有ると判定された場合には、S1102へ進む。これに対し、未処理の操作指示情報が無いと判定された場合には、処理を終了する。
S1102においては、他ノードメモリ202Aより操作指示情報を1操作ずつ読込む。
S1103においては、読込まれた操作指示情報を解析し、定義情報に基づいて自ノードにおける実行環境に対応する新たな操作指示情報へ変換する。図12は、操作指示情報変換部205における変換処理を説明する図である。ここでは、操作指示情報の種別が“処理”、動作情報が“Log”、フォルダ情報が“Def4”、ファイル情報が“def.log”であり、試験実行装置において定義情報“Def4”で指定されるフォルダ内のファイル“def.log”をログファイルとして出力させる操作指示情報を示している。この場合、操作指示情報内のパスは試験実行装置のOSに応じた定義情報に基づいて変換される。例えば、Windows(登録商標)の場合には、“C;\Folder\abc\def.log”、Solaris(登録商標)の場合は“/home/Folder/abc/def.log”と変換されることが示されている。同様に、CUI試験においてコマンドを実行させる場合には、操作指示情報内で指定されるコマンド情報を定義情報に基づいてOSに特有のコマンドに変換することで、OSの差異を吸収できる。
S1104においては、操作指示情報に基づいて試験種別がシナリオ試験か否かを判定する。ここで、シナリオ試験と判定された場合には、S1105へ進む。これに対し、リアルタイム試験と判定された場合には、S1107へ進む。
S1105においては、変換された操作指示情報をバッファ領域(図示省略する)に蓄積する。
S1106においては、未変換の操作指示情報の有無を判定する。ここで、操作指示情報が有ると判定された場合には、S1102へ戻る。S1102〜S1106の処理は、試験種別がリアルタイム試験の場合を除き、未処理の操作指示情報が無くなるまで繰り返され、S1107へ進む。
S1107においては、変換された操作指示情報を実行処理部206へ出力し、処理を終了する。
図13は、実行処理部206の処理の具体例を示すフローチャートである。
S1301においては、試験指示装置10に係る他ノードメモリ202Aを参照し、操作指示情報の有無を判定する。ここで、操作指示情報有りと判定された場合には、S1302へ進む。これに対して、操作指示情報無しと判定された場合には、処理を終了する。
S1302においては、操作指示情報がインストール指示情報か否かを判定する。ここで、操作指示情報がインストール指示情報であると判定された場合には、S1303へ進む。これに対し、操作指示情報が実行試験に係る操作情報と判定された場合には、S1304へ進む。
S1303においては、インストール指示情報に基づいてノードファイル記憶部203から試験対象ソフトウェアを取得し、インストールを行う。
S1304においては、操作指示情報を1操作ずつ読込む。
S1305においては、操作指示情報に基づいて試験対象ソフトウェアを実行する。例えば、操作指示情報が“種別:処理,動作情報:Click,X座標:210,Y座標:152”の場合には、試験実行装置における表示画面上でマウスポインタが指定座標まで自動で移動し、クリックが行われる。
S1306においては、操作指示情報に基づく試験対象ソフトウェアの試験結果情報を自ノードメモリ202Mに書込む。
S1307においては、試験対象ソフトウェアの操作方法がCUIか否かを判定する。ここで、操作方法がCUIと判定された場合には、S1308へ進む。これに対し、操作方法がGUIと判定された場合には、S1309へ進む。
S1308においては、試験結果であるログファイルを出力し、ノードファイルとしてノードファイル記憶部203に書込み、S1301へ戻る。
S1309においては、試験結果であるキャプチャ画像ファイルを生成し、ノードファイルとしてノードファイル記憶部203に書込み、S1301へ戻る。
このように、S1301〜S1309の処理は、全ての操作指示情報の処理が行われるまで繰返し行われる。
上記処理により、試験指示装置10では、ノード毎の試験結果が対応するノードメモリに配信される。また、ログファイルなどのファイルも、ノード毎に配信されて管理される。そして、試験結果処理部108において試験結果が読込まれ、画面表示されることで、ユーザは試験結果を確認することが出来る。
上記のように、本実施形態に係るソフトウェア自動試験装置によれば、以下の効果が奏される。
(1)動作情報や位置情報を使ってマウス操作を行うことができる。また、コマンド入力をサポートすることにより、コマンド入力によるソフトウェアの試験にも対応できる。これにより、ソフトウェア試験の対象範囲の拡張することが出来る。
(2)ノードメモリを使うことで試験の操作指示情報が他の計算機に自動で配信されるので、リアルタイム試験とシナリオ試験の双方に対応できる。また、複数台の計算機に操作指示情報を配信することで、試験工数や人員を削減し、試験効率が向上する。
(3)OSや試験実行装置毎に異なる値などを予め定義情報として設定しておくことで、マルチプラットフォームにも対応出来る。
(4)ソフトウェアの配布を一元管理することで、バージョンアップにも柔軟に対応出来る。
(1)動作情報や位置情報を使ってマウス操作を行うことができる。また、コマンド入力をサポートすることにより、コマンド入力によるソフトウェアの試験にも対応できる。これにより、ソフトウェア試験の対象範囲の拡張することが出来る。
(2)ノードメモリを使うことで試験の操作指示情報が他の計算機に自動で配信されるので、リアルタイム試験とシナリオ試験の双方に対応できる。また、複数台の計算機に操作指示情報を配信することで、試験工数や人員を削減し、試験効率が向上する。
(3)OSや試験実行装置毎に異なる値などを予め定義情報として設定しておくことで、マルチプラットフォームにも対応出来る。
(4)ソフトウェアの配布を一元管理することで、バージョンアップにも柔軟に対応出来る。
<実施形態2>
以下、実施形態2に係るソフトウェア自動試験装置について図面に基づいて説明する。尚、実施形態1と共通する符号は同一の対象を表すため、説明を省略し、異なる点について詳細に説明する。
以下、実施形態2に係るソフトウェア自動試験装置について図面に基づいて説明する。尚、実施形態1と共通する符号は同一の対象を表すため、説明を省略し、異なる点について詳細に説明する。
図14は、本発明の実施形態2に係るソフトウェア自動試験装置の全体構成例を示すブロック図である。同図に示されるように、本実施形態に係るソフトウェア自動試験装置は、実施形態1と比較してネットワーク上に試験対象サーバ50が追加されている点が異なっている。試験対象サーバ50は、試験指示装置10から出力された操作指示情報に基づいて第1の試験実行装置20、第2の試験実行装置30、および第3の試験実行装置40から出力される処理要求に基づいて処理を実行し、その処理結果を各試験実行装置へ返すコンピュータである。
図15は、定義情報記憶部204に記憶される定義情報の具体例を説明する図である。ここでは、各試験実行装置に対するネットワーク上のどの装置がサーバノードとなるのかがOS毎に定義されている。このように定義することにより、試験指示装置10から出力された操作指示情報に基づいて各試験実行装置から試験対象サーバ50に同時に処理要求を行うことができる。そして、その試験結果が各試験実行装置に返されると、ノードメモリおよびノードファイルの同期処理によって試験指示装置10で全ノードから試験結果を収集可能となる。
尚、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。すなわち、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
例えば、上記実施形態においては、試験指示装置10と各試験実行装置とをLANを介して接続する構成としたが、ネットワークの種類に限定はない。図16は、本発明の他の実施形態に係るソフトウェア自動試験装置の全体構成例を示すブロック図である。同図に示されるように、インターネットを経由して、遠隔地にあるN台の試験対象サーバ60−1〜Nに必要なソフトウェアを配信してインストールすることもできる。これにより、試験指示装置10より、必要な試験操作を行って複数台の試験対象サーバの同時試験を実行することが可能となる。例えば、広範囲なエリアを監視している監視システムにおいて、地域毎に監視サーバを配置しているような場合に適用できる。従来、各地域に監視サーバが配備されている場合には、各監視サーバが正常に動作しているか否か等を確認するためには各地を作業員が巡回する必要があったが、本発明を適用することで、監視サーバの状態を収集するテストコマンドを監視サーバ毎に予め用意しておけば、各地に赴くことなく一斉にテストコマンドを実行することが出来る。尚、インターネットを使用する場合は、セキュリティ面については考慮し、要件に応じてVPNなどを使用すると好適である。
また、定義情報を試験指示装置10側に記憶する形式とし、試験実行装置のOSに適合した試験指示情報を試験対象ソフトウェアと同様に配信しても良い。任意に設計変更可能である。
10…試験指示装置、
20…第1の試験実行装置、
30…第2の試験実行装置、
40…第3の試験実行装置、
101…試験対象ソフトウェア格納部、
102…入出力部、
103…操作指示情報作成部、
104…ノードメモリ部、
104M…自ノードメモリ、
104A〜C…他ノードメモリ、
105…配布処理部、
106…ノードファイル記憶部、
106M…自ノードファイル記憶領域、
106A〜C…他ノードファイル記憶領域、
107…同期処理部、
108…試験結果処理部、
201…同期処理部、
202…ノードメモリ部、
202M…自ノードメモリ、
202A…他ノードメモリ、
203…ノードファイル記憶部、
203M…自ノードファイル記憶領域、
203A…他ノードファイル記憶領域、
204…定義情報記憶部、
205…操作指示情報変換部、
206…実行処理部。
20…第1の試験実行装置、
30…第2の試験実行装置、
40…第3の試験実行装置、
101…試験対象ソフトウェア格納部、
102…入出力部、
103…操作指示情報作成部、
104…ノードメモリ部、
104M…自ノードメモリ、
104A〜C…他ノードメモリ、
105…配布処理部、
106…ノードファイル記憶部、
106M…自ノードファイル記憶領域、
106A〜C…他ノードファイル記憶領域、
107…同期処理部、
108…試験結果処理部、
201…同期処理部、
202…ノードメモリ部、
202M…自ノードメモリ、
202A…他ノードメモリ、
203…ノードファイル記憶部、
203M…自ノードファイル記憶領域、
203A…他ノードファイル記憶領域、
204…定義情報記憶部、
205…操作指示情報変換部、
206…実行処理部。
Claims (5)
- 試験対象ソフトウェアに対する操作指示情報を作成する試験指示装置と、
この試験指示装置に接続され、前記操作指示情報に基づいて前記試験対象ソフトウェアを実行する試験実行装置と、
からなり、
前記試験指示装置は、
前記試験対象ソフトウェアに対してユーザから入力された操作情報を取得し、この操作情報に基づいて操作指示情報を作成する操作指示情報作成部と、
前記試験対象ソフトウェアを格納する試験対象ソフトウェア格納部と、
前記格納された試験対象ソフトウェアを前記試験実行装置へ配布する配布処理部と、
前記試験実行装置における前記試験対象ソフトウェアの試験結果を表示する試験結果処理部と、
を備え、かつ、
前記試験実行装置は、
前記試験指示装置において作成された前記操作指示情報を前記試験実行装置における実行環境に対応させる定義情報を記憶する定義情報記憶部と、
前記操作指示情報を前記定義情報に基づいて前記実行環境に適合した新たな操作指示情報に変換する操作指示情報変換部と、
前記新たな操作指示情報に基づいて前記試験指示装置から配布された前記試験対象ソフトウェアの試験を実行し、その試験結果を前記試験指示装置へ出力する実行処理部と、
を備えることを特徴とするソフトウェア自動試験装置。 - 複数台の前記試験実行装置が、ネットワークを介して試験対象サーバに各々接続されており、前記試験実行装置の各々が、前記操作指示情報に基づく処理要求を前記試験対象サーバに対して同時に行うことを特徴とする請求項1記載のソフトウェア自動試験装置。
- 前記試験指示装置および前記試験実行装置の各々は、
前記試験指示装置および前記試験実行装置の各々に対応して分類されたノードメモリを有し、少なくとも前記操作指示情報および前記試験結果を装置間で共有可能に記憶するノードメモリ部と、
前記試験指示装置および前記試験実行装置の各々に対応して分類されたノードファイルとして、少なくとも前記試験対象ソフトウェアおよび前記試験結果に係るファイルを装置間で共有可能に記憶するノードファイル記憶部と、
前記ノードメモリおよび前記ノードファイルを所定の周期で比較し、同期処理を行う同期処理部と、
を更に備えることを特徴とする請求項1または請求項2記載のソフトウェア自動試験装置。 - 前記配布処理部は、ユーザから入力された配布指令に基づいて前記試験対象ソフトウェアを前記ノードファイルとして前記ノードファイル記憶部に出力し、前記同期処理部を介して前記試験実行装置へ自動配布することを特徴とする請求項3記載のソフトウェア自動試験装置。
- 試験対象ソフトウェアに対する操作指示情報を作成する試験指示装置と、この試験指示装置に接続され、前記操作指示情報に基づいて前記試験対象ソフトウェアを実行する試験実行装置と、からなるコンピュータシステムにおけるソフトウェア自動試験方法であって、
前記試験指示装置が、前記試験対象ソフトウェアに対してユーザから入力された操作情報を取得し、この操作情報に基づいて操作指示情報を作成する操作指示情報作成ステップと、
前記試験指示装置が、前記試験対象ソフトウェアを前記試験実行装置へ配布する配布処理ステップと、
前記試験実行装置が、前記試験指示装置において作成された前記操作指示情報を前記試験実行装置における実行環境に対応させる定義情報に基づいて前記実行環境に適合した新たな操作指示情報に変換する操作指示情報変換ステップと、
前記試験実行装置が、前記新たな操作指示情報に基づいて前記試験指示装置から配布された前記試験対象ソフトウェアの試験を実行し、その試験結果を前記試験指示装置へ出力する実行処理部と、
前記試験指示装置が、前記試験実行装置における前記試験対象ソフトウェアの試験結果を表示する試験結果処理ステップと、
を有することを特徴とするソフトウェア自動試験方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009042608A JP2010198335A (ja) | 2009-02-25 | 2009-02-25 | ソフトウェア自動試験装置およびその方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009042608A JP2010198335A (ja) | 2009-02-25 | 2009-02-25 | ソフトウェア自動試験装置およびその方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010198335A true JP2010198335A (ja) | 2010-09-09 |
Family
ID=42822994
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009042608A Pending JP2010198335A (ja) | 2009-02-25 | 2009-02-25 | ソフトウェア自動試験装置およびその方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010198335A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014229169A (ja) * | 2013-05-24 | 2014-12-08 | コニカミノルタ株式会社 | アプリケーション登録システム、コンピュータ、アプリケーション提供サーバ、アプリケーション登録方法、およびコンピュータプログラム |
JP2016071397A (ja) * | 2014-09-26 | 2016-05-09 | 株式会社野村総合研究所 | テスト実行装置、テスト実行方法およびコンピュータプログラム |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0511341B2 (ja) * | 1986-07-14 | 1993-02-15 | Fujitsu Ltd | |
JPH06103104A (ja) * | 1992-09-18 | 1994-04-15 | Hitachi Ltd | リモートデバッグ方法 |
JPH11120028A (ja) * | 1997-10-13 | 1999-04-30 | Nec Corp | プログラム移植サポート方式 |
JP2001188761A (ja) * | 1999-12-28 | 2001-07-10 | Ntt Data Corp | 情報共有システム及び方法 |
JP2004252585A (ja) * | 2003-02-18 | 2004-09-09 | Matsushita Electric Ind Co Ltd | プログラム検証システム |
-
2009
- 2009-02-25 JP JP2009042608A patent/JP2010198335A/ja active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0511341B2 (ja) * | 1986-07-14 | 1993-02-15 | Fujitsu Ltd | |
JPH06103104A (ja) * | 1992-09-18 | 1994-04-15 | Hitachi Ltd | リモートデバッグ方法 |
JPH11120028A (ja) * | 1997-10-13 | 1999-04-30 | Nec Corp | プログラム移植サポート方式 |
JP2001188761A (ja) * | 1999-12-28 | 2001-07-10 | Ntt Data Corp | 情報共有システム及び方法 |
JP2004252585A (ja) * | 2003-02-18 | 2004-09-09 | Matsushita Electric Ind Co Ltd | プログラム検証システム |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014229169A (ja) * | 2013-05-24 | 2014-12-08 | コニカミノルタ株式会社 | アプリケーション登録システム、コンピュータ、アプリケーション提供サーバ、アプリケーション登録方法、およびコンピュータプログラム |
JP2016071397A (ja) * | 2014-09-26 | 2016-05-09 | 株式会社野村総合研究所 | テスト実行装置、テスト実行方法およびコンピュータプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7434167B2 (en) | Accessibility system and method | |
JP4701220B2 (ja) | ビジネスプロセス再構成方法、そのプログラム及び計算機 | |
US8640034B2 (en) | Remote GUI control by replication of local interactions | |
US20100058481A1 (en) | Non-displaying method of secret information and information processing device | |
JP2010526390A (ja) | メッシュ−分散デバイス集合にわたるデーター管理 | |
US20230017701A1 (en) | Intelligent lifecycle management of analytic functions for an iot intelligent edge with a hypergraph-based approach | |
JP2015219890A (ja) | 管理装置、その制御方法およびプログラム | |
JP6332533B2 (ja) | 情報処理装置、その処理方法及びプログラム | |
US20200264847A1 (en) | System and method that support application software development | |
JP2007128356A (ja) | 情報処理装置及び方法及びシステム | |
CN110348225A (zh) | 针对应用程序接口的安全漏洞确定方法和装置 | |
AU2003201954B2 (en) | Accessibility system events mechanism and method | |
US20040061714A1 (en) | Logical element tree and method | |
KR101888472B1 (ko) | BPM 기반의 IoT DIY 시스템 및 이의 구현방법 | |
KR101748548B1 (ko) | IoT네트웍 시스템 | |
JP5519458B2 (ja) | プラント監視制御システムおよび表示画面管理方法 | |
US9164746B2 (en) | Automatic topology extraction and plotting with correlation to real time analytic data | |
JP2010198335A (ja) | ソフトウェア自動試験装置およびその方法 | |
US9250885B2 (en) | Image forming apparatus operating based on framework capable of sharing function among a plurality of bundles and method of installing bundle in image forming apparatus | |
KR101681154B1 (ko) | 데이터 수집기 구축 방법, 이를 수행하는 데이터 수집기 구축 서버 및 이를 저장하는 기록매체 | |
JP2007122691A (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP6427910B2 (ja) | 保守環境提供システム、保守環境提供装置、保守環境提供方法、及び、そのプログラム | |
US20220206455A1 (en) | Information providing system, server, and information providing method | |
WO2017122365A1 (ja) | 逆コマンド生成プログラム、逆コマンド生成方法及び逆コマンド生成装置 | |
JP6178810B2 (ja) | 構成情報収集装置、構成情報収集方法、及び構成情報収集プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110330 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110823 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20111220 |