JP2006268666A - 補正機能を持つ自動試験システム、自動試験方法、およびプログラム - Google Patents

補正機能を持つ自動試験システム、自動試験方法、およびプログラム Download PDF

Info

Publication number
JP2006268666A
JP2006268666A JP2005088604A JP2005088604A JP2006268666A JP 2006268666 A JP2006268666 A JP 2006268666A JP 2005088604 A JP2005088604 A JP 2005088604A JP 2005088604 A JP2005088604 A JP 2005088604A JP 2006268666 A JP2006268666 A JP 2006268666A
Authority
JP
Japan
Prior art keywords
script
log
image
correction
test
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.)
Withdrawn
Application number
JP2005088604A
Other languages
English (en)
Inventor
Atsushi Nishimura
敦 西村
Hidenori Sotozaki
秀教 外崎
Akira Shinosawa
明 篠澤
Yasuhiro Noma
康弘 野間
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2005088604A priority Critical patent/JP2006268666A/ja
Publication of JP2006268666A publication Critical patent/JP2006268666A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

【課題】 本発明はソフトウェア開発の試験工程にて適用する。アプリケーションを動作させるためのスクリプトを有する試験環境において、アプリケーションの挙動を分析してスクリプトを自動的に補正するものである。
【解決手段】
GUIを有するシステムの自動試験において、自動試験を行うための自動試験システムがGUIを制御するタイミングと画像情報とを比較した結果(ログ情報)を保存し、補正ツールがそのログ情報を解析し、自動試験システムのスクリプトを修正し試験時のエラーを排除する補正機能を持つ自動試験システム。
【選択図】図1

Description

