JP2009116535A - 自動テストシステム及び自動テスト方法並びにプログラム - Google Patents

自動テストシステム及び自動テスト方法並びにプログラム Download PDF

Info

Publication number
JP2009116535A
JP2009116535A JP2007287600A JP2007287600A JP2009116535A JP 2009116535 A JP2009116535 A JP 2009116535A JP 2007287600 A JP2007287600 A JP 2007287600A JP 2007287600 A JP2007287600 A JP 2007287600A JP 2009116535 A JP2009116535 A JP 2009116535A
Authority
JP
Japan
Prior art keywords
information
identification information
test
automatic test
operation element
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
JP2007287600A
Other languages
English (en)
Inventor
Kazuhiro Kumon
一博 公文
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2007287600A priority Critical patent/JP2009116535A/ja
Publication of JP2009116535A publication Critical patent/JP2009116535A/ja
Withdrawn legal-status Critical Current

Links

Images

Abstract

【課題】テスト対象装置が操作された際のタイミングを正確にテストシナリオに記録することが可能な自動テストシステムを提供する。
【解決手段】テスト対象装置が、複数の操作要素を有する操作出力手段で操作された上記操作要素の識別情報を出力し、出力された操作要素の識別情報を操作要素が操作された第1の操作タイミングの情報と共に第1の記憶手段に記憶し、記憶された操作要素の識別情報及び第1の操作タイミングの情報の読み出しを行い、自動テスト装置が、操作要素の識別情報及び第1の操作タイミングの情報に基づく第2の操作タイミングの情報を第2の記憶手段に記憶し、操作要素の識別情報及び第2の操作タイミングの情報を読み出し、読み出された操作要素の識別情報及び第2の操作タイミングの情報に基づいて、テスト対象装置のテスト操作に基づく操作手順が記述されたテストシナリオを生成する。
【選択図】図1

Description