本発明は、アプリケーションを動作させるためのスクリプトを有する試験環境において、アプリケーションの挙動を分析してスクリプトを自動的に補正する技術に関する。
近年、ソフトウェア開発における試験作業は次第に自動化される傾向にある。試験の自動化は、試験工数を削減するだけではなく、試験操作や結果判断の正確性を向上させ、ソフトウエアの開発には欠かせない有効なツールとなっている。
また、アプリケーションにおいては可視化が進み、GUI(Graphical User Interface)を用いたスタイルが多用されるようになってきている。
こうした試験の自動化やGUIアプリケーションの多用に対して、GUIアプリケーションに関する試験を自動化する試みがなされている。例えば、予め用意しておいた画像情報と、実際に試験対象のアプリケーションを動作させたときの画像情報とを比較し、GUIアプリケーションの挙動の良否を判断するといった技術などが提案されている(特許文献1参照)。
しかしながら、従来の試験システムは、スクリプト内に設定してある画像比較タイミングが、GUIの実際の挙動と一致していないとき、試験を継続することができなくなり試験作業に支障が生じていた。その中断した試験システムを期待通りに動作させるため、スクリプトは人手で修正せざるを得ず、多くの工数を必要としていた。
特開平8−241191号公報
そこで、上記問題を解決するため、本発明の試験システムでは、GUIの様々な画像パターンを用意しておき、試験スクリプトを実行したときのGUIの挙動と画像パターンを比較し、結果をログ情報として記録しておき、そのログ情報を解析することによって、エラーログに対し試験スクリプトを自動補正する技術を提供する。
第一の発明は、グラフィカルユーザインタフェースシステムを試験するスクリプトの補正機能を持つ自動試験システムであって、前記システムの試験スクリプトを実行させることによって表示される実行画面と予め画像情報ファイルに登録された画像とを比較する結果・画像比較手段と、前記結果・画像比較手段における比較結果をログ情報ファイルとして出力するログ出力手段と、前記ログ情報ファイルを参照し、該ログ情報の中から画面不一致となったエラーログの実行タイミングを解析するログ解析手段と、前記ログ解析手段によって解析されたエラーログに対する補正値を特定し、該補正値にしたがって前記試験スクリプトを自動的に補正するスクリプト補正手段と、を有することを特徴とする自動試験システムに関する。
すなわち、第一の発明によれば、結果・画像比較手段が、GUIの試験スクリプトを実行させて得られたGUIシステムの実画面と予め登録された画像を比較し、ログ出力手段が、その比較結果をログ情報ファイルとして出力し、ログ解析手段が、ログ情報ファイルからエラーログを検出して、どのタイミングで画面不一致が発生していたのかを解析し、スクリプト補正手段が、解析結果に基づいてエラーログに対する試験スクリプトの補正を行うことで、エラーが自動的に排除され、ソフトウェア開発の試験者がエラー内容を意識することなく、試験スクリプトに期待通りの動作を実現させることが可能となる。
これによって、従来煩雑となっていたソフトの試験作業を円滑に進めることが可能となり、また、試験スクリプトの保守が容易となる。
第二の発明は、前記スクリプト補正手段の補正値は、前記システムの実行画面と前記画像ファイルに登録された画像とを比較する際の画面切替の比較周期、あるいは比較回数として設定されることを特徴とする上記第一の発明に記載の自動試験システムに関する。
すなわち、第二の発明によれば、スクリプト補正部は、切替画面の比較補正値として、100ms、50ms、10msといった比較周期情報、あるいは、10回、20回、30回などの比較回数情報を定義しておくことによって、試験者が意図する情報で試験スクリプトを実行させることができ、無駄な試験をすることがなくなり、試験の作業効率を向上させるものとなる。
第三の発明は、前記スクリプト補正手段は、予めユーザが定義した補正値をユーザ定義ファイル、あるいは過去の補正値による判定結果を蓄積した統計データファイルを参照してエラーを修正する補正値を決定することを特徴とする上記第一または第三の発明に記載の自動試験システムに関する。
すなわち、第三の発明によれば、スクリプト補正手段は、ユーザが予め定義した補正値、あるいは過去に補正値を適用した場合の成否の結果を基にした統計データによる補正値を採用するかの選択肢が広がり、より適正な試験の実行を可能とする。
本発明によれば、ログ解析手段が、ログ情報ファイルからエラーログを検出して、どのタイミングで画面不一致が発生していたのかを解析し、スクリプト補正手段が、解析結果に基づいてエラーログに対する試験スクリプトの補正を行うことによって、エラーが自動的に排除され、ソフトウェア開発の試験者がエラー内容を意識することなく、試験スクリプトに期待通りの動作を実現させることが可能となる。これによって、従来煩雑となっていたソフトの試験作業を円滑に進めることが可能となり、試験スクリプトの保守が容易となる。
また、試験者が、GUI試験スクリプトの予め比較周期、および比較回数を定義しておくことによって、試験者が意図する情報で試験スクリプトを実行させることができ、無駄な試験をすることがなくなり、試験の作業効率を向上させるものとなる。
さらに、過去に補正値を適用した場合の成否の結果を基にした統計データによる補正値を選択肢として加えることによって、より適正な試験の実行を可能とする。
以下、図面にもとづいて本発明の実施形態を説明する。
図1は、本発明の実施の形態になる補正機能を備えたGUI自動試験システムの基本構成を示す。本発明のシステムは、自動試験システム1と、その試験評価の対象となる各種イベントによって画面が切り替わるGUIシステム2とで構成される。
自動試験システム1は、自動試験システム全体を制御する自動試験制御部11、GUIシステム2を動作させるための試験スクリプトファイル100(サンプルデータ1−図2)と、GUI実行部12がGUIシステム2を試験スクリプトによって動作させた結果、表示される画面13と予め用意された画面情報ファイル200の画像情報とを比較する結果・画像比較部14、その比較結果をログ情報ファイル300(サンプルデータ2−図3)として出力するログ出力部15、ログ情報ファイル200のログ内容を解析し、どの手順で画像比較タイミングの不一致が発生していたかを解析するログ解析部16、および的確な補正値をスクリプトへ反映する(サンプルデータ3−図4)スクリプト補正部17で構成される。
上記したサンプルデータ1、サンプルデータ2、およびサンプルデータ3は、それぞれ図2、図3、および図4に示す。
図2は、本発明の実施の形態になるGUIアプリケーションの試験スクリプト例( サンプルデータ1: 補正前) を示す。試験スクリプトは、GUIを動作させるためのシナリオが書かれたスクリプトファイルで、補正機能を持つ自動試験装置1によって実行され、その実行の結果、表示される実画像が予めの登録画面と不一致となったときに、スクリプトの比較周期あるいは比較回数の値が補正される。
なお、試験スクリプトを実行させた結果、表示される実画面と比較する画像情報は、GUIシステムに表示される画像と同一の画像をイメージファイルとして格納したもので、試験者によって予め用意される。
実施例では、携帯電話に内蔵されたGUIアプリケーションがうまく動作しているかを試験するスクリプトを示しており、携帯電話の「モード設定」において、実画像の切替を確認する例を取り上げている。
スクリプトの各行のコマンドは、まず、携帯電話における各設定キーのテストを実行し、(a)行において、シナリオos−01の画像os−01−3.imgの繰り返し試験を500msの周期で20回実行することを意味している。
図3は、本発明の実施の形態になるGUIアプリケーションの試験スクリプト実行結果のログ内容( サンプルデータ2)を示す。サンプルデータ2は、ログ情報ファイル300としてログ出力部15によって出力されたサンプルデータ1の試験スクリプトを実行した結果、表示された実画面の判定結果のログ内容が、日時、試験内容、試験対象、および判定結果の情報として記されている。例では、(b)行において、画像の繰り返し試験がエラーとなり、「受信失敗」の判定が記されている。
図4は、本発明の実施の形態になるGUIアプリケーションの試験スクリプト例( サンプルデータ3: 補正後) を示す。サンプルデータ3は、ログ解析部16でエラーが解析され、スクリプト補正部17において、補正値を特定した上で、その特定した補正値をスクリプトに反映させた例を示している。
実施例では、(a)行において、比較周期が400ms、比較回数が25回に、スクリプトが補正された場合を示している。
図5は、本発明の実施の形態になる自動試験システムの補正処理の構成を示す。
自動試験システム1の補正処理する本構成図は、比較周期を補正する場合を想定したスクリプト補正部17の処理構成を示したものである。
補正処理の構成は、ユーザ定義または過去の統計データによる補正値を選択する補正手段特定部21、ユーザ定義による補正値を特定するユーザ定義補正値特定部22、補正値の上限を判断する補正値上限判定部23、ユーザ定義による上限値を特定するユーザ定義上限値特定部24、過去の補正による判断データを統計データDB(データベース)400に蓄積する統計データ蓄積部25、統計データファイル400を参照して統計データ補正値特定部26、および統計データファイル400を参照して上限値を特定する統計データ上限値特定部27とからなる。
図中の(ア)は、試験スクリプトに適用するユーザ定義補正値あり、例えば、10ms〜100msの比較周期の値と10回〜20回の比較回数が設定されていることを示す。
また、(イ)は、ユーザ定義補正値アの数値範囲から比較周期の上限値を10ms、比較回数の上限値を30回が設定された例を示している。
図6は、本発明の実施の形態になる自動試験システムにおけるエラー判定処理の構成を示す。本図は、ログの解析により試験項目やシステムのリトライを実施したり、エラー発生時の情報を通知したりするための手段について、具体的に実施する構成を示している。
ログの解析を行うログ解析部16は、エラーが発生した場合に補正限界内( 比較周期、比較回数の調整余地がある場合) か、補正限界超過( 比較周期、比較回数の上限値超過した場合)なのかを解析するエラー判定部20、補正限界超過時に情報を試験者へ通知する通信制御部30、その際にシステムやOS(Operating System)の再起動を実施する再起動制御部40、および再起動時に補正限界超過となった試験項目の次の項目から試験を実施するシナリオ起動制御部50とで構成される。
また、通信制御部30は、エラーメッセージをメール送信するメール送信部31、およびエラーメッセージを表示する表示部32とで構成される。
さらに、再起動制御部40は、試験スクリプト、GUIシステム2、およびパソコンの再起動を制御する試験スクリプト再実行制御部41、GUIシステム再起動制御部42、およびPC再起動制御部43で構成される。
ここで、本発明になる試験スクリプトの補正機能を持つ自動試験システム1の原理を説明する。GUI試験スクリプトで表示される実画像と登録画像の比較判定結果から以下の3つのケースにて以下の補正が想定される。
ケース1(確認OKの場合):自動試験システム1が正常に動作したときの例で、試験スクリプトに問題はないため試験スクリプトの補正は特に行わない。
ケース2(比較周期が長いことによる確認NGの場合):ログ情報ファイル300のログ内容をもとに比較周期が長いことによる失敗と判断した場合に相当し、スクリプト補正部17は、比較周期を段階的に短縮することによって、比較周期の適正値を求める。
ケース3(比較回数が少ないことによる確認NGの場合):ログ情報ファイル300のログ内容をもとに比較回数が少ないことによる失敗と判断した場合に相当し、スクリプト補正部17は、比較回数を段階的に増加させることによって、比較回数の適正値を求める。
さらに、試験スクリプトおよびその補正手順について説明する。
<試験スクリプト>
GUIを動作させるためのシナリオが書かれたスクリプトファイルであり、試験の目的によって試験者が自由に作成、変更が可能である。自動試験装置1の自動試験制御部11によって実行され、ログ解析部16によって解析された結果にしたがって、スクリプト補正部17によって補正される。以下に、試験スクリプトの例を説明する。
//モード設定時の動作を確認
//スクリプトの操作によって画像a が画像b、画像cと遷移することを確認
replywait wait 100 retry 10 b.img
//画像bと実際のGUI画像を100ms 周期、10回で比較
key # press 4000 count 1
//「#」キーを4000ms間、1回押下
loop end
//画像比較処理終了
replywait wait 100 retry 10 c.img
//画像cと実際のGUI画像を100ms周期にて10回比較
key # press 4000 count 1 wait 1000
//1000ms間待つ。
loop end
//画像比較処理終了
上記に適用される画像情報は、試験スクリプトを実行したときにGUIシステムに表示される画像をイメージファイルで、試験者によってが予め用意されるものである。
<スクリプト補正手順(周期補正のケース)>
□補正前の試験スクリプト
replywait wait 100 retry 10 b.img (→比較周期をXとする)
key # press 4000 count 1
loop end
replywait wait 100 retry 10 c.img
key # press 4000 count 1 wait 1000
loop end
□ユーザ定義補正値
補正手段 一定時間
比較周期情報(一定時間) 10(ms)(→定義値をYとする)
比較周期情報(一定割合) 10%