本発明は、自動テストシステム及び自動テスト方法並びにプログラムに関する。
近年、ソフトウェアが組み込まれた機器のソフトウェア容量が拡大してソフトウェアの複雑度が多様化し、このような機器の機能を拡大するためにテスト対象となる装置(以下、テスト対象装置という。)のテストを自動的に行う装置(以下、自動テスト装置という。)が使用され始めている。この自動テスト装置は、情報処理装置の各状態における入力条件、入力情報に対する出力内容、動作が正しいか否か等を判定するための装置である。
自動テスト装置を動作させるためには、テストシナリオと呼ばれるプログラムが必要となる。テストシナリオの生成方法としては、スクリプトをテキストエディタ等により直接記述する方法、自動テスト装置の表示部であるLCD(Liquid Crystal Display)等に表示されたGUI(Graphical User Interface)の釦をマウスやキーボード等で操作する方法、テストの対象となる装置(以下、テスト対象装置という。)が操作されたときの操作内容を簡易プログラムであるスクリプトとしてテストシナリオに記述する方法等が一般的に知られている。
特開2002−215417号公報
しかしながら、テスト対象装置を操作したときの操作内容をスクリプトとしてテストシナリオを記述するための手段は存在したものの、自動テストする目的でテスト対象装置を直接操作してシナリオを記述し、利用する仕組みは存在しなかった。また、GUIでシナリオを記述する装置は、様々な機器に対応するため、GUI画面の作成やGUIとテスト対象装置との間で入力装置毎の関連付け登録が必要であった。さらに、テスト対象装置が操作されたときの操作タイミングをテストシナリオに正確に記述するための装置は存在しなかった。
本発明は、上記課題を解決するものであり、テスト対象装置が操作された際のタイミングをテストシナリオに正確に記述することが可能な自動テストシステム及び自動テスト方法並びにプログラムを提供することを目的とする。
上述した課題を解決するために、本発明に係る自動テストシステムは、テスト対象装置と、このテスト対象装置に接続されて上記テスト対象装置のテストを自動的に行う自動テスト装置とを備える自動テストシステムであって、上記テスト対象装置は、複数の操作要素を有し、操作された上記操作要素の識別情報を出力するための第1の操作入力手段と、上記第1の操作入力手段から出力された操作要素の識別情報を当該操作要素が操作された第1の操作タイミングの情報と共に記憶するための第1の記憶手段と、上記第1の記憶手段に対して上記操作要素の識別情報及び上記第1の操作タイミングの情報の記憶又は読み出しを行う第1の制御手段とを有し、上記自動テスト装置は、上記第1の制御手段により上記第1の記憶手段から読み出された上記操作要素の識別情報及び上記第1の操作タイミングの情報に基づく第2の操作タイミングの情報を記憶するための第2の記憶手段と、上記操作要素の識別情報及び上記第2の操作タイミングの情報の記憶又は読み出しを上記第2の記憶手段に対して行う第2の制御手段と、上記第2の制御手段により読み出された上記操作要素の識別情報及び上記第2の操作タイミングの情報に基づいて、上記テスト対象装置のテスト操作に基づく操作手順が記述されたテストシナリオを生成する第1の演算手段とを有することを特徴とする。
また、本発明に係る自動テスト方法は、テスト対象装置と、このテスト対象装置に接続されて上記テスト対象装置のテストを自動的に行う自動テスト装置とを備える自動テストシステムにおける自動テスト方法であって、上記テスト対象装置が、複数の操作要素を有する操作出力手段で操作された上記操作要素の識別情報を出力する出力工程と、上記出力された操作要素の識別情報を当該操作要素が操作された第1の操作タイミングの情報と共に第1の記憶手段に記憶する第1の記憶工程と、上記第1の記憶工程で記憶された上記操作要素の識別情報及び上記第1の操作タイミングの情報の読み出しを行う第1の読み出し工程と、上記自動テスト装置が、上記第1の読み出し工程で読み出された上記操作要素の識別情報及び上記第1の操作タイミングの情報に基づく第2の操作タイミングの情報を第2の記憶手段に記憶する第2の記憶工程と、上記操作要素の識別情報及び上記第2の操作タイミングの情報を読み出す第2の読み出し工程と、上記第2の読み出し工程で読み出された上記操作要素の識別情報及び上記第2の操作タイミングの情報に基づいて、上記テスト対象装置のテスト操作に基づく操作手順が記述されたテストシナリオを生成する生成工程とを有することを特徴とする。
さらに、本発明に係る自動テスト方法を実行するためのプログラムは、テスト対象装置と、このテスト対象装置に接続されて上記テスト対象装置のテストを自動的に行う自動テスト装置とを備える自動テストシステムにおける自動テスト方法をコンピュータで実行するためのプログラムであって、上記テスト対象装置が、複数の操作要素を有する操作出力手段で操作された上記操作要素の識別情報を出力する出力工程と、上記出力された操作要素の識別情報を当該操作要素が操作された第1の操作タイミングの情報と共に第1の記憶手段に記憶する第1の記憶工程と、上記第1の記憶工程で記憶された上記操作要素の識別情報及び上記第1の操作タイミングの情報の読み出しを行う第1の読み出し工程と、上記自動テスト装置が、上記第1の読み出し工程で読み出された上記操作要素の識別情報及び上記第1の操作タイミングの情報に基づく第2の操作タイミングの情報を第2の記憶手段に記憶する第2の記憶工程と、上記操作要素の識別情報及び上記第2の操作タイミングの情報を読み出す第2の読み出し工程と、上記第2の読み出し工程で読み出された上記操作要素の識別情報及び上記第2の操作タイミングの情報に基づいて、上記テスト対象装置のテスト操作に基づく操作手順が記述されたテストシナリオを生成する生成工程とを有することを特徴とする。
本発明によれば、テスト対象装置を直接操作テスト対象装置の操作に基づいてテストシナリオを生成する際に機器毎の登録設定が不要となるため、テストシナリオを作成する際の時間を短縮することができる。
以下、本発明が適用された自動テストシステムについて、図面を参照しながら詳細に説明する。なお、本発明は以下の例に限定されるものではなく、本発明の要旨を逸脱しない範囲で任意に変更可能であることは言うまでもない。
図1は、自動テストシステムの構成を示すブロック図である。本実施形態の自動テストシステム1は、大別するとテスト対象装置10と自動テスト装置20とで構成されている。テスト操作を受け付けるテスト対象装置10は、ユーザの操作に基づいた信号を入力するための入力部11と、算術的な処理を実行するための演算部12と、記憶動作を実行するための記憶部13と、所定の処理が施された電気信号を表示する表示部14と、信号を送受信するための通信部15と、画像出力するための画像出力部16と、記憶部13等の動作を制御する制御部17とを備えている。
入力部11は、キーボードやマウス等からなり、ユーザによる操作に基づいた信号を生成し、この信号を制御部17に対して出力する。入力部11は、例えばユーザがテスト対象装置を操作するための複数の操作要素を有し、この操作された操作要素の識別情報を制御部17に対して出力する。
演算部12は、演算結果を一時的に保持するためのアキュムレータや演算結果の正負や桁上がり等のプログラムの状態情報を保持するフラグレジスタ等で構成されており、制御部17から供給された信号に基づいて四則演算、論理処理等の算術的な処理を実行し、演算処理等に基づいて生成した信号を制御部17に対して出力する。また、演算部12は、入力部11から出力された操作要素の識別情報を制御部17が受信したときに、操作要素の識別情報の受信時刻と、この操作要素の識別情報の直前に制御部17が受信した操作要素の識別情報の受信時刻とから差分時間を算出する。
記憶部13は、HDD(Hard Disk Drive)、フレキシブルディスク、光磁気ディスク、RAM(Random Access Memory)、ROM(Read Only Memory)等からなり、制御部17から供給された制御信号に基づいて記憶動作を実行するとともに、この記憶された信号を制御部17に出力する。例えば記憶部13は、入力部11から出力された操作要素の識別情報及び演算部12により算出された操作タイミングの情報(イベントログ情報)を記憶する。
表示部14は、CRT(Cathode Ray Tube)、LCD等で構成され、制御部17から供給された信号に基づいて、ユーザが認識可能な形状、色、明るさ等でユーザがテスト対象装置10に対して指示するための選択肢を表示する。
通信部15は、例えばUSB(Universal Serial Bus)、IEEE1394(Institute of Electrical and Electronic Engineers 1394)等の一定の規格に準拠した有線の通信方式や、電気信号を電波に変換するための無線通信であって、Bluetooth、IEEE802.11b(Institute of Electrical and Electronic Engineers 802.11b)等の無線通信規格に準拠するプロトコルを有し、このプロトコルにしたがって他の機器とデータの送受信を可能にする装置である。通信部15は、自動テスト装置20の通信部25との間で情報を通信し、制御部17から供給された信号を自動テスト装置20の通信部25に対して出力するとともに、自動テスト装置20の通信部25から受信した信号を制御部17に対して供給する。
画像出力部16は、ビデオ信号端子、S端子、HDMI端子、D端子等へ映像を出力する部位であり、制御部17から供給された信号を自動テスト装置20の画像取込み部27に対して出力する。また、画像出力部16は、制御部17から表示部14に出力されて表示部14に表示された画像と同じ映像信号を外部に接続されたテレビジョン、VTR機器等に出力する。
制御部17は、テスト対象装置10を制御するためのC言語、マシン語、Basic等のプログラム言語で記述されたプログラムを実行する部位であり、テスト対象装置10の各構成要素に接続され、これら各構成要素と信号を相互に交換することでテスト対象装置10の動作を制御する。制御部17は、例えばOS(Operating System)を動作させておき、入力部11であるキーボードのボタン「A」を押下した際に、「A」の画像形状を記憶部13のHDDから取出して、表示部14のLCDに表示させる。
一方、テスト対象装置10に接続され、このテスト対象装置10のテストを自動的に行う自動テスト装置20は、例えばPCで構成され、ユーザに対して操作指示を出すとともに、テスト対象装置10に対して動作指示を与えて動作指示に対するテスト対象装置10からの応答を確認し、ユーザにその結果を表示する。このような自動テスト装置20は、ユーザの操作に基づいた信号を入力するための入力部21と、算術的な処理等を実行するための演算部22と、記憶動作を実行するための記憶部23と、所定の処理が施された電気信号を表示する表示部24と、信号を送受信するための通信部25と、所定の画像処理を施すための画像処理部26と、ビデオ信号等の映像信号を画像変換するための画像取込部27と、記憶部23等の動作を制御する制御部28とを備えている。
入力部21は、例えばユーザの操作に基づいて生成した操作信号を制御部28に対して出力する。
演算部22は、アキュムレータやフラグレジスタ等で構成されており、制御部28から供給された信号に基づいて四則演算、論理処理等の算術的な処理を実行し、演算処理等に基づいて生成した信号を制御部28に対して出力する。また、演算部22は、後述するようにテスト対象装置10のテスト操作に応じた操作手順が記述されたテストシナリオを生成する。さらに、演算部22は、入力部11から出力された操作要素の識別情報を制御部28が受信したときに、制御部28が操作要素の識別情報を受信した時刻と、この操作要素の識別情報の直前に受信した操作要素の識別情報の受信時刻とから差分時間を算出する。さらにまた、演算部22は、記憶部13に記憶された操作要素の識別情報及び操作タイミングの情報と、制御部28が操作要素の識別情報及び操作タイミングの情報を受信した時間とに基づいて、テスト対象装置10と自動テスト装置20との間で操作要素の識別情報及び操作タイミングの情報が伝送される際に生じる反応遅れ時間を算出する。
記憶部23は、HDD、フレキシブルディスク、光磁気ディスク、RAM、ROM等からなり、制御部28から供給された制御信号に基づいて記憶動作を実行するとともに、この記憶された信号を制御部28に出力する。さらに、記憶部13には、テストシナリオを生成するための制御プログラム等が記憶されている。
表示部24は、CRT、LCD等で構成され、制御部28から供給された信号に基づいて、ユーザが認識可能な形状、色、明るさ等でユーザが自動テスト装置20に対して指示するための選択肢を表示する。
通信部25は、例えばテスト対象装置10の通信部15との間で情報を通信し、制御部28から供給された信号をテスト対象装置10の通信部15に対して出力するとともに、テスト対象装置10の通信部15から受信した信号を制御部28に対して供給することを可能にする装置である。
画像処理部26は、例えば画像内における形状、色、輝度等に基づいて特徴を抽出するためのアルゴリズムを適用し、画像内の特定の表示対象を特定又は抽出する装置や形状パターンマッチング等のアルゴリズムを有する装置等で構成されており、具体的にはBitmap、PNG、JPG、Gif等の各種フォーマットの画像や、画像取込部27から取込まれた画像に対して回転、拡大、縮小等を可能とするとともに、複数の画像間の差分抽出や、所定の画像に対する輝度や色彩のスレッショルドをすることにより、特定の画像を抽出する。また、画像処理部26は、画像取込部27から供給された信号や、テスト対象装置10の制御部28から出力された信号に対して所定の画像処理を施し、この画像処理を施した信号を制御部28に対して出力する。
画像取込部27は、ビデオ信号をデジタル化してメモリ等に記憶するためのフレーム・グラバーや、ビデオの映像をデジタルデータに変換して画像データとして取込むためのビデオキャプチャボード等で構成されており、テスト対象装置10の表示部14及び画像出力部16から出力されたビデオ信号、S端子映像信号、アナログハイビジョン信号、デジタルハイビジョン信号等の映像信号を1枚の画像に変換する処理を施し、この変換処理が施された画像を画像処理部26に供給する。
制御部28は、自動テスト装置を制御するためのC言語、マシン語、Basic等のプログラム言語で記述されたプログラムを実行する部位であり、上述した入力部21、演算部22、記憶部23、表示部24、通信部25及び画像処理部26に接続され、種々の信号を相互に交換することでテスト対象装置10の各構成要素及の動作を制御する。制御部28は、例えばテスト対象装置10の入力部11から出力された操作要素の識別情報及びタイミングと、通信部25を介して受信したテスト対象装置10の記憶部13から読み出された操作要素の識別情報及び操作タイミングの情報を演算部22に供給する。また制御部28は、演算部22により所定の演算処理が施された操作要素の識別情報及び操作タイミングの情報を記憶部23に記憶する。
図2は、テスト対象装置10の内部動作を模式的に示す図である。テスト対象装置10では、例えば入力部11であるSwitch30から、High/Lowで示される電気的な信号が制御部17である例えばマイコン31のポートへ入力される。このように電気的な信号がマイコン31のポートに入力されたとき、マイコン31は、Switch30から入力された信号に基づいて、マイコン31の内部で動作するソフトウェアがマイコン31のポートとは別のポートに接続されている表示部14である例えばLED32へ電気的な信号を出力してLED32の点灯又は消灯動作を制御する。また、制御部17であるマイコン31は、Switch30から入力された信号をCommunication33に接続されているRAM34に記憶する。ここで、上述したように入力部11から入力された信号を制御部17が記憶部13に記憶する際の内部動作について説明する。
図3は、自動テスト装置20でテストシナリオを生成するためのスクリプトを記憶部13に対して記憶する際の動作を模式的に示す図である。テスト対象装置10の制御部17の内部で動作するソフトウェアがApplicationとDriverとSYSTEMとに切り分けられている場合に、入力部11であるSwitch30から入力された信号が制御部17であるマイコン31のポートに入力され、このポートで0と1との2表記により16進数等の数値に変換される。続いて制御部17では、ポートで所定の数値変換がなされた信号に対して内部で動作するソフトウェアのSYSTEMによりポーリングや割込み技術等が施され、これらポーリングや割込み技術等が施された信号がDriverに供給される。続いて制御部17では、その内部で動作するソフトウェアのDriverに供給された信号がDriverを使用しているApplicationに供給される。続いて制御部17は、その内部のApplicationに供給された信号の内容に応じてDriver及びSYSTEMを経由して表示部14であるLED32に電気的な信号を出力する。続いて制御部17は、Switch30の操作に応じてLED32の点灯・消灯動作等が制御される際に、Input Select36でソフトウェアの分岐処理1つが行われることにより、Switch30と通信部15であるCommunication33との切り替えが可能となる。このように制御部17は、Communication33を介して外部から入力される信号に基づく数値情報等を内部で動作するソフトウェアのSystemで記憶部13に格納された例えばデータベース37に記憶する。
図4は、テスト対象装置10の記憶部13に記憶される数値情報の記録方式の一例を示す図である。図4に示すテスト対象装置10のイベントログ情報に関する記録内容は、一般的にはテーブルと呼ばれる記録方式で記録されており、1レコード単位で1行毎に記録されている。このイベントログ情報におけるData1、Data2、Data3は、例えば図3のSYSTEMがSwitch30から受け取ったデータをDriverへ出力するデータを示している。
図5は、記憶部13に記憶された取得デバイスリストに関する対応表(以下、テーブルという。)を示す図である。図5に示すテーブルは、テスト対象装置10の入力部11に関するデバイスリスト(Device List)と、所定のデバイスが操作された際にテストシナリオに記述されるスクリプト(Script)とがデバイスIDであるNo1〜5に対応付けられている。具体的には、デバイスリストであるボタン(No1)、スライドスイッチ(No2)、タッチパネル(No3)、ジョイスティック(No4)、リモコン(No5)と、スクリプトであるCmd_Btn(D1,D2,D3)、Cmd_Sld(D1,D2,D3)、Cmd_TP(D1,D2,D3)、Cmd_Joy(D1,D2,D3)、Cmd_IR(D1,D2,D3)とがデバイスIDであるNo1、No2、No3、No4及びNo5にそれぞれ対応付けられている。
一例として、ユーザがテスト対象装置10の入力部11であるタッチパネルに対して所定の操作を行うと、このタッチパネルの操作に応じて制御部17が記憶部13に対して、図4に示す取得デバイスリストにおけるDevice List欄の「タッチパネル」に該当するNo「3」を図4に示すテーブルのNo1、No2及びNo3のDevice欄に記憶する。また、制御部17は、入力部11での所定の操作に基づくData1、Data2及びData3が制御部17内部のInput Select36で検出された時刻と、直前に受信したData1〜Data3が制御部17内部のInput Select36で検出された時刻とから演算部12により算出された差分時間を記憶部13に記憶する。例えば、図4に示すテーブルのNo2のTime〔μsec〕欄には、テーブルのNo1に記録された1、0、330というData1〜Data3を受信した時刻と、No2に対応する1、0、200というData1〜Data3を受信した時刻とに基づいて算出された差分時間100が記憶されている。
このように、制御部17は、入力部11から出力された操作要素の識別情報を記憶部13に対して記憶する際に、操作要素の識別情報を受信した時刻の全てを記録せずに、演算部12により算出された操作要素の識別情報と、この操作要素の識別情報の直前に制御部17が受信した操作要素の識別情報との受信時間の差分時間を操作タイミングの情報として記憶部13に記憶することにより、記憶部13に蓄積される情報量を削減することができる。なお、記憶部13に記憶される数値情報の記録方式としては、上述したようなテーブル方式に限定されるものではなく他の記録方式で記憶されていてもよい。
次に、テスト対象装置10の記憶部13に記憶された操作要素の識別情報及び操作タイミングの情報が自動テスト装置20へ送信され、この送信された操作要素の識別情報が自動テスト装置20の記憶部23に記憶される際の自動テストシステム1の処理動作を図6の説明図を参照して説明する。
図6は、テスト対象装置10から自動テスト装置20に操作要素の識別情報及び第1の操作タイミングの情報が送信されて記憶部23に記憶される処理を示す説明図である。先ず製品であるテスト対象装置10の制御部17は、ステップS10において、入力部11から入力された操作信号に基づくイベントログ情報を通信バッファに対して記憶する。このように通信バッファにイベントログ情報を記憶することにより、テスト対象装置10で発生するイベントが通信処理の時間に間に合わない場合に備えるともに、テスト対象装置10が自動テスト装置20と接続していない場合でもテスト対象装置10でイベントの記録をし続けることが可能となる。
続いて制御部17は、ステップS11において、通信バッファからイベントログ情報を読み出してイベントを発行し、PCである自動テスト装置20の通信部25がイベントログ情報を受信可能であるかどうかを確認するための確認信号を自動テスト装置20に対して送信する。例えば、制御部17は、記憶部13にイベントログ情報が一定量蓄積されたことを確認すると、通信部15を介して自動テスト装置20の通信部25に対して上述した確認信号を送信する。
自動テスト装置20の制御部28は、ステップS12において、上述した確認信号を通信部25から受信したことを認識すると、受信した確認信号に基づいてイベントログ情報を受信可能であるかどうかを判断し、受信可能であると判断した場合には、通信部25を介してテスト対象装置10の通信部15に対してイベントログ情報を取得するための信号を送信する。なお、具体的な受信処理の説明については、後述する。
テスト対象装置10の制御部17は、ステップS13において、通信部15を介して自動テスト装置20から送信された信号を受信すると、この信号に基づいて記憶部13に記憶されたイベントログ情報を読み出し、このイベントログ情報を通信部15を介して自動テスト装置20に対して送信する。
自動テスト装置20の制御部28は、ステップS14において、通信部25を介してイベントログ情報を受信すると、この受信した操作要素の識別情報及び第1の操作タイミング情報に基づく第2の操作タイミング情報を記憶部23に対して記憶する。以上のような処理により、テスト対象装置10の記憶部13に記憶されたデータが、自動テスト装置20へ送信されて自動テスト装置20の記憶部23に記憶される。
図7は、テスト対象装置10及び自動テスト装置20の通信部が未接続の状態である場合のテスト対象装置10から自動テスト装置20に操作要素の識別情報及び第1の操作タイミングの情報が送信されて記憶部23に記憶される処理を示す説明図である。テスト対象装置10の制御部17は、ステップS20において、入力部11から入力された操作信号に基づくイベントログ情報を通信バッファに対して記憶する。続いて制御部17は、ステップS21において、通信バッファからイベントログ情報を読み出してイベントを発行し、自動テスト装置20の通信部25がイベントログ情報を受信可能であるかどうかを確認するための確認信号を自動テスト装置20に対して送信する。
通信部15が自動テスト装置20の通信部25と未接続である場合には、制御部17は、ステップS22において、通信部25と通信部15との通信が接続されるまで通信バッファに対してイベントログ情報の記録を継続する。続いて制御部17は、ステップS23において、通信バッファからイベントログ情報を読み出し、通信部15が自動テスト装置20の通信部25と接続されていると判断した場合には、通信部15を介して自動テスト装置20の通信部25に対して上述した確認信号を送信する。
自動テスト装置20の制御部28は、ステップS24において、通信部25が確認信号を受信したことを認識すると、通信部25を介してテスト対象装置10に対してイベントログ情報を取得するための信号を送信する。
テスト対象装置10の制御部17は、ステップS25において、通信部15を介して自動テスト装置20の通信部から送信された信号を受信すると、この信号に基づいて記憶部13に記憶されたイベントログ情報を読み出し、通信部15を介してイベントログ情報を自動テスト装置20に対して送信する。ここで制御部17は、2回分のデータ、即ち、通信部15が自動テスト装置20の通信部25と接続される前に記憶部13に記憶されていたイベントログ情報についても通信部15を介して自動テスト装置20の通信部25に対して送信する。
自動テスト装置20の制御部28は、ステップS26において、通信部25を介してイベントログ情報を受信すると、この受信したデータに所定の処理を施して記憶部23に対して記憶する。ここで、自動テスト装置20の記憶部23に記憶されるイベントログ情報について説明する。
図8は、自動テスト装置20の記憶部23に記憶される数値情報の記録方式の一例を示す図である。このイベントログテーブルのDate欄には、自動テスト装置20の制御部28がイベントログ情報を受信した年月日、Time欄には、制御部28がイベントログ情報を受信した時刻が記憶されている。例えば、自動テスト装置20の制御部18は、通信部15を介してテスト対象装置10の通信部25から送信された日付(Date)、時刻(Time)等に関するイベントログ情報を記憶部23に対して記憶する。このイベントログテーブルのTime〔μsec〕欄には、制御部28がテスト対象装置10からイベントログ情報を受信した時刻と、このイベントログ情報の直前にイベントログ情報を受信した時刻との差分時間が記憶されている。このようにTime、Time〔μsec〕欄には、1つ前のナンバーからの差分時間が記録され続ける。次に、上述したステップS14又はステップS26における自動テスト装置20の記憶動作について、フローチャートを参照して詳細に説明する。
図9は、自動テスト装置20で実行されるデータ受信処理を説明するためのフローチャートである。先ずステップS30において、自動テスト装置20の制御部28は、テスト対象装置10の記憶部13からイベントログ情報を受信するための受信処理を開始する。
ステップS31において、制御部28は、通信部25を介してテスト対象装置10に対して、イベントログ情報の受信処理を開始するための制御信号を出力する。
ステップS32において、制御部28は、テスト対象装置10から受信したイベントログ情報が初めて受信したものか否かを判断する。制御部28は、記憶部23に格納されたテーブルを参照して、受信したイベントログ情報が初めて受信したものであるか否かを判断し、初めて受信した場合には、ステップS33に進みイニシャル処理を行う。また、2回目以降の受信である場合には、ステップS34に進む。
ステップS33において、制御部28は、イニシャル処理を開始する。このイニシャル処理とは、上述したステップS31で受信したイベントログ情報が自動テスト装置20側で初めて受信したイベントログ情報である場合に行う処理であり、記憶部13に記憶されたイベントログ情報と、制御部28がこのイベントログ情報をテスト対象装置10から受信した時間とに基づいて、テスト対象装置10と自動テスト装置20との間でイベントログ情報が伝送される際に生じる反応遅れ時間を算出するための補正処理(キャリブレーション処理)である。
図10は、自動テスト装置20で実行されるイニシャル処理を説明するためのフローチャートである。先ず、制御部28は、イニシャル処理を開始し(ステップS40)、モード切替えを行ってモードをキャリブレーションモードに切替える(ステップS41)。続いて、制御部28は、デバイスリストを参照してキャリブレーションを実行し、受信したイベントログ情報に基づいて算出されたキャリブレーション値を記憶部23のテーブルに記憶する(ステップS42)。このようにして、制御部28は、一連のイニシャル処理を終了する(ステップS43)。
続いて再び図9に戻り、ステップS34において、制御部28は、イベントログ情報の受信処理を開始する。ここで、自動テスト装置20がテスト対象装置10からイベントログ情報を受信する際に実行する受信処理の詳細についてフローチャートを参照して説明する。
図11は、自動テスト装置20で実行されるシナリオ記録処理を説明するためのフローチャートである。自動テスト装置20は、テスト対象装置10からイベントログ情報を受信するための受信処理を開始する(ステップS50)。制御部28は、通信部25を介してテスト対象装置10からイベントログ情報を受信し、この受信したイベントログ情報を記憶部23に記憶する(ステップS51)。ここで、制御部28は、受信したイベントログ情報を図8に示すテーブルとして記憶部23に記憶する。続いて、制御部28は、記憶部23のテーブルを参照してデバイスリスト名やキー名等を特定する(ステップS52)。続いて制御部28は、記憶部23のテーブルを参照して、Time〔μsec〕欄に記憶される差分時間の値が0であるか否かを判定する(ステップS53)。ここで、制御部28がデータの時間差分=0であると判定した場合には、ステップS58に進んでイベントログ情報を受信した時間の補正を行い、時間差分≠0であると判定した場合には、ステップS54に進みテストシナリオの生成を開始する。
図12は、自動テスト装置20で生成されるテストシナリオの一例を示す図である。制御部28は、演算部22により生成されたテストシナリオを記憶部23に記録する。具体的に、制御部28は、連続したデータであることを示すSeries Start()をテストシナリオの10行目に記述し(ステップS54)、続いて図5に示す記憶部23に格納されたテーブルのScript欄の表記に従って、Data1,Data2,Data3を関数の引数に設定してCmd_TP(1,0,330)をテストシナリオの20行目に記録する(ステップS55)。また、制御部28は、図8に示す記憶部23に格納されたテーブルのNo2のTime〔μsec〕欄の100に基づいて時間差分を示すuWait(100)をテストシナリオの30行目に記述する。さらに制御部28は、テストシナリオの40行目〜80行目についても同様に記述する。
ステップS56おいて、制御部28は、テストシナリオに記述している連続したデータが終了したか否かを判定する。制御部28が連続したデータが終了したと判定した場合には、ステップS57に進み、連続したデータが終了していないと判定した場合には、ステップS55に戻りシナリオの記述を継続する。
ステップS57において、制御部28は、ステップS55と同じ要領でテストシナリオの80行目まで記述した後に、連続したデータの終わりを示すSeries End()を90行目に記述する。このようにして制御部28は、1つのDeviceの種類毎やテスト対象装置10の通信バッファに格納されたすべてのイベントログ情報を連続データとして扱い、これらの連続データに基づいてシナリオを記述する。
一方、ステップS58において、制御部28は、演算部22によりステップS53の判定で時間差分=0と判定された場合の処理として、イベントログ情報を受信したときの時刻を補正する。例えば、制御部28は、テスト対象装置10から受信した図4に示すイベントログテーブル情報においてTime〔μsec〕欄に0が存在すると判断した場合には、図8に示すようにテスト対象装置10からイベントログ情報を受信した日付(Date)・時間(Time)に基づいて演算部22により算出された差分時間である4496700をTime〔μsec〕欄に記憶する。
このようにして制御部28は、操作要素の識別情報及び操作タイミングの情報を受信した時刻に基づいて演算部22により算出された新たな差分時関を操作タイミングの情報として記憶部13に記憶することにより、差分時間=0と記憶された場合、即ちテスト対象装置10側で時間差分を操作タイミングの識別情報として記憶できなかった場合でも操作タイミングの情報を記憶することができる。
ステップS59において、制御部28は、テストシナリオを記録する。具体的には、制御部28は、図9に示すステップS33のInitial処理で演算部22により算出されたキャリブレーション処理後の値に基づいて、ステップS58で算出された補正時間と上述した図11に示す処理で算出された図13に示すキャリブレーション値をテストシナリオの120行目に設定する。ここでは、キャリブレーション値として10000〔μsec〕を設定する。
このように、制御部28は、記憶部13に記憶された操作要素の識別情報及び操作タイミングの情報とテスト対象装置10から操作要素の識別情報及び操作タイミングの情報を受信した時間とに基づいて、演算部22によりテスト対象装置10と自動テスト装置20との間で操作要素の識別情報及び操作タイミングの情報が伝送される際に生じる遅れ時間を算出し、算出された遅れ時間に基づいて演算部22により記憶部23に記憶された操作タイミングの情報を新たな操作タイミングの情報を算出し、操作要素の識別情報及びこの新たな操作タイミングの情報に基づいてテストシナリオを生成することにより、ユーザがテスト対象装置10を操作したタイミングを正確に記録したテストシナリオを生成することができる。
ステップS60において、制御部28は、テストシナリオの記述を終了し、図9に示すステップS35に進む。以上の処理により、自動テスト装置20は、イベントログ情報の受信処理を終了する。なお、ステップS35〜ステップS37の処理については後述する。次に、自動テスト装置20の制御部28で実行されるキャリブレーション処理についてさらに詳細に説明する。
図14は、自動テスト装置20でシナリオが記述される際に実行されるキャリブレーション処理を示す説明図である。一例として場面1において実行されるキャリブレーション処理について説明する。製品であるテスト対象装置10の入力部11で入力操作が実行されると、制御部17は、記憶部13から図4に示すイベントログテーブルからイベントログ情報を読み出して、この読み出したイベントログ情報を通信部15及び通信部25を介してPCである自動テスト装置20に送信する。ここで、テスト対象装置10から自動テスト装置20に信号が送信される際に反応遅れ時間が生じる(ステップS71)。この反応遅れ時間は、通信部におけるデータの通信速度に応じて発生するものである。
演算部22は、このように発生した反応遅れ時間を補正するためにキャリブレーション処理を行う(ステップS72)。ここで、演算部22は、以下の(1)式の関係が満たされることを前提として、テスト対象装置10の入力部11において操作が行われたタイミングを算出する。なお、図14では、テスト対象装置10の通信部15は、記憶部13に記憶されたイベントログ情報を図6に示すイベントログテーブルのDevice欄の分類ごとに送信するものと仮定している。
通信を発行する時間〔sec〕<テスト対象装置10及び自動テスト装置20間のデータ伝送時間〔sec〕 (1)
次に、キャリブレーション処理によって反応遅れ時間を算出する方法についてより詳細に説明する。
図15は、自動テスト装置20で実行される時間補正処理を示す説明図である。テスト対象装置10からイベントログ情報を取得するためのデータ要求信号がPCである自動テスト装置20の制御部28で生成され、この生成されたデータ要求信号が制御部28から通信部25及び通信部15を介してセットであるテスト対象装置10に送信される(ステップS73)。ここで、自動テスト装置20からテスト対象装置10にデータ要求信号が到達するまでに、反応遅れ時間Wが遅れ時間として発生する。
続いてテスト対象装置10は、自動テスト装置20からから受信したデータ要求信号に基づいて、イベントログ情報を自動テスト装置20に送信する(ステップS75、ステップS76)。例えば、制御部17は、自動テスト装置20の通信部25から受信した1回目のデータ要求信号に基づいて、記憶部13からイベントログ情報を読み出し、このイベントログ情報を2回に分けて連続して通信部15及び通信部25を介して自動テスト装置20に送信する。
また、自動テスト装置20は、テスト対象装置10から送信された2回目のデータ要求信号を受信する(ステップS74)。この2回目のデータ要求信号は、自動テスト装置20から送信された1回目のデータ要求信号からaという時間をおいてテスト対象装置10に送信されている。制御部28は、受信した2回目のデータ要求信号に基づいて記憶部13からイベントログ情報を読み出し、このイベントログ情報を例えば2回に分けて連続して通信部15及び通信部25を介して自動テスト装置20に送信する(ステップS77、ステップS78)。
このようにテスト対象装置10から通信部15及び通信部25を介して自動テスト装置20に送信されたイベントログ情報のうち、最初に2回連続で送信された処理S75、処理S76に相当するイベントログ情報は、それぞれv、vという時間に自動テスト装置20の制御部28が検出する。ここで、v及びvのデータ間には、上記(1)に示すように通信部25及び通信部15における通信速度に起因した反応遅れ時間Vが発生する。また、2回目のデータ要求信号に対応したステップS77、ステップS78に相当するイベントログ情報ついても同様に所定の遅れ時間が発生し、テスト対象装置10から自動テスト装置20にそれぞれ送信される。
以上のように、自動テスト装置20及びテスト対象装置10の間でデータ要求信号及びイベントログ情報が送受信される際に、イベントログ情報vとvとの差分時間が戻り遅れ時間Vであるとした場合に以下の式が成立する。
V=v−v (2)
W=j−a−V (3)
ここで、nは、任意に設定される値であり、v、vはそれぞれ自動テスト装置20の制御部28がイベントログ情報を検出した時間であり、jは、自動テスト装置20から送信されるイベントログ情報の差分時間aと、テスト対象装置10から自動テスト装置20にイベントログ情報を送信するときに要する時間と、テスト対象装置10でn個連続のイベントログ情報を送信する時間とからなる。即ちjは、自動テスト装置20から送信された所定のデータ要求信号に基づいて通信部25が最初のイベントログ情報を受信して制御部28が検出するまでの時間である。また、aは、自動テスト装置20で発生させたイベントの差分時間である。さらに、図15に示すbは、テスト対象装置10でn回イベントを受信し始めてから受信が終了するまでの差分時間である。テスト対象装置10でn個連続のイベントを送信する時間がWより十分に小さいときは、(3)式に示すように反応遅れ時間Wを算出することができる。
このように、自動テスト装置20の制御部28は、データ要求信号に基づいてテスト対象装置10からn回連続して送信されたイベントログ情報を受信するまでの遅れ時間の平均値Vを算出し、このVに基づいて自動テスト装置20からテスト対象装置10にデータ要求信号が送信される際の通信部25における反応遅れ時間Wを算出することにより、ユーザがテスト対象装置10を操作したタイミングを正確に記録したテストシナリオを生成することができる。また、テスト対象装置10から自動テスト装置20にn回連続でイベントログ情報を送信する際に、例えばnを5回や10回としてキャリブレーションの通信を行うことにより、nが1回のみで決めるよりも精度がより高い補正データを取得することができる。
図16は、本実施の形態における自動テスト装置20で実行される時間補正処理を示す説明図である。ステップS79、ステップS80、ステップS81、ステップS82における処理は、それぞれ図15のステップS73、ステップS74、ステップS75、ステップS76の処理に相当するものであり、差分時間aの間に自動テスト装置20からn回連続でテスト対象装置10にイベントログ情報を送信している点が図15に示す時間補正処理と異なる。この場合においても、テスト対象装置10から自動テスト装置20へデータを送信する際の反応遅れ時間Wを算出することができる。
また、n回連続で自動テスト装置20からテスト対象装置10にイベントログ情報を送信することにより、精度がより高い補正データを取得することができる。
次に、自動テスト装置20を操作するテストシナリオを生成する際に、自動テストで確認する内容(以下、確認イベントという。)をシナリオに記述処理について説明する。
図17は、確認イベントを追加するための構成を示す図である。また、図18は、自動テスト装置20の表示部24に表示されるGUI画面の一例を示す図である。本実施形態では、図17に示すようにPCである自動テスト装置20と接続されたテスト対象装置10とは別の釦40を設ける方法や、図18に示すような自動テスト装置20における表示部24のGUI画面上に「期待値取得方法」の釦を表示させる方法により、確認イベントを追加する処理が実行される。ここで、期待値とは、表示部24で各種表示を実現するため、対象機器内で表示される形状や位置等の正常状態を確認する期待情報をいう。この期待情報は、例えば記憶部23にリストとして記憶されている。また、期待情報は、テスト対象装置10の記憶部13に記憶されていてもよい。この場合には、記憶部13は、例えばVRAMやFrame Buffer等と呼ばれるメモリ領域からメモリコピーにより自動テスト装置20へコピーする方法や、記憶部13のROMに登録された画像ファイルを利用する方法を用いることができる。
図19は、自動テスト装置20の演算部22により生成された確認イベントがシナリオとして追加記述されたテストシナリオの一例を示す図である。ここで、図9に示すフローチャートを再度参照して、確認イベントをテストシナリオに追加する際の処理について説明する。自動テスト装置20の制御部28は、演算部22によりテストシナリオが生成される際に、例えば釦40の操作に基づいて確認イベントを追加する処理が必要か否かを判断する(ステップS35)。制御部28は、上述した確認イベントをテストシナリオに追加するための操作に基づいて確認イベントの追加記録が必要であると判断した場合にはステップS36の処理に進み、確認イベントの追加記録が必要でないと判断した場合にはステップS37の処理に進む。制御部28は、ステップS36において、確認イベントをテストシナリオに追加するための処理を実行する。ここで、制御部28が実行する確認イベントを追加する処理について説明する。
図20は、確認イベントを追加する処理を説明するためのフローチャートである。先ず制御部28は、確認イベントの追加処理を開始し(ステップS90)、上述した図18に示す表示部24に表示されたGUI画面の期待値取得方法において確認イベント追加処理を手動で行うか自動で行うかを入力部21の操作に基づいて判断する(ステップS91)。制御部28は、ステップS91の判断の結果、期待値取得方法として「Manual」が選択された場合にはステップS42の処理に進み、期待値取得方法として「Auto」が選択された場合にはステップS94の処理に進む。
ステップS92において、手動により確認イベント追加処理を行うための設定操作が実行される。具体的に制御部28は、入力部21での操作に基づいて表示部24に表示された図18に示すManual取得のGUI画面から「Record」が選択されると、確認イベントに関するシナリオの記録を開始する。
ステップS93において、確認イベントに関するシナリオの追加記録が実行される。具体的に制御部28により図19に示すテストシナリオの130行目にCmd_Btn(2,0,4)が記述されたとき、ユーザによって上述した確認イベントを追加記録するための釦操作がなされると、制御部28は、自動テストで確認するための内容が図19に示すテストシナリオの140行目のChk_Img(20,100,ICON_1.png)及び150目のChk_Img(100,100,MSG_1.png)として記述する。また、制御部28は、上述した確認イベントをテストシナリオに記述する際に、操作スクリプトを実行履歴として記憶部23に記述する。また、制御部28は、同様にしてテストシナリオの170行目にはChk_Img(20, 100, ICON_1.png)を、190行目にはChk_Data(FF,EE)をそれぞれ記述する。
図21は、実行履歴として記憶部23に記憶される操作スクリプトの一例を示す図である。制御部28は、Operate Scriptとして、Cmd_Bnt(2,0,4)、Cmd_Bnt(2,0,5)及びCmd_Bnt(2,0,6)という操作スクリプトを、ID1、ID2及びID3として記憶する。また、制御部28は、選択された期待値を期待値履歴として記憶する。
図22は、期待情報の履歴を示す図である。例えば、期待値の履歴に関するテーブルのTest Script(テストスクリプト)と、期待値k1、期待値k2、期待値k3・・・が、上述した図21に示す実行履歴におけるID及びOperate Script(操作スクリプト)に対応付けて記憶部23に記憶されている。ここで、期待値k1、期待値k2は、例えば後述する図25のGUI画面に表示される図23の画像の左上部分のX、Y座標を示す情報である。例えば、ID1としては、Test Script、期待値k1、期待値k2及び期待値k3の欄にChk_Img(1,2,3)、20、100、ICON_1.pngtがそれぞれ図21に示す実行履歴のCmd_Btn(2,0,4)というOperate Scriptに対応付けられている。同様にID2としては、Test Script、期待値k1、期待値k2及び期待値k3の欄にChk_Img(1,2,3)、100、100、MSG_1.pngがそれぞれ図21に示すCmd_Btn(2,0,4)というOperate Scriptに対応付けられている。またID3としては、Test Script、期待値k1、期待値k2及び期待値k3の欄にChk_Img(1,2,3)、20、100、ICON_1.pngがそれぞれ図21に示すCmd_Btn(2,0,5)というOperate Scriptに対応付けられている。さらにID4としては、Test Script、期待値k1及び期待値k2の欄にChk_Data(1,2)、FF、EEがそれぞれ図21に示すCmd_Btn(2,0,6)というOperate Scriptに対応付けられている。
図23及び図24は、期待情報として選択された画像の一例を示す図である。この図23及び図24に示す画像情報は、記憶部23に記憶されており、上述した図24に示す期待値k3の欄のICON_1.png、MSG_1.pngに相当するものである。
図25は、GUI画面の一例を示す図である。この図25に示すGUI画面では、例えば上述したステップS92の設定操作が行われる際に、矢印で選択された図23に示す画像が期待値として記憶部23に記憶される。
このようにして、自動テストシステム1は、自動テスト装置に接続され、操作要素の識別情報に基づくスクリプト情報及びテスト操作を確認するための期待情報を出力するための入力部を備え、操作要素の識別情報に基づくスクリプト情報及び期待情報に基づいてテストシナリオに確認イベントに関するシナリオを追加することにより、演算部22が生成した確認イベントを制御部28が記憶部23に登録することを容易に行うことができる。したがって、シナリオを作成する際のテストシナリオを作成する際の時間を短縮することができる。
一方、ステップS91で期待値取得方法として「Auto」が選択された場合には、ステップS94の処理において、制御部28は、上述した図21及び図22に示す操作スクリプトや期待値に関する実行履歴を記憶部23から検索する。
ステップS95において、制御部28は、記憶部23から実行履歴を検索した結果、実行履歴が表示された場合にはステップS96の処理に進み、実行履歴を検索した結果実行履歴が表示されなかった場合にはステップS97の処理に進む。
ステップS96において、予め記憶部23に実行履歴が記憶されている場合には、実行履歴が自動テスト装置20の表示部24に表示される。
図26は、期待値の履歴に基づく候補情報を示す図である。この候補履歴に関するテーブルは、記憶部23に記憶されている。制御部28は、演算部22により上述した図19に示すテストシナリオが生成される際に、このテストシナリオの130行目のCmd_Btn(2,0,4)が記録された時点で実行履歴の中から図26に示すID1及びID2に関するイベントログ情報を記憶部23から読み出し、読み出したイベントログ情報を表示部24に履歴候補として表示する。制御部28は、このように表示部24に表示された履歴候補から所定の履歴候補が選択されると、この選択操作に応じて記憶部23から該当するスクリプトを読み出し、演算部22により図19に示すテストシナリオの140行目にChk_Img(20,100,ICON_1.png)、150行目にChk_Img(100,100,MSG_1.png)が自動的に記述される。
このようにして自動テスト装置20は、制御部28が演算部22によりテストシナリオを生成する際に、記憶部23に記憶された期待値候補リストのテストスクリプト及び期待値を読み出してテストシナリオに追加することにより、操作シナリオ生成時に確認シナリオも同時に生成することができる。したがって、テストシナリオを作成又は編集する際に要する時間を削減することができる。
ここで、上述したように表示部24に期待値の履歴候補を表示させる場合には、ユーザの利用頻度が最も高いIDに関するイベントログ情報を表示させたり、スクリプトの履歴のパターンから、いわゆる漢字変換のアルゴリズムに基づいて履歴候補を表示するためのプログラムを記憶部23に格納することにより、使用勝手を向上させることが可能となる。以上に説明した処理により、制御部28は、テスト対象装置10からのデータ受信処理を終了する(ステップS47)。
なお、テーブルを外部のネットワーク上で管理するようにしてもよく、これにより、あるユーザが追加・修正したシナリオを他の自動テスト装置も参照して使用することができるため、他の複数のユーザも追加・修正されたシナリオを使用することができる。
本発明の実施の形態における自動テストシステムの構成を示すブロック図である。 テスト対象装置の内部動作を模式的に示す図である。 自動テスト装置でテストシナリオを生成するためのスクリプトを記憶部23に対して記憶する際の動作を模式的に示す図である。 テスト対象装置の記憶部に記憶された数値情報の記録方式の一例を示す図である。 記憶部に記憶されたテーブルを示す図である。 テスト対象装置から自動テスト装置に操作要素の識別情報及び第1の操作タイミングの情報が送信されて記憶部に記憶される処理を示す説明図である。 テスト対象装置及び自動テスト装置の通信部が未接続の状態である場合のテスト対象装置から自動テスト装置に操作要素の識別情報及び第1の操作タイミングの情報が送信されて記憶部に記憶される処理を示す説明図である。 自動テスト装置の記憶部に記憶される数値情報の記録方式の一例を示す図である。 自動テスト装置で実行されるデータ受信処理を説明するためのフローチャートである。 自動テスト装置で実行されるイニシャル処理を説明するためのフローチャートである。 自動テスト装置で実行されるシナリオ記録処理を説明するためのフローチャートである。 自動テスト装置で生成されるテストシナリオの一例を示す図である。 キャリブレーション値のテーブルの一例を示す図である。 自動テスト装置でシナリオが記録される際に実行されるキャリブレーション処理を示す模式図である。 自動テスト装置で実行される時間補正処理を示す説明図である。 自動テスト装置で実行される時間補正処理を示す説明図である。 確認イベントシナリオを追加するための構成を示す図である。 自動テスト装置の表示部におけるGUI画面を示す図である。 自動テスト装置の演算部により生成される確認イベントがシナリオとして追加記述されたテストシナリオの一例を示す図である。 確認イベントを追加する処理を説明するためのフローチャートである。 実行履歴として記憶部に記憶される操作スクリプトの一例を示す図である。 期待情報の履歴を示す図である。 期待情報として選択された画像の一例を示す図である。 期待情報として選択された画像の一例を示す図である。 GUI画面の一例を示す図である。 期待値情報の履歴に基づく候補情報を示す図である。
符号の説明
10 テスト対象装置、11,21 入力部、12,22 演算部、13,23 記憶部、14,24 表示部、15,25 通信部、16 画像出力部、17,28 制御部、20 自動テスト装置、26 画像処理部、27 画像取込部