上記の条件における補正手順を以下に示す。
(1)試験スクリプトから画像比較周期Xを取得
X=100(ms)
(2)ユーザ定義補正値に「一定時間」と定義されているためユーザ定義補正値から比較 周期情報(一定時間)の値Yを取得
Y=10(ms)
(3)次式により補正値Zを算出
一定時間:X−Y=Z
一定割合:X*Y/100=Z
(4)ユーザ定義補正値に「一定時間」と定義されているため(3)の一定時間の算出式 を使用
Z=100(ms)−10(ms)=90(ms)
(5)Zを試験スクリプトへ反映
replywait wait 90 retry 10 b.img
<スクリプト補正手順(回数補正のケース)>
□補正前の試験スクリプト
replywait wait 100 retry 10 b.img (→比較回数をXとする)
key # press 4000 count 1
loop end
replywait wait 100 retry 10 c.img
key # press 4000 count 1 wait 1000
loop end
□ユーザ定義補正値
補正手段: 一定割合
比較回数情報(一定時間): 20回
比較回数情報(一定割合) 200% (→定義値をYとする)

上記の条件における補正手順を以下に示す。
(1)試験スクリプトから画像比較回数Xを取得
X=10(回)
(2)ユーザ定義補正値に「一定割合」と定義されているためユーザ定義補正値から比 較回数情報(一定割合)の値Yを取得
Y=200(%)
(3)次式により補正値Zを算出
一定時間:X+Y=C
一定割合:X*Y/100=Z
(4)ユーザ定義補正値に「一定割合」と定義されているため一定割合の算出式を使用
Z=10(回)*200(%)/100=20(回)
(5)Zを試験スクリプトへ反映
replywait wait 100 retry 20 b.img

つぎに、図7〜図20を用いて、補正機能を持つ自動試験装置1の動作フローについて説明する。
図7は、本発明の実施の形態になる自動試験システムにおけるGUI試験スクリプトを補正する全体の処理フローを示す。
まず、ステップS11において、自動試験制御部11は、試験スクリプトにそって、GUI実行部12を経由してGUIシステム2のGUIアプリケーションを実行する。ステップS12において、GUIを実行した結果、結果・画像比較部14によって、画面13に表示される実画像と予め用意された画像情報ファイル200の画像とが比較され、ステップS13で、ログ出力部によってログ情報ファイル300に実行結果が出力される。
さらに、ステップS14において、ログ解析手段16によって、上記出力されたログ情報ファイル300を参照しログ内容の解析が行われる。そして、ステップS15において、ログ情報にエラーが存在するか否かを判定する。その結果、エラー情報が存在しなければ処理は終了し、エラー情報が存在する場合は、ステップS16において、スクリプト補正部17が補正値を特定し、ステップS17において、その補正値にしたがって試験スクリプトを補正する。その後、自動試験制御部11によって、再度、補正した試験スクリプトにてGUIが実行される。
つぎに、本発明の主となる機能であるログ解析部およびスクリプト補正部の処理動作について図8および図9を用いて説明する。
図8は、本発明の実施の形態になるログ解析処理フローを示す。本フローは、図7の全体フローの中のステップS14のログ解析処理の詳細を述べたものである。
ステップS21において、ログ情報ファイル300を参照してログ解析処理を行い、ステップS22で、ログ情報にエラーがあるか否かを判定する。その結果、ログ情報内にエラーがあることを検出した場合、ステップS23において、どの画像を比較したときにエラーが発生したのかが特定できる画像比較処理識別番号と、画像比較時間内にアプリケーションの画像に変化があったかどうかが特定できる画像変化有無情報をスクリプト補正部17へ通知する。
ここで、画像変化有無情報は、変化前画像、変化後画像、および処理完了(初期画面)画像を用意しておき、試験スクリプトにおいて3パターンの画像とGUIの実際の画像を比較することによって求められる。
図9は、本発明の実施の形態になるスクリプト補正部の処理フローを示す。本フローは、図7のステップS16の補正値の特定を詳細にしたものである。
ステップS31において、スクリプト補正部17は、画像変化有無情報より画像に変化があったかどうかを判定する。画像に変化があった場合は、比較周期が大き過ぎて画像を取りこぼしたものと判断し、ステップS22に移行して比較周期を補正する処理を行い、画像の変化が無かった場合は、比較回数が少なかったために画像を取りこぼしたものと判断し、ステップS36に移行して比較回数を補正する処理を行う。
比較周期を補正する場合、ステップS32において、スクリプト補正部17は、試験スクリプト内に設定されている画像比較周期Xを取得し、ステップS33において、ユーザによって定義された比較周期情報の値Yを取得する。
つぎに、ステップS34において、上記取得したX、Yを用いて、試験スクリプト内に設定する補正値Zを算出する。ここで、比較周期情報は、Xから減算するための一定の時間でもよいし、Xに対する一定の割合でもよい。一定時間の場合は、Xに対してYを減算し、一定割合の場合は、Xに対してYを乗算して補正値を求める。
そして、ステップS35において、算出したZを補正値として試験スクリプト内の該当する比較処理箇所に反映させる。
また、比較回数を補正する場合、ステップS36において、スクリプト補正部17は、試験スクリプト内に設定されている画像比較回数Xを取得し、ステップS37において、ユーザによって定義された比較回数情報の値Yを取得する。
つぎに、ステップS38において、上記取得したX、Yを用いて、試験スクリプト内に設定する補正値Zを算出する。ここで、比較回数情報は、Xに加算するための一定の時間でもよいし、Yに対する一定の割合でもよい。一定時間の場合は、Xに対してYを加算し、一定割合の場合は、Xに対してYを乗算して補正値Zを求める。
そして、ステップS35において、算出したZを補正値として試験スクリプト内の該当する比較処理箇所に反映させる。
図10は、本発明の実施の形態になるエラー判定による再起動の処理フローを示す。
まず、ステップS41において、ログ解析部から試験結果を取得する。つぎに、ステップS42において、エラーの種別を判定する。
結果が正常( 正常結果画像との比較が一致) の場合は、ステップS43において、再起動情報を初期化( 無に設定) する。
また、結果が異常( 正常結果画像との比較が不一致) の場合は、ステップS44において、補正手段特定部21の処理に移り、ステップS45において、再起動情報を初期化( 無に設定) する。
さらに、結果が異常( 上記正常結果画像との比較が不一致で、エラー発生時画像との比較が一致) の場合は、ステップS46において、エラー結果の内容を指定された相手に通知する。通知方法は、メールや、ダイアログ表示を含むアプリケーションへの通知などがある。つぎに、ステップS47において、エラー試験の項目番号を取得する。そして、ステップS48において、再起動情報の有無を判定する。
その結果、再起動情報が「無」の場合は、ステップS51において、再起動情報を「有」に設定し、ステップS52で、GUIシステム2を再起動する。また、ステップS48において、再起動情報が「有」の場合は、ステップS49で、再起動情報を「有」に設定し、ステップS50において、OS再起動後にGUIシステムの再起動をおこなう。
なお、再起動実施前には、再起動情報を「有」に設定情報しておく。GUIシステムの再起動時には、試験スクリプトの修正により、既に成功している試験項目は実施せずに続きの項目の試験から実施する。
図11は、本発明の実施の形態になる補正手段選定の処理フローを示す。まず、ステップS61において、ユーザによって補正手段が指定されたユーザ定義ファイルから補正手段を取得する。ステップS62において、補正はユーザ定義とするか統計データとするかを判定する。指定された補正手段が、ユーザ定義の場合、ステップS63において、ユーザ定義補正値特定部へ補正値特定の依頼を行う。また、指定された補正手段が、統計データの場合、ステップS64において、統計データ補正値特定部へ補正値特定の依頼を行う。
なお、別な手段として、優先的に統計データを参照することとし、前回の試験で使用した補正値と統計データから求めた補正値が一致している場合は、前回の試験において統計データから抽出した補正値を使用していたものと見なして、次回の試験ではユーザ定義補正値を使用し、補正値が不一致の場合は、統計データ未使用と見なして統計データを取得する。これにより補正値の取得を統計データから取得するかユーザ定義データから取得するかの判別が不要となるため、ユーザが補正手段を定義する必要がなくなる。
図12は、本発明の実施の形態になる統計データDBのデータ構成を示す。
統計データDB(データベース)400は、エラー判定部より通知されたデータを統計データとして蓄積したもので、「項番」、GUI画像を比較する「比較周期」、「比較回数」、試験スクリプトを実行させたチェック結果を表す「結果」、試験スクリプトの「実行日時」、試験スクリプト処理項目の内容を表す「操作」、試験スクリプト処理の「シナリオ名」の各項目からなる複数のレコードで構成されている。
例えば、第一のレコードでは、項番001のアイテムは、シナリオ1に基づき、画像の比較周期100msおよび比較回数10回、操作は電話帳キー押下を条件に、シナリオ1が2004年11月26日に実行され、判定結果はOKとなったことを示している。
図13は、本発明の実施の形態になる統計データによる補正フローを示す。まず、ステップS71において、統計データDB400から統計データを取得する。その取得データから、同じ操作かつ結果がOKのものを対象として、以下に比較周期あるいは比較回数のそれぞれで平均値を求める。
ステップS72において、統計データとして算出可能かを判定し、NGであれば、ステップS73において、ユーザ定義補正値特定部に依頼を行う。また、ステップ74において、今回の実行がNGで統計データ補正値を用いて実行した結果かどうかを判定し、統計データを用いてもNGとなった場合は、ユーザ定義補正値特定部へ依頼を行う。
また、ステップS72において、統計データからの算出が可能で、かつ、ステップS74における統計データが補正済のものでなければ、ステップS75において、結果OKのもので同操作のデータから比較周期及び比較回数の平均値を算出する。
つぎに、ステップS76において、算出した平均値を補正値として試験スクリプトを補正する。
図14は、本発明の実施の形態になるスクリプトの補正値の変更処理フローを示す。本フローは、補正値制御部
ステップS81において、試験スクリプトに設定されている比較周期Sを取得する。つぎに、ステップS82において、比較周期情報の中から新たに設定する補正値Tを取得する。そして、ステップS83において、全補正値の候補を参照済みとなっているかを判定する。全て参照済みであれば、ステップS86において、エラールート( 通知、再起動、シナリオ起動)へ制御を渡す。
補正値候補が存在する場合は、ステップS84において、取得した比較周期SとTとを比較し、Sが小さければ、ステップS82に戻り、次の補正値を取得し再度比較をおこなう。一方、Sが大きければ、ステップS85において、Tを補正値として試験スクリプト内の該当する比較処理箇所に反映する。
図15は、本発明の実施の形態になるログ解析によるエラー検出の処理フローを示す。まず、ステップS91において、試験スクリプトファイル100の時刻情報を取得し、ステップS92において、補正があったか否かを判定する。補正がなければ処理を終了し、補正が有り、補正有無の判定が初回の場合は、ステップS93で、試験スクリプトによる自動試験を実施し、ステップS94において、結果・画像比較部14およびログ出力部15の処理を行い、ステップS95において、ログ解析の結果、エラーが有るかを判定する。その結果、エラーが存在すれば、ステップS96において、スクリプト補正部17が補正を実施し、その後、ステップS91に戻り以降の再試験の実施を繰り返し行う。
図16は、本発明の実施の形態になる上限となる補正値取得の処理フローを示す。
ステップS101において、補正値上限判定部にて、上限値をユーザ定義、統計データのどちらを取得するかを判定する。判定基準は、ユーザ定義、統計データ判定フラブを予め設定しておくか、自動で判定することも可能とする。
判定の結果、ユーザ定義、統計データのいずれの場合でも、ステップS102、またはステップS105において、それぞれ、周期上限値か回数上限値のどちらを取得するかを判定する。判定の結果、ステップS103、ステップS104、ステップS106、またはステップS107において、それぞれ、ユーザ定義周期上限値、ユーザ定義回数上限値、統計周期上限値、統計回数上限値のいずれかを取得する。
以上のように、補正値上限判定部23とユーザ定義上限値を特定するためのユーザ定義上限値特定部24と統計データ上限値特定部27とを具備し、それぞれの処理を実行することによって、試験スクリプトに無駄な処理を埋め込むことが防止できる。
図17は、本発明の実施の形態になる未実施の他試験シナリオへ水平展開する場合の補正処理フローを示す。本実施例は、試験シナリオ実施後に、原理図4に示す統計データ蓄積部25から成功した補正値と関連する操作を取り出し、試験スクリプトを水平展開させ、同様の操作手順を持つ別試験スクリプトに対して、成功した補正値を反映させるものである。
ステップS111において、シナリオ成功の手順と比較周期および比較回数を取得し既存の試験スクリプトと比較を行う。つぎに、ステップS112において、試験スクリプトファイル100を参照し、合致するスクリプトが有るか否かを判定する。合致したものがあれば、ステップS113において、当該スクリプトの補正を行う。
図18は、本発明の実施の形態になるマルチメディアに対応させた試験スクリプトの処理フローを示す。
まず、ステップS121において、試験シナリオによるGUI実行に伴う音声又は動画像をキャプチャする。つぎに、ステップS122において、取得した音声または動画像データと基本音情報又は基本動画情報と比較する。そして、ステップS123において、比較結果が一致した場合は成功一致しない場合は失敗としてログ出力を行う。
本実施例は、自動試験システム1に、音比較と動画比較を行う手段を備え、また、画像比較時に比較対象としていた画像情報と同様に、試験実施後に期待する音声及び動画像をそれぞれ基本音情報、基本動画情報として保持しておくファイルを容易しておく。自動試験実施時においては、実施時の結果として収集した音情報及び動画情報として情報を保持しておき、それぞれの比較において、基本音情報と収集音情報、または基本動画情報と収集動画情報をそれぞれ別々に、または両方にて比較を行い正誤判断を行わせ、マルチメディアへの対応を可能とさせたものである。
図19は、本発明の実施の形態になる結果・画像比較部における複数画像の入れ替えの比較処理フローを示す。まず、ステップS131において、結果・画像比較部にてGUI実行結果と画像情報を比較する。つぎに、ステップS19において、画像の比較結果は一致するかを判定する。そして、ステップS133において、画像補正部にて画像情報を入替(画像A→B)を行う。本実施例は、画像情報中に全ての前提条件に当てはまる画像A、画像B、画像Cを保存しておき、エラーが検知された際に、比較対象の画像を画像A→画像B→画像Cに変更し、再比較を行わせるものである。
図20は、本発明の実施の形態になる切替画像の不整合検出のための処理フローを示す。本フローは、エラー判定部20において、試験結果のエラー種別の特定を行う場合のフローを示している。
ステップS141において、結果・画像比較部14から試験結果を取得する。つぎに、ステップS142、およびステップS143において、画像比較の一致を判断する。本処理を予め用意しておいた全画面の画像との比較を画像が一致するまで行う。画像が一致した場合、ステップS144において、画像識別番号を取得して結果・画像比較部14へ通知する。ステップS142、およびステップS143の判定において、画像が一致しなければ、ステップS145において、比較対象画像の変更を行い、ステップS142に戻って以降の処理を実行する。
以上述べてきた本発明の実施の態様は、以下の付記に示す通りである。
(付記1) グラフィカルユーザインタフェースシステムを試験するスクリプトの補正機能を持つ自動試験システムであって、
前記システムの試験スクリプトを実行させることによって表示される実行画面と予め画像情報ファイルに登録された画像とを比較する結果・画像比較手段と、
前記結果・画像比較手段における比較結果をログ情報ファイルとして出力するログ出力手段と、
前記ログ情報ファイルを参照し、該ログ情報の中から画面不一致となったエラーログの実行タイミングを解析するログ解析手段と、
前記ログ解析手段によって解析されたエラーログに対する補正値を特定し、該補正値にしたがって前記試験スクリプトを自動的に補正するスクリプト補正手段と、
を有することを特徴とする自動試験システム。
(付記2) 前記スクリプト補正手段の補正値は、前記システムの実行画面と前記画像ファイルに登録された画像とを比較する際の画面切替の比較周期、あるいは比較回数として設定されることを特徴とする付記1に記載の自動試験システム。
(付記3) 前記スクリプト補正手段において、前記補正値として画面切替の比較周期、あるいは比較回数には、それぞれ上限値を設定することを特徴とする付記1または2に記載の自動試験システム。
(付記4) 前記スクリプト補正手段は、予めユーザが定義した補正値をユーザ定義ファイル、あるいは過去の補正値による判定結果を蓄積した統計データファイルを参照してエラーを修正する補正値を決定することを特徴とする付記1乃至3のいずれかに記載の自動試験システム。
(付記5) 前記ログ解析手段は、前記ログ情報ファイルを参照し、エラーの内容が復旧不可能か否かのエラー種別を判定するエラー判定手段を有し、復旧不可能である場合に該当試験項目のリトライを中断させることを特徴とする付記1に記載の自動試験システム。
(付記6) 前記スクリプト補正手段は、エラーが発生しなくなるまで画像比較の前記比較周期または前記比較回数によって補正することを繰り返すことを特徴とする付記1乃至4に記載の自動試験システム。
(付記7) 前記統計データによる補正値は、蓄積された過去データから統計的手法によって自動的に算出し決定されることを特徴とする付記4に記載の自動試験システム。
(付記8) エラーが発生しなくなった補正後の前記比較周期または前記比較回数を、未実施の他の試験シナリオから同じパターンの試験シナリオを抽出し、補正値と未実施試験シナリオ内の値を置き換える水平展開することを特徴とする付記1に記載の自動試験システム。
(付記9) データベースとして保存した基本音情報と試験時にサンプリングした音との音声波形比較、または保存した基本動画情報と試験時にキャプチャした動画画像との画像比較を行うマルチメディア対応の機能を持つことを特徴とする付記1に記載の自動試験システム。
(付記10) 試験の前提条件により、同じ操作手順においても期待する画像情報が異なる場合、予め条件ごとに期待する画像情報を複数保存させておき、画像比較時のエラーを契機として、前記期待する画像情報を変更することで、前提条件によらず画像情報を補正することを特徴とする付記1記載の自動試験システム。
(付記11) 前記システムの表示切替が間に合わなくて、予期しない画面へ遷移した場合でも、画像の照合が出来るようあらかじめ全画面のイメージを用意しておくことで、エラー種別を明確にすることを特徴とする付記1に記載の自動試験システム。
(付記12) グラフィカルユーザインタフェースシステムを試験するスクリプトの補正機能を持つ自動試験方法であって、
前記システムの試験スクリプトを実行させることによって表示される実行画面と予め画像情報ファイルに登録された画像とを比較する結果・画像比較ステップと、
前記結果・画像比較ステップにおける比較結果をログ情報ファイルとして出力するログ出力ステップと、
前記ログ情報ファイルを参照し、該ログ情報の中から画面不一致となったエラーログの実行タイミングを解析するログ解析ステップと、
前記ログ解析ステップによって解析されたエラーログに対する補正値を特定し、該補正値にしたがって前記試験スクリプトを自動的に補正するスクリプト補正ステップと、
を有することを特徴とする自動試験方法。
(付記13) グラフィカルユーザインタフェースシステムを試験するスクリプトの補正機能を持つプログラムであって、
コンピュータに、
前記システムの試験スクリプトを実行させることによって表示される実行画面と予め画像情報ファイルに登録された画像とを比較する結果・画像比較ステップと、
前記結果・画像比較ステップにおける比較結果をログ情報ファイルとして出力するログ出力ステップと、
前記ログ情報ファイルを参照し、該ログ情報の中から画面不一致となったエラーログの実行タイミングを解析するログ解析ステップと、
前記ログ解析ステップによって解析されたエラーログに対する補正値を特定し、該補正値にしたがって前記試験スクリプトを自動的に補正するスクリプト補正ステップと、
を実行させるプログラム。
本発明の実施の形態になる補正機能を備えたGUI自動試験システムの基本構成を示す図である。 本発明の実施の形態になるGUIアプリケーションの試験スクリプト例( サンプルデータ1: 補正前) を示す図である。 本発明の実施の形態になるGUIアプリケーションの試験スクリプト実行結果のログ内容( サンプルデータ2)を示す図である。 本発明の実施の形態になるGUIアプリケーションの試験スクリプト例( サンプルデータ3: 補正後) を示す図である。 本発明の実施の形態になる自動試験システムにおける補正処理の構成を示す図である。 本発明の実施の形態になる自動試験システムにおけるエラー判定処理の構成を示す図である。 本発明の実施の形態になる自動試験システムにおけるGUI試験スクリプトを補正する全体の処理フローを示す図である。 本発明の実施の形態になるログ解析処理フローを示す図である。 本発明の実施の形態になるスクリプト補正部の処理フローを示す図である。 本発明の実施の形態になるエラー判定による再起動の処理フローを示す図である。 本発明の実施の形態になる補正手段選定の処理フローを示す図である。 本発明の実施の形態になる統計データDBのデータ構成を示す図である。 本発明の実施の形態になる統計データによる補正フローを示す図である。 本発明の実施の形態になるスクリプトの補正値の変更処理フローを示す図である。 本発明の実施の形態になるログ解析によるエラー検出の処理フローを示す図である。 本発明の実施の形態になる上限となる補正値取得の処理フローを示す図である。 本発明の実施の形態になる未実施の他試験シナリオへ水平展開する場合の補正処理フローを示す図である。 本発明の実施の形態になるマルチメディアに対応させた試験スクリプトの処理フローを示す図である。 本発明の実施の形態になる結果・画像比較部における複数画像の入れ替えの比較処理フローを示す図である。 本発明の実施の形態になる切替画像の不整合検出のための処理フローを示す図である。
符号の説明
1 自動試験システム
2 GUIシステム
11 自動試験制御部
12 GUI実行部
13 画面
14 結果・画像比較部
15 ログ出力部
16 ログ解析部
17 スクリプト補正部
20 エラー判定部
21 補正手段特定部
22 ユーザ定義補正値特定部
23 補正値上限判定部
24 ユーザ定義上限値特定部
25 統計データ蓄積部
26 統計データ補正値特定部
27 統計データ上限値特定部
30 通信制御部
31 メール送信部
32 表示部
40 再起動制御部
41 試験スクリプト再実行制御部
42 GUIシステム再起動制御部
43 PC再起動制御部
50 シナリオ起動制御部
100 試験スクリプトファイル
200 画像情報ファイル
300 ログ情報ファイル
400 統計データDB