Claims (9)

  1. テスト対象装置と、このテスト対象装置に接続されて上記テスト対象装置のテストを自動的に行う自動テスト装置とを備える自動テストシステムであって、
    上記テスト対象装置は、
    複数の操作要素を有し、操作された上記操作要素の識別情報を出力するための第1の操作入力手段と、
    上記第1の操作入力手段から出力された操作要素の識別情報を当該操作要素が操作された第1の操作タイミングの情報と共に記憶するための第1の記憶手段と、
    上記第1の記憶手段に対して上記操作要素の識別情報及び上記第1の操作タイミングの情報の記憶又は読み出しを行う第1の制御手段とを有し、
    上記自動テスト装置は、
    上記第1の制御手段により上記第1の記憶手段から読み出された上記操作要素の識別情報及び上記第1の操作タイミングの情報に基づく第2の操作タイミングの情報を記憶するための第2の記憶手段と、
    上記操作要素の識別情報及び上記第2の操作タイミングの情報の記憶又は読み出しを上記第2の記憶手段に対して行う第2の制御手段と、
    上記第2の制御手段により読み出された上記操作要素の識別情報及び上記第2の操作タイミングの情報に基づいて、上記テスト対象装置のテスト操作に基づく操作手順が記述されたテストシナリオを生成する第1の演算手段とを有する
    ことを特徴とする自動テストシステム。
  2. 上記第1の演算手段は、上記第2の制御手段から読み出された上記第2の操作タイミングの情報を補正して第3の操作タイミングの情報を得る時間補正部を有し、上記操作要素の識別情報及び上記第3の操作タイミングの情報に基づいて上記テストシナリオを生成することを特徴とする請求項1記載の自動テストシステム。
  3. 上記第1の演算手段は、上記第1の記憶手段に記憶された上記操作要素の識別情報及び上記第1の操作タイミングの情報と、上記第2の制御手段が上記操作要素の識別情報及び上記第1の操作タイミングの情報を受信した時間とに基づいて、上記テスト対象装置と上記自動テスト装置との間で上記操作要素の識別情報及び上記第1の操作タイミングの情報が伝送される際に生じる反応遅れ時間を算出する遅れ時間算出部を有し、
    上記時間補正部は、上記遅れ時間算出部により算出された上記反応遅れ時間に基づいて上記第3の操作タイミングの情報を得ることを特徴とする請求項2記載の自動テストシステム。
  4. 上記テスト対象装置は、
    上記第1の操作入力手段から出力された上記操作要素の識別情報を上記第1の制御手段が受信したときに、この操作要素の識別情報の受信時刻と上記操作要素の識別情報の直前に上記第1の制御手段が受信した操作要素の識別情報の受信時刻とから第1の差分時間を算出する第1の差分時間算出部を有し、
    上記第1の制御手段は、上記第1の差分時間算出部により算出された上記第1の差分時間を上記第1の操作タイミングの情報として上記第1の記憶手段に記憶することを特徴とする請求項1記載の自動テストシステム。
  5. 上記第1の演算手段は、上記第2の制御手段が上記操作要素の識別情報を受信した時刻と、この操作要素の識別情報の直前に上記第2の制御手段が受信した操作要素の識別情報を受信した時刻とから第2の差分時間を算出する第2の差分時間算出部を有し、
    上記第2の制御手段は、上記第2の差分時間算出部により算出された上記第2の差分時間を上記第2の操作タイミングの情報として上記第2の記憶手段に記憶することを特徴とする請求項1記載の自動テストシステム。
  6. 上記自動テスト装置に接続され、上記操作要素の識別情報に基づくスクリプト情報及び上記テスト操作を確認するための期待情報を出力するための第2の操作入力手段をさらに備え、
    上記第1の演算手段は、上記操作要素の識別情報に基づくスクリプト情報及び上記期待情報に基づいて上記テストシナリオにシナリオを追加するシナリオ追加部とを有する
    ことを特徴とする請求項1記載の自動テストシステム。
  7. 上記第2の記憶手段は、上記第2の操作入力手段から出力された上記操作要素の識別情報に基づくスクリプト情報及び上記期待情報を記憶するための確認シナリオ記憶部を有し、
    上記シナリオ追加部は、上記確認シナリオ記憶部から読み出された上記操作要素の識別情報に基づくスクリプト情報及び上記期待情報を上記追加するシナリオとして上記テストシナリオに追加することを特徴とする請求項6記載の自動テストシステム。
  8. テスト対象装置と、このテスト対象装置に接続されて上記テスト対象装置のテストを自動的に行う自動テスト装置とを備える自動テストシステムにおける自動テスト方法であって、
    上記テスト対象装置が、
    複数の操作要素を有する操作出力手段で操作された上記操作要素の識別情報を出力する出力工程と、
    上記出力された操作要素の識別情報を当該操作要素が操作された第1の操作タイミングの情報と共に第1の記憶手段に記憶する第1の記憶工程と、
    上記第1の記憶工程で記憶された上記操作要素の識別情報及び上記第1の操作タイミングの情報の読み出しを行う第1の読み出し工程と、
    上記自動テスト装置が、
    上記第1の読み出し工程で読み出された上記操作要素の識別情報及び上記第1の操作タイミングの情報に基づく第2の操作タイミングの情報を第2の記憶手段に記憶する第2の記憶工程と、
    上記操作要素の識別情報及び上記第2の操作タイミングの情報を読み出す第2の読み出し工程と、
    上記第2の読み出し工程で読み出された上記操作要素の識別情報及び上記第2の操作タイミングの情報に基づいて、上記テスト対象装置のテスト操作に基づく操作手順が記述されたテストシナリオを生成する生成工程とを有する
    ことを特徴とする自動テスト方法。
  9. テスト対象装置と、このテスト対象装置に接続されて上記テスト対象装置のテストを自動的に行う自動テスト装置とを備える自動テストシステムにおける自動テスト方法をコンピュータで実行するためのプログラムであって、
    上記テスト対象装置が、
    複数の操作要素を有する操作出力手段で操作された上記操作要素の識別情報を出力する出力工程と、
    上記出力された操作要素の識別情報を当該操作要素が操作された第1の操作タイミングの情報と共に第1の記憶手段に記憶する第1の記憶工程と、
    上記第1の記憶工程で記憶された上記操作要素の識別情報及び上記第1の操作タイミングの情報の読み出しを行う第1の読み出し工程と、
    上記自動テスト装置が、
    上記第1の読み出し工程で読み出された上記操作要素の識別情報及び上記第1の操作タイミングの情報に基づく第2の操作タイミングの情報を第2の記憶手段に記憶する第2の記憶工程と、
    上記操作要素の識別情報及び上記第2の操作タイミングの情報を読み出す第2の読み出し工程と、
    上記第2の読み出し工程で読み出された上記操作要素の識別情報及び上記第2の操作タイミングの情報に基づいて、上記テスト対象装置のテスト操作に基づく操作手順が記述されたテストシナリオを生成する生成工程とを有する
    ことを特徴とする自動テスト方法を実行するためのプログラム。