Claims (5)

  1. グラフィカルユーザインタフェースシステムを試験するスクリプトの補正機能を持つ自動試験システムであって、
    前記システムの試験スクリプトを実行させることによって表示される実行画面と予め画像情報ファイルに登録された画像とを比較する結果・画像比較手段と、
    前記結果・画像比較手段における比較結果をログ情報ファイルとして出力するログ出力手段と、
    前記ログ情報ファイルを参照し、該ログ情報の中から画面不一致となったエラーログの実行タイミングを解析するログ解析手段と、
    前記ログ解析手段によって解析されたエラーログに対する補正値を特定し、該補正値にしたがって前記試験スクリプトを自動的に補正するスクリプト補正手段と、
    を有することを特徴とする自動試験システム。
  2. 前記スクリプト補正手段の補正値は、前記システムの実行画面と前記画像ファイルに登録された画像とを比較する際の画面切替の比較周期、あるいは比較回数として設定されることを特徴とする請求項1に記載の自動試験システム。
  3. 前記スクリプト補正手段は、予めユーザが定義した補正値をユーザ定義ファイル、あるいは過去の補正値による判定結果を蓄積した統計データファイルを参照してエラーを修正する補正値を決定することを特徴とする請求項1または2に記載の自動試験システム。
  4. グラフィカルユーザインタフェースシステムを試験するスクリプトの補正機能を持つ自動試験方法であって、
    前記システムの試験スクリプトを実行させることによって表示される実行画面と予め画像情報ファイルに登録された画像とを比較する結果・画像比較ステップと、
    前記結果・画像比較ステップにおける比較結果をログ情報ファイルとして出力するログ出力ステップと、
    前記ログ情報ファイルを参照し、該ログ情報の中から画面不一致となったエラーログの実行タイミングを解析するログ解析ステップと、
    前記ログ解析ステップによって解析されたエラーログに対する補正値を特定し、該補正値にしたがって前記試験スクリプトを自動的に補正するスクリプト補正ステップと、
    を有することを特徴とする自動試験方法。
  5. グラフィカルユーザインタフェースシステムを試験するスクリプトの補正機能を持つプログラムであって、
    コンピュータに、
    前記システムの試験スクリプトを実行させることによって表示される実行画面と予め画像情報ファイルに登録された画像とを比較する結果・画像比較ステップと、
    前記結果・画像比較ステップにおける比較結果をログ情報ファイルとして出力するログ出力ステップと、
    前記ログ情報ファイルを参照し、該ログ情報の中から画面不一致となったエラーログの実行タイミングを解析するログ解析ステップと、
    前記ログ解析ステップによって解析されたエラーログに対する補正値を特定し、該補正値にしたがって前記試験スクリプトを自動的に補正するスクリプト補正ステップと、
    を実行させるプログラム。
JP2005088604A 2005-03-25 2005-03-25 補正機能を持つ自動試験システム、自動試験方法、およびプログラム Withdrawn JP2006268666A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005088604A JP2006268666A (ja) 2005-03-25 2005-03-25 補正機能を持つ自動試験システム、自動試験方法、およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005088604A JP2006268666A (ja) 2005-03-25 2005-03-25 補正機能を持つ自動試験システム、自動試験方法、およびプログラム

Publications (1)

Publication Number Publication Date
JP2006268666A true JP2006268666A (ja) 2006-10-05

Family

ID=37204535

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005088604A Withdrawn JP2006268666A (ja) 2005-03-25 2005-03-25 補正機能を持つ自動試験システム、自動試験方法、およびプログラム

Country Status (1)

Country Link
JP (1) JP2006268666A (ja)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009223568A (ja) * 2008-03-14 2009-10-01 Toshiba Corp シナリオ生成装置及びプログラム
WO2012111387A1 (ja) * 2011-02-14 2012-08-23 株式会社 エヌ・ティ・ティ・ドコモ 試験装置
CN102830958A (zh) * 2011-06-16 2012-12-19 奇智软件(北京)有限公司 一种获取界面控件信息的方法及***
JP2014010630A (ja) * 2012-06-29 2014-01-20 Hitachi Systems Ltd 検査装置、検査システム、検査方法、携帯端末、及びプログラム
JP2015043147A (ja) * 2013-08-26 2015-03-05 日本電信電話株式会社 Guiスタブの自動生成装置、その方法およびプログラム
JP2016115236A (ja) * 2014-12-17 2016-06-23 三菱電機株式会社 プラント監視装置
CN106708528A (zh) * 2016-12-28 2017-05-24 北京奇虎科技有限公司 脚本生成方法及装置
CN108647141A (zh) * 2018-04-26 2018-10-12 腾讯科技(深圳)有限公司 自动测试方法、装置、计算机可读介质及电子设备
JP2019086804A (ja) * 2017-11-01 2019-06-06 みずほ情報総研株式会社 テスト支援システム、テスト支援方法及びテスト支援プログラム
CN114040188A (zh) * 2021-09-26 2022-02-11 湖北三赢兴光电科技股份有限公司 一种基于语音识别的摄像模组自动测试方法及***
KR20230060418A (ko) * 2021-10-27 2023-05-04 경북대학교 산학협력단 이진화 이미지를 이용한 소프트웨어의 오동작 검출방법

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009223568A (ja) * 2008-03-14 2009-10-01 Toshiba Corp シナリオ生成装置及びプログラム
WO2012111387A1 (ja) * 2011-02-14 2012-08-23 株式会社 エヌ・ティ・ティ・ドコモ 試験装置
JP2012168727A (ja) * 2011-02-14 2012-09-06 Ntt Docomo Inc 試験装置
CN103329108A (zh) * 2011-02-14 2013-09-25 株式会社Ntt都科摩 测试装置
US9280451B2 (en) 2011-02-14 2016-03-08 Ntt Docomo, Inc. Testing device
CN102830958A (zh) * 2011-06-16 2012-12-19 奇智软件(北京)有限公司 一种获取界面控件信息的方法及***
JP2014010630A (ja) * 2012-06-29 2014-01-20 Hitachi Systems Ltd 検査装置、検査システム、検査方法、携帯端末、及びプログラム
JP2015043147A (ja) * 2013-08-26 2015-03-05 日本電信電話株式会社 Guiスタブの自動生成装置、その方法およびプログラム
JP2016115236A (ja) * 2014-12-17 2016-06-23 三菱電機株式会社 プラント監視装置
CN106708528A (zh) * 2016-12-28 2017-05-24 北京奇虎科技有限公司 脚本生成方法及装置
WO2018121582A1 (zh) * 2016-12-28 2018-07-05 北京奇虎科技有限公司 脚本生成方法及装置
JP2019086804A (ja) * 2017-11-01 2019-06-06 みずほ情報総研株式会社 テスト支援システム、テスト支援方法及びテスト支援プログラム
CN108647141A (zh) * 2018-04-26 2018-10-12 腾讯科技(深圳)有限公司 自动测试方法、装置、计算机可读介质及电子设备
CN108647141B (zh) * 2018-04-26 2022-09-09 腾讯科技(深圳)有限公司 自动测试方法、装置、计算机可读介质及电子设备
CN114040188A (zh) * 2021-09-26 2022-02-11 湖北三赢兴光电科技股份有限公司 一种基于语音识别的摄像模组自动测试方法及***
KR20230060418A (ko) * 2021-10-27 2023-05-04 경북대학교 산학협력단 이진화 이미지를 이용한 소프트웨어의 오동작 검출방법
KR102592997B1 (ko) * 2021-10-27 2023-10-24 경북대학교 산학협력단 이진화 이미지를 이용한 소프트웨어의 오동작 검출방법