JP2007287600A 2007-11-05 2007-11-05 自動テストシステム及び自動テスト方法並びにプログラム Withdrawn JP2009116535A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007287600A JP2009116535A (ja) 2007-11-05 2007-11-05 自動テストシステム及び自動テスト方法並びにプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007287600A JP2009116535A (ja) 2007-11-05 2007-11-05 自動テストシステム及び自動テスト方法並びにプログラム

Publications (1)

Publication Number Publication Date
JP2009116535A true JP2009116535A (ja) 2009-05-28

Family

ID=40783633

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007287600A Withdrawn JP2009116535A (ja) 2007-11-05 2007-11-05 自動テストシステム及び自動テスト方法並びにプログラム

Country Status (1)

Country Link
JP (1) JP2009116535A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013012088A (ja) * 2011-06-29 2013-01-17 Panasonic Corp 開発支援方法及びプログラム
JP2014142745A (ja) * 2013-01-23 2014-08-07 Geo Technical Laboratory Co Ltd アプリケーション・テストシステム
JP2014186436A (ja) * 2013-03-22 2014-10-02 Nec Networks & System Integration Corp 評価装置、評価方法及びプログラム
JP2016048470A (ja) * 2014-08-27 2016-04-07 日本電気株式会社 アプリケーションテスト支援装置、そのデータ処理方法、およびプログラム
KR20220053434A (ko) * 2020-10-22 2022-04-29 주식회사 엔씨소프트 테스트 자동화 서비스 장치 및 방법

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013012088A (ja) * 2011-06-29 2013-01-17 Panasonic Corp 開発支援方法及びプログラム
JP2014142745A (ja) * 2013-01-23 2014-08-07 Geo Technical Laboratory Co Ltd アプリケーション・テストシステム
JP2014186436A (ja) * 2013-03-22 2014-10-02 Nec Networks & System Integration Corp 評価装置、評価方法及びプログラム
JP2016048470A (ja) * 2014-08-27 2016-04-07 日本電気株式会社 アプリケーションテスト支援装置、そのデータ処理方法、およびプログラム
KR20220053434A (ko) * 2020-10-22 2022-04-29 주식회사 엔씨소프트 테스트 자동화 서비스 장치 및 방법
KR102481502B1 (ko) * 2020-10-22 2022-12-26 주식회사 엔씨소프트 테스트 자동화 서비스 장치 및 방법