Similar Documents

Publication Publication Date Title
JP2006268666A (ja) 補正機能を持つ自動試験システム、自動試験方法、およびプログラム
US8312322B2 (en) System for automated generation of computer test procedures
CN107577597B (zh) 安装包自动化测试方法、装置、设备和存储介质
JP2011060052A (ja) ソフトウェア試験実行方法
JP2012216982A (ja) 携帯端末装置及び自己診断方法
US20150074648A1 (en) Software defect verification
WO2018036531A1 (zh) 一种测试用例生成方法
WO2021008029A1 (zh) 案例执行方法、装置、设备及计算机可读存储介质
JP2019101581A (ja) ソフトウェア品質判定装置、ソフトウェア品質判定方法、及びソフトウェア品質判定プログラム
JP6891780B2 (ja) ソフトウェア品質判定装置、ソフトウェア品質判定方法、及びソフトウェア品質判定プログラム
KR101491848B1 (ko) 스크립트 유지보수 기능을 갖는 gui 소프트웨어 테스트 자동화 시스템 및 방법
CN112069073A (zh) 测试用例的管理方法、终端和存储介质
TW201324141A (zh) 測試電子裝置之功能的測試方法以及測試裝置
CN113377650B (zh) 自动化测试用例运行方法、装置、测试设备及存储介质
CN106970870B (zh) 网页测试平台、网页测试方法和网页测试***
KR20080087918A (ko) 타겟 장치의 자동 검증 방법 및 그 장치
CN110543429A (zh) 测试用例调试方法、装置及存储介质
CN112069082A (zh) 一种自动化测试方法及***
US20070245341A1 (en) System and method for performing automatic software installations and automatic software executions in a to-be-tested computer
WO2018036528A1 (zh) 一种自动测试方法
JP2010231594A (ja) 試験プログラム及び試験装置
CN113326193A (zh) 一种小程序测试方法及装置
TWI650710B (zh) 測試流程的檢測方法
JP2005025543A (ja) 整合性チェックシステム及び整合性チェック方法及び整合性チェックプログラム及び管理情報作成システム
CN107102938B (zh) 测试脚本的更新方法及装置

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20080603