Similar Documents

Publication Publication Date Title
US8004571B2 (en) Projection-based system, apparatus and program of storing annotated object image
US10791297B2 (en) Manufacturing-state display system, manufacturing-state display method, and computer-readable recording medium
US20120146884A1 (en) Control transfer apparatus, control transfer system and method thereof
TWI557620B (zh) 拼接式觸控螢幕裝置及其觸控螢幕的觸控偵測方法
JP2009116535A (ja) 自動テストシステム及び自動テスト方法並びにプログラム
US20130181915A1 (en) Touch display, computer system having a touch display, and method of switching modes of a touch display
CN104067336A (zh) 显示控制设备、图像显示系统、显示控制方法及计算机可读记录介质
US20070208527A1 (en) Test apparatus and test method
CN107783669A (zh) 光标产生系统、方法及计算机程序产品
CN101755452B (zh) 显示设备
CN105122186A (zh) 输入装置
JP2018046322A (ja) マルチカメラシステム、カメラ、カメラの処理方法、確認装置および確認装置の処理方法
CN112783707A (zh) 一种触摸屏点击响应时间测量方法及系统
CN111176514B (zh) 一种信号切换后自动将鼠标显示在当前屏幕的系统和方法
JP5421492B1 (ja) 機器診断ツールおよびプログラム
JP5204343B1 (ja) テストシステム及びプログラム
US20130235217A1 (en) Communication apparatus and control method therefor
CN107704489A (zh) 读写超时的处理方法、装置及计算机可读存储介质
JP2010015032A (ja) プロジェクタ及びその制御方法並びに画像投射表示システム
EP3750607A1 (en) Information processing system
CN112714272A (zh) 设备间控制方法、终端和计算机可读存储介质
TWI741488B (zh) 除錯系統及預警系統
CN110865911A (zh) 图像测试方法、装置、存储介质、图像采集卡及上位机
JP6164046B2 (ja) 情報処理システム、管理装置、管理方法
US20170092334A1 (en) Electronic device and method for visualizing audio data

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