JP2007328509A - Information processor and information processing method, program, and recording medium - Google Patents
Information processor and information processing method, program, and recording medium Download PDFInfo
- Publication number
- JP2007328509A JP2007328509A JP2006158569A JP2006158569A JP2007328509A JP 2007328509 A JP2007328509 A JP 2007328509A JP 2006158569 A JP2006158569 A JP 2006158569A JP 2006158569 A JP2006158569 A JP 2006158569A JP 2007328509 A JP2007328509 A JP 2007328509A
- Authority
- JP
- Japan
- Prior art keywords
- test
- data
- test target
- target device
- scenario
- 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
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
Description
本発明は、情報処理装置および方法、プログラム、並びに記録媒体に関し、特に、低コストで確実な自動テストを行うことができるようにする情報処理装置および方法、プログラム、並びに記録媒体に関する。 The present invention relates to an information processing apparatus and method, a program, and a recording medium, and more particularly, to an information processing apparatus and method, a program, and a recording medium that enable a reliable automatic test to be performed at low cost.
近年、電子機器の組込ソフトの機能規模が拡大し、組込ソフトが複雑かつ多様化している。例えば、自動車、携帯電話機、情報家電製品などの各領域で、組込みソフトの開発規模が急激に増加している。 In recent years, the function scale of embedded software for electronic devices has increased, and the embedded software has become complicated and diversified. For example, the development scale of embedded software is rapidly increasing in various fields such as automobiles, mobile phones, and information home appliances.
組込ソフトが組み込まれた電子機器などの品質を高く保つために、これらの機器が市場に流通するまでに充分なテストを行う必要がる。従来、組込ソフトのテストは、テストを実施する人による操作と、人による判断に基づいて行われていたが、近年では、パーソナルコンピュータ(PC)で動作する組込ソフト向けの自動テストソフトウェアや、テスト用のロボットを使ったシステム、組込ソフトが組み込まれた機器向けに入力装置へ信号を擬似発生させる装置なども開発されている。 In order to keep the quality of electronic devices in which embedded software is incorporated, it is necessary to perform sufficient tests before these devices are put on the market. Traditionally, embedded software testing has been performed based on operations by the person performing the test and judgment by the person, but in recent years, automatic test software for embedded software running on a personal computer (PC) Also, systems that use test robots, and devices that simulate signals to input devices for devices with embedded software have been developed.
また、テスト対象装置の入力装置などを自動操作する技術も提案されている(例えば、特許文献1参照)。さらに、自動テストを実行するスクリプトの作成についての提案もなされている(例えば、特許文献2参照)。 In addition, a technique for automatically operating an input device of a test target device has been proposed (see, for example, Patent Document 1). In addition, a proposal for creating a script for executing an automatic test has also been made (for example, see Patent Document 2).
しかしながら、実際に、組込ソフトが組み込まれた機器のボタン、スイッチなどを操作し、それらの操作に対応してディスプレイに表示される画像、スピーカから出力される音声などを確認する人の手によるテストと比較すると、例えば、テスト対象の組込ソフト上で稼動する自動テストソフトウェアによるテストでは、ボタン、スイッチなどのハードウェアを介さずに生成された信号やデータが組込ソフトに直接投入され、組込ソフトによる処理結果のデータが検証されるだけなので、従来の自動テストでは、ハードウェアや各種インタフェースの設定内容の不具合など、組込ソフトのプログラム以外の部分に起因する障害を検出できない場合がある。 However, by operating a button or switch on a device that has built-in software, and checking the image displayed on the display or the sound output from the speaker in response to the operation, Compared with the test, for example, in the test by the automatic test software that runs on the embedded software to be tested, the signal and data generated without using hardware such as buttons and switches are directly input to the embedded software, Since the processing result data by the embedded software is only verified, the conventional automatic test may not be able to detect faults caused by parts other than the embedded software program, such as hardware and various interface settings. is there.
一方、ロボットを使う自動テストは、ロボット自体のコストが高く、さらにロボットの設置場所の確保、安全性への配慮も必要となり、簡単に導入することができなかった。 On the other hand, the automatic test using a robot is not easy to introduce because the cost of the robot itself is high, and it is necessary to secure the installation location of the robot and to consider safety.
また、例えば、PCの組込ソフト向けの自動テストソフトウェアは、PC以外への機器に応用出来ず、組込ソフトが組み込まれたそれぞれの機器向けに自動テストソフトウェアを開発する必要があり、必然的にテストに係るコストが増大する。 Also, for example, automatic test software for PC embedded software cannot be applied to devices other than PCs, and it is necessary to develop automatic test software for each device with embedded software built in. The cost of testing increases.
さらに、自動テスト時のテスト対象の機器の動作が適正なものであるか否かを判定する場合、操作の内容に応じて機器の動作が変化することもあり、どのような動作が適正であると判断するかを決めるための効果的なアルゴリズムなどを設定できないため、自動テストのテスト結果が正しく判定されない場合があった。 Furthermore, when determining whether or not the operation of the device under test during an automatic test is appropriate, the operation of the device may change depending on the content of the operation, and what operation is appropriate As a result, it is not possible to set an effective algorithm for deciding whether or not to judge that the automatic test result is not correctly judged.
例えば、携帯電話機などの小型の機器に複雑な処理を行う組込ソフトを導入する場合、操作メニューは階層化される場合が多く、利用する機能に応じて各ボタンの操作に対応して出力されるコマンドなどの意味合いが全く異なったものになる。そのため、例えば、所定のボタンの押下に対応する処理結果を一意に定義することはできず、詳細な場合分けを行って、例外処理や誤操作などの処理結果も考慮して、テストデータと、そのテストに対応する検証データとを作成する必要があり、組込ソフトの機能を正確に検証できるような全てのテストデータと検証データを正しく作成するためには、膨大な時間とコストを費やすことになりかねない。 For example, when embedded software that performs complex processing is introduced into a small device such as a mobile phone, the operation menu is often hierarchized, and is output corresponding to the operation of each button according to the function to be used. The meanings of commands are completely different. Therefore, for example, it is not possible to uniquely define the processing result corresponding to the pressing of a predetermined button, and the test data and its It is necessary to create verification data corresponding to the test, and it takes a lot of time and cost to correctly create all test data and verification data that can accurately verify the function of the embedded software. It can be.
組込ソフトが組み込まれた機器の入力装置へ擬似的な信号を入力する自動テストは、ハードウェア内部の信号線へ直接信号を送るなどしていたため、完成済みの機器では、テストが出来ない場合があり、また、新しい製品が作成された場合、ハードウェアの修正など大がかりな変更が必要となることもある。 Automatic testing that inputs a pseudo signal to the input device of a device with built-in software sends a signal directly to the signal line inside the hardware, etc. If the completed device cannot be tested In addition, when a new product is created, major changes such as hardware modifications may be required.
また、組込ソフトが組み込まれた機器の品質をより高めるためには、テスト対象の機器が利用できる周辺装置や、接続ケーブルの状態に変化を与えた場合などのケースも想定して、テストが行われることが望ましいが、従来の自動テストでは、周辺装置やケーブルなども考慮してテストを行うことはできなかった。 In addition, in order to further improve the quality of equipment with built-in software, the test should also be performed assuming peripheral devices that can be used by the equipment under test and cases where the state of the connection cable is changed. Although it is desirable to perform the test, the conventional automatic test cannot be performed in consideration of peripheral devices and cables.
本発明はこのような状況に鑑みてなされたものであり、低コストで確実な自動テストを行うことができるようにするものである。 The present invention has been made in view of such a situation, and makes it possible to perform a reliable automatic test at low cost.
本発明の一側面は、テスト対象装置が正常に稼動しているか否かを検証するためのテストを行う情報処理装置であって、テスト対象装置をユーザが操作した場合、前記テスト対象装置の内部で生成される信号と同じ信号を生成するためのデータを、テストデータとして投入するデータ投入部と、テスト対象装置が投入されたテストデータに伴って出力するデータであって、前記テスト対象装置が正常に稼動している場合、出力されるデータを生成する正常データ生成部と、前記テストデータが投入されたとき、前記テスト対象装置が実際に出力するデータを取得し、取得したデータを前記正常データ生成部により生成されたデータと比較する比較部と、前記比較部による比較の結果に基づいて、前記テスト対象装置が正常に稼動したか否かを判定する判定部とを備える情報処理装置である。
One aspect of the present invention is an information processing apparatus that performs a test for verifying whether or not a test target apparatus is operating normally, and when a user operates the test target apparatus, The data for generating the same signal as the signal generated in
前記テスト対象装置に投入される一連のテストデータを、シナリオとして記憶するシナリオデータベースと、前記テスト対象装置が正常に稼動している場合、出力されるデータを記憶する正常データベースとをさらに備えるようにすることができる。 A scenario database that stores a series of test data input to the test target device as a scenario, and a normal database that stores data that is output when the test target device is operating normally. can do.
前記テストデータは、前記テスト対象装置に導入された変換ソフトウェアにより前記テスト対象装置の内部で生成される信号と同じ信号に変換されるようにすることができる。 The test data may be converted into the same signal as a signal generated inside the test target device by conversion software installed in the test target device.
前記テスト対象装置を操作した場合、前記テスト対象装置の内部で生成される信号が前記変換ソフトウェアにより変換され、前記シナリオとして前記シナリオデータベースに記憶されるようにすることができる。 When the test target device is operated, a signal generated inside the test target device can be converted by the conversion software and stored in the scenario database as the scenario.
前記シナリオデータベースは、前記テストにおいて前記シナリオが提供する機能に応じて、前記シナリオを分類して記憶するようにすることができる。 The scenario database may be classified and stored according to functions provided by the scenario in the test.
一端が電源に接続された2つの接続回路の他端が、それぞれ前記テスト対象装置と自分に接続され、前記接続回路に予め設定された信号を出力することで、前記テスト対象装置への電力の供給を制御するようにすることができる。 The other end of the two connection circuits, one end of which is connected to the power source, is connected to the device under test and to itself, and a signal set in advance to the connection circuit is output, so that the power to the device under test is The supply can be controlled.
本発明の一側面は、テスト対象装置が正常に稼動しているか否かを検証するためのテストを行う情報処理装置の情報処理方法であって、テスト対象装置をユーザが操作した場合、前記テスト対象装置の内部で生成される信号と同じ信号を生成するためのデータを、テストデータとして投入し、テスト対象装置が投入されたテストデータに伴って出力するデータであって、前記テスト対象装置が正常に稼動している場合、出力されるデータを生成し、前記テストデータが投入されたとき、前記テスト対象装置が実際に出力するデータを取得し、前記取得したデータを前記正常データ生成部により生成されたデータと比較し、前記比較の結果に基づいて、前記テスト対象装置が正常に稼動したか否かを判定するステップを含む情報処理方法である。 One aspect of the present invention is an information processing method for an information processing apparatus that performs a test for verifying whether or not a test target apparatus is operating normally, and the test is performed when a user operates the test target apparatus. Data for generating the same signal as the signal generated inside the target device is input as test data, and is output along with the test data input by the test target device. When operating normally, generate data to be output, and when the test data is input, acquire data actually output by the test target device, and the acquired normal data generation unit It is an information processing method including a step of comparing with the generated data and determining whether or not the test target device has been normally operated based on a result of the comparison.
本発明の一側面は、テスト対象装置が正常に稼動しているか否かを検証するためのテストを行う情報処理装置に情報処理を実行させるプログラムであって、テスト対象装置をユーザが操作した場合、前記テスト対象装置の内部で生成される信号と同じ信号を生成するためのデータの、テストデータとしての投入を制御し、テスト対象装置が投入されたテストデータに伴って出力するデータであって、前記テスト対象装置が正常に稼動している場合、出力されるデータの生成を制御し、前記テストデータが投入されたとき、前記テスト対象装置が実際に出力するデータの取得を制御し、前記取得したデータと前記生成されたデータとの比較を制御し、前記比較の結果に基づいて、前記テスト対象装置が正常に稼動したか否かの判定を制御するステップを含むコンピュータが読み取り可能なプログラムである。 One aspect of the present invention is a program that causes an information processing apparatus that performs a test for verifying whether or not a test target apparatus is operating normally to perform information processing, and the user operates the test target apparatus The data for generating the same signal as the signal generated inside the test target device is controlled as the test data, and is output along with the test data input by the test target device. When the test target device is operating normally, it controls the generation of output data, and when the test data is input, controls the acquisition of the data that the test target device actually outputs, A comparison between the acquired data and the generated data is controlled, and a determination is made to control whether or not the test target device is operating normally based on the comparison result. Tsu computer, including the flop is readable program.
本発明の一側面においては、テスト対象装置をユーザが操作した場合、前記テスト対象装置の内部で生成される信号と同じ信号を生成するためのデータが、テストデータとして投入され、テスト対象装置が投入されたテストデータに伴って出力するデータであって、前記テスト対象装置が正常に稼動している場合、出力されるデータが生成され、前記テストデータが投入されたとき、前記テスト対象装置が実際に出力するデータが取得され、前記取得したデータと前記正常データ生成部により生成されたデータとが比較され、前記比較の結果に基づいて、前記テスト対象装置が正常に稼動したか否かが判定される。 In one aspect of the present invention, when a user operates a test target device, data for generating the same signal as a signal generated inside the test target device is input as test data. Data to be output along with the input test data, and when the test target device is operating normally, output data is generated, and when the test data is input, the test target device Data to be actually output is acquired, the acquired data and the data generated by the normal data generation unit are compared, and based on the result of the comparison, whether or not the test target device has been operated normally is determined. Determined.
本発明によれば、低コストで確実な自動テストを行うことができる。 According to the present invention, a reliable automatic test can be performed at low cost.
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書または図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書または図面に記載されていることを確認するためのものである。従って、明細書または図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。 Embodiments of the present invention will be described below. Correspondences between constituent elements of the present invention and the embodiments described in the specification or the drawings are exemplified as follows. This description is intended to confirm that the embodiments supporting the present invention are described in the specification or the drawings. Therefore, even if there is an embodiment which is described in the specification or the drawings but is not described here as an embodiment corresponding to the constituent elements of the present invention, that is not the case. It does not mean that the form does not correspond to the constituent requirements. Conversely, even if an embodiment is described here as corresponding to a configuration requirement, that means that the embodiment does not correspond to a configuration requirement other than the configuration requirement. It's not something to do.
本発明の一側面の情報処理装置は、テスト対象装置が正常に稼動しているか否かを検証するためのテストを行う情報処理装置であって、テスト対象装置(例えば、図1のテスト対象装置102)をユーザが操作した場合、前記テスト対象装置の内部で生成される信号と同じ信号を生成するためのデータを、テストデータとして投入するデータ投入部(例えば、図5の読込部500)と、テスト対象装置(例えば、図1のテスト対象装置102)が投入されたテストデータに伴って出力するデータであって、前記テスト対象装置が正常に稼動している場合、出力されるデータを生成する正常データ生成部(例えば、図5のモデル生成部501)と、前記テストデータが投入されたとき、前記テスト対象装置が実際に出力するデータを取得し、取得したデータを前記正常データ生成部により生成されたデータと比較する比較部(例えば、図5のパターンマッチング部502)と、前記比較部による比較の結果に基づいて、前記テスト対象装置が正常に稼動したか否かを判定する判定部(例えば、図5の判定部507)とを備える。
An information processing apparatus according to an aspect of the present invention is an information processing apparatus that performs a test for verifying whether or not a test target apparatus is operating normally, and includes a test target apparatus (for example, the test target apparatus illustrated in FIG. 1). 102), when a user operates, a data input unit (for example, the
この情報処理装置は、前記テスト対象装置に投入される一連のテストデータを、シナリオとして記憶するシナリオデータベース(例えば、図1のシナリオDB164)と、前記テスト対象装置が正常に稼動している場合、出力されるデータを記憶する正常データベース(例えば、図1の期待値DB163)とをさらに備えるようにすることができる。
This information processing apparatus includes a scenario database (for example,
この情報処理装置は、前記テストデータが、前記テスト対象装置に導入された変換ソフトウェア(例えば、図3のソフトウェア301)により前記テスト対象装置の内部で生成される信号と同じ信号に変換されるようにすることができる。
In this information processing apparatus, the test data is converted into the same signal as the signal generated inside the test target apparatus by conversion software (for example,
この情報処理装置は、一端が電源(例えば、図4のACアダプタ402)に接続された2つの接続回路(例えば、図4の接続回路411と412)の他端が、それぞれ前記テスト対象装置と自分に接続され、前記接続回路に予め設定された信号を出力することで、前記テスト対象装置への電力の供給を制御するようにすることができる。
In this information processing apparatus, the other ends of two connection circuits (for example,
本発明の一側面の情報処理方法は、テスト対象装置が正常に稼動しているか否かを検証するためのテストを行う情報処理装置の情報処理方法であって、テスト対象装置(例えば、図1のテスト対象装置102)をユーザが操作した場合、前記テスト対象装置の内部で生成される信号と同じ信号を生成するためのデータを、テストデータとして投入し(例えば、図12のステップS101の処理)、テスト対象装置(例えば、図1のテスト対象装置102)が投入されたテストデータに伴って出力するデータであって、前記テスト対象装置が正常に稼動している場合、出力されるデータを生成し(例えば、図12のステップS103の処理)、前記テストデータが投入されたとき、前記テスト対象装置が実際に出力するデータを取得し(例えば、図12のステップS104の処理)、前記取得したデータを前記正常データ生成部により生成されたデータと比較し(例えば、図12のステップS105の処理)、前記比較の結果に基づいて、前記テスト対象装置が正常に稼動したか否かを判定する(例えば、図12のステップS106の処理)ステップを含む。
An information processing method according to one aspect of the present invention is an information processing method for an information processing apparatus that performs a test for verifying whether or not a test target apparatus is operating normally. When the user operates the test target device 102), data for generating the same signal as the signal generated inside the test target device is input as test data (for example, the process of step S101 in FIG. 12). ), Data to be output along with the test data input by the test target device (for example, the
以下、図面を参照して、本発明の実施の形態について説明する。 Embodiments of the present invention will be described below with reference to the drawings.
図1は、本発明を適用した自動テストシステム100の一実施形態に係る構成例を示すブロック図である。
FIG. 1 is a block diagram showing a configuration example according to an embodiment of an
同図において、自動ソフトテスト装置101は、テスト対象装置102の組込ソフトのテストを自動的に行うことが可能となるようになされている。テスト対象装置102は、例えば、自動車に搭載される電子機器、携帯電話機、情報家電製品などの機器とされ、実際に製造され販売される状態の機器とされる。
In the figure, an automatic
この例では、テスト対象装置102は、例えば、携帯電話機などとして構成され、所定の方式で通信を行う通信部141、外部の機器などに画像を表示させるための信号を出力する画像出力部142、LCD(Liquid Crystal Display)などのディスプレイとして構成される表示部143が設けられている。また、例えば、USB(Universal Serial Bus)、IEEE1394(Institute of Electrical and Electronic Engineers 1394)などの予め定められたインタフェースを有する周辺装置144が設けられている。
In this example, the
さらに、テスト対象装置102には、操作用のボタンやキーボードなどとして構成され、ユーザの指令などに対応する信号を入力する入力部146、CPU(Central Processing Unit)、メモリなどを含む構成とされ、予め定められた方式の演算処理を実行する演算部147、メモリやハードディスクなどで構成され、各種のデータを必要に応じて記憶する記憶部148が設けられている。
Furthermore, the
そして、通信部141乃至記憶部148が制御部145を介して相互に接続される構成とされている。
The
一方、自動ソフトテスト装置101には、テスト対象装置102とのインタフェースとして機能する、通信部125、画像処理部126、画像取込部127、および周辺装置129が設けられている。
On the other hand, the automatic
通信部125は、テスト対象装置102の通信部141から出力される送信信号を受信し、または、通信部141に受信させる信号を送信する。
The communication unit 125 receives a transmission signal output from the
画像取込部127は、画像出力部142から出力される信号の取得、または表示部143に表示された画像などのキャプチャを行うことが可能となるように構成されており、取得信号またはキャプチャされた画像に対応するデータを画像処理部126に供給するようになされている。画像取込部127は、ビデオ信号、S端子映像信号、アナログハイビジョン信号、デジタルハイビジョン信号などの映像信号に基づいて生成される所定のタイミングの画像をデータに変換して取得する機能を有し、例えば、Frame Grabberやキャプチャボード等として構成される。
The
画像処理部126は、画像取込部127から供給されたデータに基づいて、テスト対象装置102から出力された画像を解析するための画像データを生成し、制御部128に出力するようになされている。なお、画像出力部142、または表示部143を介さずに、テスト対象装置102から出力される画像に関する信号、データなどは、画像処理部126が、制御部145から直接取得するようになされている。
The image processing unit 126 generates image data for analyzing the image output from the
画像処理部126は、Bitmap, PNG, JPG, Gifなどの各種のフォーマットの画像に対して、画像の回転、拡大、縮小などの処理を必要に応じて施し、2枚の画像間の差分抽出や、ある画像に対して輝度や色彩のスレッショルドにより、特定の画像を抽出する機能を有する構成とされる。また、画像処理部126は、例えば、画像の特徴を抽出する機能を有し、画像内にある、形状、色、輝度などの情報に基づいて、予め設定された特徴抽出のためのアルゴリズムを適用し、画像内の特定の表示物を特定、抽出したり、所定の形状の画像が、画像内に表示されているかどうかを判断するのに、輝度の低い箇所と高い箇所を区別し、特定の表示オブジェクトの輪郭を取り、ある形状の画像と一致するか判定する形状パターンマッチング等を実行したりするようになされている。 The image processing unit 126 performs processing such as image rotation, enlargement, and reduction on images in various formats such as Bitmap, PNG, JPG, and Gif as necessary to extract differences between the two images. It is configured to have a function of extracting a specific image with respect to a certain image by a threshold of luminance or color. Further, the image processing unit 126 has a function of extracting image features, for example, and applies a preset algorithm for feature extraction based on information such as shape, color, and brightness in the image. In order to identify and extract a specific display object in the image, or to determine whether an image of a predetermined shape is displayed in the image, it distinguishes between a low luminance part and a high luminance part, The contour of the display object is taken, and shape pattern matching is performed to determine whether the image matches a certain shape.
周辺装置129は、予め設定されたインタフェースにより周辺装置144を制御する信号を出力し、また、周辺装置144から出力される信号などを取得して制御部128に供給する。
The
制御部128は、例えば、キーボードなどで構成されユーザの指令に対応する信号などを入力する入力部121から供給されるコマンドに基づいて動作するようになされており、通信部125乃至周辺装置129から供給される信号またはデータに対して所定の処理を施して、演算部122乃至表示部124に供給するようになされている。制御部128は、CPU、メモリなどを含んで構成され、プログラムなどのソフトウェアを実行できるように構成されている。
The
演算部122は、データベース103に記憶されている情報を用いるなどして、制御部128から供給されるデータに対して所定の演算を行うことで、テスト対象装置102の組込ソフトのテストを実行し、テスト結果を制御部128に出力する。演算部122は、四則演算や論理演算など算術的な処理を行なう回路や、演算結果などを一時的に保管するアキュムレータや、演算結果の正負や桁上がりなどの状態情報を保管するフラグレジスタなどで構成され、一時記憶のためのメモリ等を構成する装置、CPUなどを含む構成とされる。
The
記憶部123は、メモリやハードディスクなどで構成され、演算部122の処理において必要となるデータ、テスト結果のデータなどを必要に応じて記憶する。
The
表示部124は、LCD(Liquid Crystal Display)などのディスプレイとして構成され、演算部122による処理の実行に関する情報、テスト結果の情報、または、テスト対象装置102から出力される画像などを適宜表示する。
The display unit 124 is configured as a display such as an LCD (Liquid Crystal Display), and appropriately displays information related to execution of processing by the
データベース103には、テスト対象装置102の組込ソフトをテストするにあたって必要となる情報が記憶されている。データベース103は、機器情報DB161、ログDB162、期待値DB163、シナリオDB164、障害管理DB165に分けられて構成されている。
The
機器情報DB161には、例えば、自動ソフトテスト装置によりテストされるテスト対象装置を特定するための情報、または、テスト対象装置の機能や特徴を表す情報などが記憶されている。 The device information DB 161 stores, for example, information for specifying a test target device to be tested by an automatic soft test device, information indicating functions and features of the test target device, and the like.
ログDB162には、自動ソフトテスト装置101から出力されるログであって、テスト結果のデータなどを含むログが記憶される。
The
期待値DB163には、自動ソフトテスト装置101から出力されたテストデータ(例えば、周辺装置129を介して供給されるコマンドなど)に対応して、テスト対象装置102の組込ソフトの処理により表示されるべき画像、出力されるべき音声など、テスト対象装置102に期待される処理結果を特定するための情報が記憶される。なお、期待値DB163の詳細については後述する。
The expected value DB 163 is displayed by processing of the embedded software of the
シナリオDB164には、自動ソフトテスト装置101から出力すべき一連のテストデータを生成するためのシナリオ(テストシナリオ)が記憶される。なお、シナリオの詳細については後述する。
The
障害管理DB165には、自動ソフトテスト装置101により実行されたテストの結果発見されたテスト対象装置102の組込ソフトの障害に関する情報が記憶される。
The failure management DB 165 stores information related to the failure of the embedded software of the
図2は、テスト対象装置102の制御部145の構成例であって、内蔵されるマイコン211に供給される信号がRAM201により、USBなどのインタフェースに出力される信号形式のデータとして記憶される例を説明する図である。テスト対象装置102の入力部146を操作すると、マイコン211に供給された手動操作による信号情報を、RAM201にも記録するようになされている。このようにして、RAM201に記録されたデータを、自動ソフトテスト装置101が読み取る事で、自動ソフトテスト装置101は、人間がテスト対象装置を操作した場合、マイコン211に供給される信号に関するデータを記録する。この時、テスト対象装置102から得られたデータは、後述するシナリオDB164に記録される。
FIG. 2 is a configuration example of the
このようにすることで、自動ソフトテスト装置101から出力されたテストデータであって、例えば、周辺装置129を介して供給されるコマンドなどは、USBなどのインタフェースで周辺装置144からテスト対象装置102に供給され、RAM201により所定の形式の信号に変換されてマイコン211に供給されるようにすることができ、マイコン211は、自動ソフトテスト装置101から送信される信号に基づいて、あたかも入力部146が操作されてコマンドが供給されたように動作することが可能となるようになされている。
In this way, the test data output from the automatic
すなわち、図3に示されるように、自動ソフトテスト装置101からテストデータが投入されたとき、テスト対象装置102に実装されているソフトウェア301がテスト対象装置102の組込ソフトのOS311に割り込み処理などを投入し、通常、入力部146から供給されるコマンドに代えて、USBなどのインタフェースから供給されたコマンドをドライバ312、アプリケーションプログラム313に供給するようになされている。このようにすることで、自動ソフトテスト装置101により、人間がテスト対象装置102を操作した場合と同様のテストを、自動的に行うことが可能となる。
That is, as shown in FIG. 3, when test data is input from the automatic
なお、ソフトウェア301は、自動ソフトテスト装置101によるテストの実施に先立って、予めテスト対象装置102に実装されるものとし、テストが終了した後は削除されるようにしてもよい。
Note that the
また、自動ソフトテスト装置101から出力されるテストデータは、周辺装置144を介さずに、通信部141などから供給されるようにしてもよい。さらに、自動ソフトテスト装置101と、テスト対象装置102との間で送受信されるデータが所定の暗号アルゴリズムにより暗号化または復号されるようにしてもよい。
Further, the test data output from the automatic
また、例えば、周辺装置144にLED(Light Emitting Diode)を接続し、テストデータの投入に伴ってLEDが発行するようにし、自動テストシステム100における一連の動作が点滅信号などで示されるようにしてもよい。
Further, for example, an LED (Light Emitting Diode) is connected to the
図4は、自動テストシステム100における電力供給の方式を説明する図である。
FIG. 4 is a diagram for explaining a power supply method in the
同図においては、ACコンセント401からACアダプタ402を介して自動ソフトテスト装置101とテスト対象装置102とに電力が供給されるようになされている。
In the figure, power is supplied from an
接続回路411および412は、MOSFET(metallic oxide semiconductor field effect transistor)などにより構成されており、接続回路411および412のそれぞれの端子のうちの一つがそれぞれACアダプタ402と接続されている。すなわち、端子421aは、ACアダプタ402に接続され、端子421bはテスト対象装置102に接続され、端子421cは自動ソフトテスト装置101に接続されている。また、端子422aは、ACアダプタ402に接続され、端子422bはテスト対象装置102に接続され、端子422cは自動ソフトテスト装置101に接続されている。
The
ACアダプタ402には、プラスとマイナスの2本の電力供給線があり、例えば、プラス側を端子421aに接続し、マイナス側を端子422aに接続する。このようにすることで、自動ソフトテスト装置101から、電圧値Vcc以上のデジタル信号を送信することでテスト対象装置102に対する電力の供給を制御することが可能となる。
The
例えば、自動ソフトテスト装置101から端子421cに電圧Vcc以上の信号を送信する場合、接続回路411のMOSFETがOFF状態となるため、テスト対象装置102への電力供給が断たれることになる。また、自動ソフトテスト装置101から、端子421cに電圧0が出力されている場合、接続回路411のMOSFETのゲート側に、フォトLEDの発光により電流が流れ、MOSFETのドレインソース間が通電し、その結果、テスト対象装置への電力の供給が行われる。
For example, when a signal having a voltage Vcc or higher is transmitted from the automatic
なお、発光ダイオード431と432の発光により、ユーザに接続回路411と412の通電状態を示す点滅信号が生成される。
Note that a flashing signal indicating the energization state of the
このように、本発明の自動テストシステム100においては、テスト対象装置102の電源(例えば、コンセントなど)の抜き差しを行うなどすることなく、テスト対象装置102に電力を供給したり、または電力の供給を断ったりすることが可能となる。したがって、あたかもテスト対象装置102の電源ボタンをON/OFFしたり、コンセントなどを抜き差ししたようなテストを、そのような操作をユーザが行うことなく、自動的に実行することが可能となる。
As described above, in the
ここでは、電力供給線を、接続回路411および412に接続し、テスト対象装置102の電源(例えば、コンセントなど)の抜き差しを行うなどすることなく、テスト対象装置102に電力を供給したり、または電力の供給を断ったりする例について説明したが、同様の構成で、信号供給線を、接続回路411および412に接続し、テスト対象装置102の信号線を抜き差しするなどの操作を、ユーザが行うことなく、テスト対象装置102に所定の信号を供給したり、または信号の供給を断ったりするテストを自動的に実行することも可能である。
Here, the power supply line is connected to the
次に、自動ソフトテスト装置101によるテストとテスト結果の検証について説明する。図5は、自動ソフトテスト装置101の制御部128において実行されるソフトウェアの機能的構成例を示すブロック図である。
Next, a test by the automatic
同図において、読込部500は、データベース103からテストに必要となる情報を読み出すとともに、テスト対象装置102に対してテストデータの信号を送信する。すなわち、読込部500は、シナリオDB164に記憶されているシナリオと呼ばれるスクリプトを読み出して実行し、テストデータとそのテストデータに対応する信号を生成する。また、読込部500は、この後行われる各処理で必要となるデータを、データベース103から読み出して供給する。
In the drawing, a
モデル生成部501は、読込部500を介してデータベース103から供給される情報(例えば、文字の大きさ(ポイント数・縦倍・横倍など))に基づいてテスト結果の検証に用いる画像となる基準画像の画像データを生成する。ここで基準画像は、例えば、投入されたテストデータに対応して、本来テスト対象装置102が表示部143などに表示すべき画像であって、テスト対象装置102が正常に稼動している場合、表示される画像とされる。
The
モデル生成部501は、データベース103の期待値DB163に基づいて基準画像を生成する。図6は、期待値DB163の例を示す図である。
The
この例では、テスト対象装置102が表示する画面を特定する「画面ID」をキーとして、その画面IDに対応する画面の情報が記述されたレコードとして期待値DB163が構成されている。同図の属性「機能名」には、その画面の機能が「UI」(ユーザーインターフェース)であるか、単なる表示画面「VIEW」であるかを表すデータが格納される。属性「画面種ID」は、その画面の種類を分類するデータが格納され、属性「背景」は背景の色を特定するデータ(例えば、「Blue」)が格納される。
In this example, the expected value DB 163 is configured as a record in which screen information corresponding to the screen ID is described using a “screen ID” that identifies a screen displayed by the
属性「文字色」には、表示する文字色を分類するデータ(例えば、「White」)が格納され、属性「表示エリア」には、その画面が表示されるエリアが平面座標系で例えば、「(X1,Y1)-(X2,Y2))のように記述され、属性「揃え」には、文字揃えが「中央(center)」、または右側(Right)」であることを表すデータが格納される。属性「言語」には。表示される文字列の言語を特定するためのデータが記述される。 In the attribute “character color”, data for classifying the character color to be displayed (for example, “White”) is stored, and in the attribute “display area”, an area in which the screen is displayed is represented by, for example, “ (X1, Y1)-(X2, Y2)), and the attribute “Alignment” stores data indicating that the character alignment is “center” or “right”. The For the attribute "Language". Data for specifying the language of the character string to be displayed is described.
また、期待値DB163には、表示される画面のGUIとして用いられるボタンの情報が記録されているボタンDBが含まれている。図7は、ボタンDBの構成例を示す図である。この例では、ボタンの「名称」をキーとして、そのボタンに対応する色(color)、状態(state)、デザイン(design)の情報が記述されたレコードとしてボタンDBが構成されている。 In addition, the expected value DB 163 includes a button DB in which information on buttons used as a GUI for a displayed screen is recorded. FIG. 7 is a diagram illustrating a configuration example of the button DB. In this example, the button DB is configured as a record in which information on the color, state, and design corresponding to the button is described using the “name” of the button as a key.
また、期待値DB163には、画面に表示される文字列の情報が記録されている基準画像DBが含まれている。図8は、基準画像DBの構成例を示す図である。この例では、文字列のIDである「STR_ID」をキーとして、その文字列の「名称」、「画像」が記述されたレコードとして基準画像DBが構成されている。ここで、「画像」は、JPEG画像の画像データとして記憶されており、例えば、「STR_ID」が「1」であるレコードの「画像」は、図9に示されるような画像とされる。 The expected value DB 163 includes a reference image DB in which information on character strings displayed on the screen is recorded. FIG. 8 is a diagram illustrating a configuration example of the reference image DB. In this example, the reference image DB is configured as a record in which “name” and “image” of the character string are described using “STR_ID” that is the ID of the character string as a key. Here, “image” is stored as image data of a JPEG image. For example, an “image” of a record whose “STR_ID” is “1” is an image as shown in FIG.
図10は、期待値DB163から基準画像が生成される仕組みを説明する図である。同図においては、画面テーブルにより画面IDに対応した「画面名」、「機能ID」、「文字列設定ID」が特定され、画面IDに基づいて、表示されるボタンの画像がボタンDBを参照して生成される。また、「文字列設定ID」に基づいて文字列設定テーブルが検索され、「文字列設定番号」が特定され、基準画像DBが参照されて文字列の画像が生成される。さらに、「文字列位置ID」に基づいて「文字列位置設定テーブル」が検索され、「色ID」に基づいて色テーブルが検索される。また、「言語ID」に基づいて言語テーブルが検索されて「言語名」が特定され、「揃え方法ID」に基づいて揃え位置テーブルが検索され、「揃え位置名称」が特定される。 FIG. 10 is a diagram for explaining a mechanism for generating a reference image from the expected value DB 163. In the figure, “screen name”, “function ID”, and “character string setting ID” corresponding to the screen ID are specified by the screen table, and the button image to be displayed refers to the button DB based on the screen ID. Is generated. Further, the character string setting table is searched based on the “character string setting ID”, the “character string setting number” is specified, and the reference image DB is referred to generate the character string image. Further, the “character string position setting table” is searched based on the “character string position ID”, and the color table is searched based on the “color ID”. Further, the language table is searched based on “language ID” to identify “language name”, the alignment position table is searched based on “alignment method ID”, and “alignment position name” is specified.
モデル生成部501は、図6の属性「画面名」、「機能名」、「背景」、「表示エリア」・・・に格納されたデータを、シナリオDBに記録されているシナリオに基づいて参照し取得する。
The
パターンマッチング部502は、読込部500から送信されたテストデータの信号に対応してテスト対象装置102が出力する画像であって、例えば、テスト対象装置102の表示部143に表示された表示画像を、画像処理部126を介して取得し、その表示画像を解析するための画像データと、モデル生成部501により生成された基準画像の画像データとを比較する処理を行う。
The pattern matching unit 502 is an image output by the
このとき、パターンマッチング部502は、例えば、RGBのどの色成分で比較するかの設定、基準画像と表示画像における表示部位ごとの濃淡などを数値として置き換え、数値に基づいて基準画像と表示画像との差分を演算する。また、例えば、比較すべき部分の基準画像における表示色が赤である場合、表示画像の赤成分のみに、2値化処理が施され、表示画像に含まれる、赤色の領域が切り出されて比較される処理が行われるようにしてもよい。 At this time, the pattern matching unit 502 replaces, for example, the setting of which color component of RGB to be compared, the shading of each display part in the reference image and the display image as numerical values, and the reference image and the display image based on the numerical values. The difference between is calculated. For example, when the display color of the reference image of the portion to be compared is red, the binarization process is performed only on the red component of the display image, and the red region included in the display image is cut out and compared. The processing may be performed.
スコア算出部503は、基準画像と表示画像の一致度合いを表すスコアを算出する。
The
また、基準画像と表示画像におけるボタンなどの部品の表示位置の差異を位置特定部504が検出する。欠損解析部505は、位置特定部504による検出結果、基準画像に表示される各部品の重心位置などに基づいて表示画像の欠損を解析し、解析結果を相違点検出部506に供給する。相違点検出部506は、欠損解析部505の解析結果に基づいて、基準画像と表示画像との相違点を検出する。
Further, the
判定部507は、スコア算出部503、位置特定部504、および相違点検出部506から供給される情報に基づいて、テスト結果のOKまたはNGの判定、すなわち、投入されたテストデータに対応して正当な画像(または異常な画像)が表示されたか否かの判定を行う。判定部507による判定において、例えば、1画素単位の差異を異常と判定させたり、2画素までの違いは正常と判定させたりするなどの判定方式を、シナリオDB164に記憶されているシナリオにより設定可能となるようになされている。
The
上述した自動ソフトテスト装置101によるテストは、シナリオDB164に記憶されているシナリオと呼ばれるスクリプトに基づいて実行される。図11は、シナリオの例を示す図である。すなわち、自動ソフトテスト装置101の制御部128により、図11のシナリオが読み込まれて処理が実行される。
The test by the automatic
同図の10行目の「Dim Result as integer」が実行されることにより、整数型の変数として「Result」という変数宣言を行われる。次に、20行目は空白のため、読み飛ばされ、30行目の「JOB_Report_SetName(“C:\test.log”)」が実行され、シナリオDB164から所定の実行処理が呼び出される。この処理では、テスト結果をログとして保存するファイル(C:\test.log)が生成され、ログDB162に保存される。
By executing “Dim Result as integer” on the 10th line in the figure, a variable declaration “Result” is made as an integer type variable. Next, since the 20th line is blank, it is skipped and “JOB_Report_SetName (“ C: \ test.log ”)” on the 30th line is executed, and a predetermined execution process is called from the
40行目の「JOB_Init_Product(“T-1000”)」が実行されると、シナリオDB164から、所定の実行処理が呼び出され、テスト対象装置102に対応する製品「T-1000」に関する情報が、例えば、SQL文を利用したクエリー検索により、機器情報DB161から検索されて取得される。これにより、テスト対象装置102を制御するのに必要な情報などが取得される。
When “JOB_Init_Product (“ T-1000 ”)” on the 40th line is executed, a predetermined execution process is called from the
次に、60行目の「JOB_Action_KeyPush(“A”)」が実行され、シナリオDB164から所定の実行処理が呼び出され、「A」という種類のGUIを、入力部146の操作により押下した場合の処理を、テスト対象装置102に実行させる。このとき、製品「T-1000」に関する情報に基づいて「JOB_Action_KeyPush」のスクリプトを実行するために必要な情報が付加される。
Next, “JOB_Action_KeyPush (“ A ”)” on the 60th line is executed, a predetermined execution process is called from the
このスクリプトの実行により、図2または図3を参照して上述したように、自動ソフトテスト装置101から出力された信号が、USBなどのインタフェースでテスト対象装置102に供給され、RAM201により所定の形式の信号に変換されてマイコン211に供給される。すなわち、テスト対象装置102に実装されているソフトウェア301が、通常、入力部146から供給されるコマンドに代えて、USBなどのインタフェースから供給されたコマンドをドライバ312、アプリケーションプログラム313に供給する。
By executing this script, as described above with reference to FIG. 2 or FIG. 3, the signal output from the automatic
そして、マイコン211は、自動ソフトテスト装置101から送信される信号に基づいて、あたかも入力部146が操作(いまの場合、「A」というGUIの操作)されてコマンドが供給されたように動作する。
Then, based on the signal transmitted from the automatic
次に、70行目で、先の「JOB_Action_KeyPush(“A”)」の実行に伴ってテスト結果の判定が行われる。このとき、上述したように、判定部507による判定が行われることになる。例えば、1画素単位の差異を異常と判定させたり、2画素までの違いは正常と判定させたりするなどの判定方式を、シナリオにより設定する場合、70行目を例えば、「JOB_Init_CheckImage(Hantei=1,0,0,0)」などのように記述し、予め設定された判定条件(Hantei=1,0,0,0)を指定するようにすればよい。
Next, on the 70th line, the test result is determined along with the execution of the previous “JOB_Action_KeyPush (“ A ”)”. At this time, as described above, the determination by the
判定部507による判定の結果、正常に画像が表示されていると判定された場合、変数「Result」に1が代入される。
As a result of the determination by the
次に、90行目で、変数「Result」の値が判定され、1(正常)であれば、100行目が実行され、表示画面の画像データがログDB162に保存される。すなわち、ここまでの処理により、ログDB162には、例えば、「JOB_Report_Msg(“A Pushed”)」というレコードが記録され、その引数である「A Pushed」は、このレコードがテスト対象装置102において、「A」というGUIが正常に押下でき、その反応表示が正常に表示された証拠として記録されることになる。
Next, in the 90th line, the value of the variable “Result” is determined, and if it is 1 (normal), the 100th line is executed and the image data of the display screen is stored in the
ここでは、複数の関数の呼び出しを行うシナリオの例について説明したが、シナリオは、例えば、1つの関数の呼び出しだけを行うものであってもよい。また、必要に応じて1つのシナリオから他のシナリオが呼び出されるようにしてもよい。 Here, an example of a scenario in which a plurality of functions are called has been described. However, for example, a scenario may be one in which only one function is called. Further, another scenario may be called from one scenario as necessary.
次に、図12のフローチャートを参照して、自動ソフトテスト装置101により自動テスト処理について説明する。
Next, automatic test processing by the automatic
ステップS101において、読込部500は、シナリオDB164からシナリオを読み出す。
In step S101, the
ステップS102において、読込部500は、ステップS101の処理により読み込まれたシナリオに基づいてテスト対象装置102に送信すべき信号(テストデータに対応する信号)を生成し、また、この信号をテスト対象装置102に送信する。
In step S102, the
ステップS103において、モデル生成部501は、テスト結果を検証するためのデータを生成する。このとき、例えば、上述した基準画像の画像データが生成される。
In step S103, the
ステップS104において、パターンマッチング部502は、ステップS102の処理で生成されたテスト信号に対応して、テスト対象装置102から出力される情報を取得する。このとき、例えば、例えば、テスト対象装置102の表示部143に表示された表示画像が画像処理部126を介して取得される。
In step S104, the pattern matching unit 502 acquires information output from the
ステップS105において、パターンマッチング部502は、ステップS103の処理で生成されたデータと、ステップS104の処理で取得された情報とを比較する。このとき、例えば、上述した基準画像の画像データと、表示画像の画像データとが比較され、スコア算出部503、位置特定部504、および相違点検出部506から処理結果のデータが判定部507に供給される。
In step S105, the pattern matching unit 502 compares the data generated in the process of step S103 with the information acquired in the process of step S104. At this time, for example, the image data of the reference image described above and the image data of the display image are compared, and the processing result data from the
ステップS106において、判定部507は、ステップS105の処理による比較の結果に基づいて、テスト結果がOK(正常)かNG(異常)かを判定する。
In step S106, the
ステップS107において、判定部507は、このテストの結果をログDB162に記録する。
In step S107, the
このようにして自動テスト処理が実行される。 In this way, the automatic test process is executed.
ところで、シナリオDB164に記録されているシナリオは、複数のテストケースで再利用できると便利である。本発明においては、シナリオ(一連のスクリプト)を、用途や機能に応じて分類して記録するようになされている。
By the way, it is convenient that the scenario recorded in the
ここでは、シナリオを、「Action」、「Search」、「Analysis」、「Check」、「Initialize」、「Report」、「Exception」の7種類に分類する例について説明する。「Action」は、所定の操作を行う機能を有するシナリオとされ、「Search」は、目的の対象物を探し当てる機能を有するシナリオとされ、「Analysis」は、操作した結果得られた情報を分析・解析する機能を有するシナリオとされる。また、「Check」は、操作した結果得られた情報を判定する機能を有するシナリオとされ、「Initialize」は、テスト対象装置102の事前設定を行う機能を有するシナリオとされ、「Report」は、ログなどを記録する機能を有するシナリオとされ、「Exception」は、想定外の状態が発生した時に対処するシナリオとされる。
Here, an example will be described in which scenarios are classified into seven types of “Action”, “Search”, “Analysis”, “Check”, “Initialize”, “Report”, and “Exception”. “Action” is a scenario having a function for performing a predetermined operation, “Search” is a scenario having a function for finding a target object, and “Analysis” is an analysis / analysis of information obtained as a result of the operation. The scenario has a function to analyze. In addition, “Check” is a scenario having a function of determining information obtained as a result of the operation, “Initialize” is a scenario having a function of performing preliminary setting of the
例えば、テスト対象装置102のタッチパネル上のあるボタンを押下する処理を実行させる関数やシナリオは、「Action」に分類する。テスト対象装置102のユーザーインターフェースのメニュー一覧と、その一覧内の項目を1つ指定すると、その画面項目まで、移動するシナリオなどは、「Search」に分類する。また、メニューを操作し、画面遷移を幾つか経て、目的の画面に到着した時に、比較する情報のために、画面すべてを切り出すか、ある部分を抽出するかなどの処理を実行するシナリオ、また、得られたデータを、予め設定されたデータと比較する処理を実行するシナリオなどは、Checkに分類する。そして、Checkに分類されるシナリオにおいて比較と判定の基準などを設定する処理を実行するシナリオなどは、「Analysis」に分類する。
For example, a function or scenario for executing a process of pressing a certain button on the touch panel of the
このように、シナリオを分類して管理することにより、例えば、ある1人のユーザが追加または修正したシナリオDBを、他のユーザも利用することが出来る。 Thus, by classifying and managing scenarios, for example, a scenario DB added or modified by one user can be used by other users.
例えば、自動ソフトテスト装置101においては、予めシナリオを実行するための雛形として、図13に示されるようなフローチャートを用意しておき、ユーザがそれぞれのステップに、分類されたシナリオの中から適切なシナリオを組み込んでいくようにすればよい。
For example, in the automatic
図13の例では、ステップS201の「Initialize」により初期状態が設定され、ステップS202の「Search」により目的の状況までテスト対象装置102を動作させ、ステップS203の処理による判定で正しく目的の状況が作り出せたか否かを判定する。正しく目的の状況が作り出せたと判定された場合、ステップS204の「Action」によりテストしたい動作を与え、ステップS205の「Analysis」によりその反応結果を分析または解析し、ステップS206の「Check」により分析または解析結果に基づいてテスト結果が正常であったか異常であったかの判定を行い、ステップS207の「Report」によりテスト結果が記録される。
In the example of FIG. 13, the initial state is set by “Initialize” in step S201, the
なお、ステップS203の処理による判定で正しく目的の状況が作り出せなかったと判定された場合、ステップS208の「Exception」により例外処理が実行される。 If it is determined by the determination in step S203 that the target situation has not been correctly created, exception processing is executed by “Exception” in step S208.
図13のフローチャートに示される手順はいかなるテストでも通る共通の手順であり、どのようなテスト対象装置102にも利用可能である。このように、シナリオを分類して保存することで、新たにシナリオを作成する場合であっても、過去に作成したシナリオを、分類別に引用して、短時間に効率よくシナリオを作成する事が出来る。 The procedure shown in the flowchart of FIG. 13 is a common procedure that passes through any test, and can be used for any device to be tested 102. In this way, even when creating a new scenario by classifying and saving the scenario, it is possible to create a scenario efficiently in a short time by quoting the scenarios created in the past. I can do it.
さらに、図13のフローチャートに基づいて、個々のステップにシナリオが組み込みこまれて生成されたテストデータが、新たなシナリオとしてシナリオDB164に記憶されるようにしてもよい。このようにすることで、生成されたシナリオの再利用をより促進させることが可能となる。
Furthermore, based on the flowchart of FIG. 13, test data generated by incorporating a scenario into each step may be stored in the
次に、実際の自動テストについて具体的に説明する。図14乃至図17は、ある製品のGUI操作を行った時の一連の操作結果を説明する図である。この製品において、まず、図14の「Menu」ボタン601を押下すると、図15の画面が表示される。次に、図15の「Fnc3」ボタン611を押下すると、図16の画面が表示される。次に、図16の「OK」ボタン621を押下すると、図17の画面が表示され、左上の「Icon」表示部631に「■●」が表示される。
Next, an actual automatic test will be specifically described. 14 to 17 are diagrams illustrating a series of operation results when a GUI operation is performed on a certain product. In this product, first, when the “Menu”
なお、上記は、この製品が正常に稼動している場合の操作結果(画面の遷移)である。 The above is an operation result (screen transition) when this product is operating normally.
この製品を、テスト対象装置とし、図14乃至図17を参照して説明した動作を実行させ、最終的に表示部631の表示内容を検証するテストを行う場合、「Initialize」による初期状態の設定のための関数として、例えば、「PowerOn」のような関数を実行させることで、テスト対象装置に電力を供給させる。このとき、図4を参照して上述したように電力の供給が行われることになり、図14の画面がテスト対象装置の表示部に表示される。
When this product is set as a test target device, the operation described with reference to FIGS. 14 to 17 is executed, and finally a test for verifying the display content of the
次に、「Search」に対応する処理として、まず、現在表示されている画面を解析し、GUIボタンがどの位置に表示されているかを判定するなどして、期待値DB163内の画面IDを特定する。次に、特定された画面から目的の画面である図17の画面まで、移動できるボタンを探索する処理を実行する。「Search」に対応する処理としてこのような処理を実行するための関数などからなる既存のシナリオなどが適用される。 Next, as a process corresponding to “Search”, first, the currently displayed screen is analyzed, and the screen ID in the expected value DB 163 is specified by determining where the GUI button is displayed. To do. Next, a process for searching for a button that can be moved from the identified screen to the target screen of FIG. 17 is executed. As a process corresponding to “Search”, an existing scenario including a function for executing such a process is applied.
そして、Menuボタン601の押下、Fnc3ボタン611の押下、OKボタン621の押下の処理を実行させる関数などからなるシナリオが「Action」に対応する処理として適用され、表示部631の表示内容を調べるため、「Analysis」に対応する処理として、画素位置の誤差許容度などを設定するための関数などからなるシナリオが呼び出され、「Check」に対応する処理として、画面の表示内容の解析結果に基づいて、表示部631に「■●」が表示されているか否かの判定を行う関数などからなるシナリオが呼び出される。さらに、「Report」に対応するシナリオの処理によりログDB162にテスト結果がログとして記録される。
Then, a scenario including a function for executing a process of pressing the
このようにして、自動ソフトテスト装置101によるテスト対象装置102の組込ソフトのテストが行われることになる。
In this way, the embedded software test of the
以上においては、入力されたテストデータに対応してテスト対象装置102が出力する画像を検証することにより、テスト対象装置102の組込ソフトのテストが行われる例について説明したが、入力されたテストデータに対応してテスト対象装置102が出力する音声も検証されるようにしてもよい。このような場合、例えば、期待値DB163に、基準となる音声信号を生成するための情報を記憶させ、モデル生成部501が基準音声信号を生成し、パターンマッチング部502が、基準音声信号と、テスト対象装置102から取得される音声信号とを比較する処理などを行うようにすればよい。
In the above description, the example in which the embedded software test of the
なお、上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。上述した一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば、図18に示されるような汎用のパーソナルコンピュータ500などに、ネットワークや記録媒体からインストールされる。
The series of processes described above can be executed by hardware, or can be executed by software. When the above-described series of processing is executed by software, a program constituting the software executes various functions by installing a computer incorporated in dedicated hardware or various programs. For example, a general-purpose
図18において、CPU(Central Processing Unit)801は、ROM(Read Only Memory)802に記憶されているプログラム、または記憶部808からRAM(Random Access Memory)803にロードされたプログラムに従って各種の処理を実行する。RAM803にはまた、CPU801が各種の処理を実行する上において必要なデータなども適宜記憶される。
In FIG. 18, a CPU (Central Processing Unit) 801 executes various processes according to a program stored in a ROM (Read Only Memory) 802 or a program loaded from a
CPU801、ROM802、およびRAM803は、バス804を介して相互に接続されている。このバス804にはまた、入出力インタフェース805も接続されている。
The
入出力インタフェース805には、キーボード、マウスなどよりなる入力部806、CRT(Cathode Ray Tube)、LCD(Liquid Crystal display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部807、ハードディスクなどより構成される記憶部808、モデム、LANカードなどのネットワークインタフェースカードなどより構成される通信部809が接続されている。通信部809は、インターネットを含むネットワークを介しての通信処理を行う。
The input /
入出力インタフェース805にはまた、必要に応じてドライブ810が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア811が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部808にインストールされる。
A
上述した一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、インターネットなどのネットワークや、リムーバブルメディア811などからなる記録媒体からインストールされる。
When the above-described series of processing is executed by software, a program constituting the software is installed from a network such as the Internet or a recording medium such as a
なお、この記録媒体は、図18に示される、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク(フロッピディスク(登録商標)を含む)、光ディスク(CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む)、光磁気ディスク(MD(Mini-Disk)(登録商標)を含む)、もしくは半導体メモリなどよりなるリムーバブルメディア811により構成されるものだけでなく、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているROM802や、記憶部808に含まれるハードディスクなどで構成されるものも含む。
The recording medium shown in FIG. 18 is a magnetic disk (including a floppy disk (registered trademark)) on which a program is recorded, which is distributed to distribute the program to the user, separately from the apparatus main body. Removable media consisting of optical disks (including CD-ROM (compact disk-read only memory), DVD (digital versatile disk)), magneto-optical disks (including MD (mini-disk) (registered trademark)), or semiconductor memory This includes not only those configured by 811 but also those configured by a
本明細書において上述した一連の処理を実行するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。 The steps of executing the series of processes described above in this specification are performed in parallel or individually even if they are not necessarily processed in time series, as well as processes performed in time series in the order described. It also includes processing.
100 自動テストシステム, 101 自動ソフトテスト装置, 102 テスト対象装置, 103 データベース, 125 通信部, 126 画像処理部, 127 画像取込装置, 128 制御部, 129 周辺装置, 141 通信部, 142 画像処理部, 143 表示部, 144 周辺装置, 161 機器情報DB, 162 ログDB, 163 期待値DB, 164 シナリオDB, 165 障害管理DB, 411 接続回路, 412 接続回路, 500 読込部, 501 モデル生成部, 502 パターンマッチング部, 503 スコア算出部, 504 位置特定部, 505 欠損解析部, 506 相違点検出部, 507 判定部
DESCRIPTION OF
Claims (9)
テスト対象装置をユーザが操作した場合、前記テスト対象装置の内部で生成される信号と同じ信号を生成するためのデータを、テストデータとして投入するデータ投入部と、
テスト対象装置が投入されたテストデータに伴って出力するデータであって、前記テスト対象装置が正常に稼動している場合、出力されるデータを生成する正常データ生成部と、
前記テストデータが投入されたとき、前記テスト対象装置が実際に出力するデータを取得し、取得したデータを前記正常データ生成部により生成されたデータと比較する比較部と、
前記比較部による比較の結果に基づいて、前記テスト対象装置が正常に稼動したか否かを判定する判定部と
を備える情報処理装置。 An information processing apparatus that performs a test for verifying whether or not the test target device is operating normally,
When a user operates the test target device, a data input unit that inputs data for generating the same signal as the signal generated inside the test target device, as test data;
A data to be output along with the test data input by the test target device, and when the test target device is operating normally, a normal data generation unit that generates output data;
When the test data is input, a comparison unit that acquires data actually output by the test target device and compares the acquired data with data generated by the normal data generation unit;
An information processing apparatus comprising: a determination unit that determines whether or not the test target device has normally operated based on a result of comparison by the comparison unit.
前記テスト対象装置が正常に稼動している場合、出力されるデータを記憶する正常データベースと
をさらに備える請求項1に記載の情報処理装置。 A scenario database for storing a series of test data input to the test target device as a scenario;
The information processing apparatus according to claim 1, further comprising: a normal database that stores output data when the test target apparatus is operating normally.
請求項1に記載の情報処理装置。 The information processing apparatus according to claim 1, wherein the test data is converted into the same signal as a signal generated inside the test target apparatus by conversion software installed in the test target apparatus.
請求項3に記載の情報処理装置。 The information processing apparatus according to claim 3, wherein when the test target apparatus is operated, a signal generated inside the test target apparatus is converted by the conversion software and stored as the scenario in the scenario database.
請求項1に記載の情報処理装置。 The information processing apparatus according to claim 1, wherein the scenario database classifies and stores the scenario according to a function provided by the scenario in the test.
請求項1に記載の情報処理装置。 The other end of the two connection circuits, one end of which is connected to the power source, is connected to the device under test and to itself, and a signal set in advance to the connection circuit is output, so that the power to the device under test is The information processing apparatus according to claim 1, wherein supply is controlled.
テスト対象装置をユーザが操作した場合、前記テスト対象装置の内部で生成される信号と同じ信号を生成するためのデータを、テストデータとして投入し、
テスト対象装置が投入されたテストデータに伴って出力するデータであって、前記テスト対象装置が正常に稼動している場合、出力されるデータを生成し、
前記テストデータが投入されたとき、前記テスト対象装置が実際に出力するデータを取得し、
前記取得したデータを前記正常データ生成部により生成されたデータと比較し、
前記比較の結果に基づいて、前記テスト対象装置が正常に稼動したか否かを判定する
ステップを含む情報処理方法。 An information processing method for an information processing device that performs a test for verifying whether or not a test target device is operating normally,
When the user operates the test target device, data for generating the same signal as the signal generated inside the test target device is input as test data,
Data to be output along with the test data input by the test target device, and when the test target device is operating normally, generate output data,
When the test data is input, obtain data actually output by the device under test,
Compare the acquired data with the data generated by the normal data generation unit,
An information processing method including a step of determining whether or not the test target device has normally operated based on a result of the comparison.
テスト対象装置をユーザが操作した場合、前記テスト対象装置の内部で生成される信号と同じ信号を生成するためのデータの、テストデータとしての投入を制御し、
テスト対象装置が投入されたテストデータに伴って出力するデータであって、前記テスト対象装置が正常に稼動している場合、出力されるデータの生成を制御し、
前記テストデータが投入されたとき、前記テスト対象装置が実際に出力するデータの取得を制御し、
前記取得したデータと前記生成されたデータとの比較を制御し、
前記比較の結果に基づいて、前記テスト対象装置が正常に稼動したか否かの判定を制御するステップ
を含むコンピュータが読み取り可能なプログラム。 A program that causes an information processing device that performs a test to verify whether or not a test target device is operating normally to execute information processing,
When the user operates the test target device, the input of data for generating the same signal as the signal generated inside the test target device is controlled as test data,
Data to be output along with the test data input by the test target device, and when the test target device is operating normally, control generation of output data,
When the test data is input, control the acquisition of data actually output by the device under test,
Controlling the comparison between the acquired data and the generated data;
A computer-readable program including a step of controlling whether or not the device under test has been normally operated based on the result of the comparison.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006158569A JP4711138B2 (en) | 2006-06-07 | 2006-06-07 | Information processing apparatus and method, program, and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006158569A JP4711138B2 (en) | 2006-06-07 | 2006-06-07 | Information processing apparatus and method, program, and recording medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007328509A true JP2007328509A (en) | 2007-12-20 |
JP4711138B2 JP4711138B2 (en) | 2011-06-29 |
Family
ID=38928944
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006158569A Expired - Fee Related JP4711138B2 (en) | 2006-06-07 | 2006-06-07 | Information processing apparatus and method, program, and recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4711138B2 (en) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010020561A (en) * | 2008-07-10 | 2010-01-28 | Ricoh Co Ltd | Information-processing device, image-processing device, method for testing software operation, program for testing software operation, and recording medium with the recorded program |
JP2010123111A (en) * | 2008-11-21 | 2010-06-03 | Toyota Motor Engineering & Manufacturing North America Inc | Method and system for automatic test data generation for lookup table |
CN102868796A (en) * | 2012-09-17 | 2013-01-09 | 广东欧珀移动通信有限公司 | Method and device for automated repeated path test and mobile terminal |
JP2017162120A (en) * | 2016-03-08 | 2017-09-14 | 三菱電機株式会社 | Information processor, information processing method, and information processing program |
WO2018207481A1 (en) * | 2017-05-09 | 2018-11-15 | 古野電気株式会社 | Automated inspection device |
CN110188159A (en) * | 2019-05-27 | 2019-08-30 | 深圳前海微众银行股份有限公司 | Collage-credit data cut-in method, device, equipment and computer readable storage medium |
JP2021002131A (en) * | 2019-06-20 | 2021-01-07 | モリカトロン株式会社 | Output tone error detection support program, output tone error detection support method, and output tone error detection support device |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04273341A (en) * | 1991-02-28 | 1992-09-29 | Hokuriku Nippon Denki Software Kk | Automatic test device for program |
JP2000112784A (en) * | 1998-09-30 | 2000-04-21 | Hitachi Software Eng Co Ltd | Program test support device and storage medium recording program test support program |
JP2005025385A (en) * | 2003-06-30 | 2005-01-27 | Kyodo Printing Co Ltd | Program testing device, program testing method, and program test system |
-
2006
- 2006-06-07 JP JP2006158569A patent/JP4711138B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04273341A (en) * | 1991-02-28 | 1992-09-29 | Hokuriku Nippon Denki Software Kk | Automatic test device for program |
JP2000112784A (en) * | 1998-09-30 | 2000-04-21 | Hitachi Software Eng Co Ltd | Program test support device and storage medium recording program test support program |
JP2005025385A (en) * | 2003-06-30 | 2005-01-27 | Kyodo Printing Co Ltd | Program testing device, program testing method, and program test system |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010020561A (en) * | 2008-07-10 | 2010-01-28 | Ricoh Co Ltd | Information-processing device, image-processing device, method for testing software operation, program for testing software operation, and recording medium with the recorded program |
JP2010123111A (en) * | 2008-11-21 | 2010-06-03 | Toyota Motor Engineering & Manufacturing North America Inc | Method and system for automatic test data generation for lookup table |
CN102868796A (en) * | 2012-09-17 | 2013-01-09 | 广东欧珀移动通信有限公司 | Method and device for automated repeated path test and mobile terminal |
JP2017162120A (en) * | 2016-03-08 | 2017-09-14 | 三菱電機株式会社 | Information processor, information processing method, and information processing program |
WO2018207481A1 (en) * | 2017-05-09 | 2018-11-15 | 古野電気株式会社 | Automated inspection device |
JPWO2018207481A1 (en) * | 2017-05-09 | 2020-03-12 | 古野電気株式会社 | Automatic inspection device |
CN110188159A (en) * | 2019-05-27 | 2019-08-30 | 深圳前海微众银行股份有限公司 | Collage-credit data cut-in method, device, equipment and computer readable storage medium |
CN110188159B (en) * | 2019-05-27 | 2023-05-12 | 深圳前海微众银行股份有限公司 | Credit data access method, device, equipment and computer readable storage medium |
JP2021002131A (en) * | 2019-06-20 | 2021-01-07 | モリカトロン株式会社 | Output tone error detection support program, output tone error detection support method, and output tone error detection support device |
Also Published As
Publication number | Publication date |
---|---|
JP4711138B2 (en) | 2011-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4711138B2 (en) | Information processing apparatus and method, program, and recording medium | |
US8527950B2 (en) | Verification of software applications | |
CN110830791B (en) | Automatic testing method, device and system for software function of television complete machine | |
US10725892B2 (en) | Method and system for automated testing of a graphical user interface for customer devices | |
CN102541728A (en) | Method for expanding identifiable control of automatic test tool | |
JP2010152429A (en) | Gui application test support device and test support method | |
CN103744775A (en) | Test case crash recovery | |
WO2019218464A1 (en) | Application program testing method and apparatus, and mobile terminal and medium | |
KR101460860B1 (en) | GUI Test apparatus using test scenario model based on states and the method thereof | |
CN112860587B (en) | UI automatic test method and device | |
CN113709650A (en) | Microphone testing method, device and storage medium | |
WO2024078601A1 (en) | Icon detection script generation method, and device and storage medium | |
CN111586332B (en) | Image transmission method, device and system | |
WO2018036528A1 (en) | Automatic testing method | |
CN112003647B (en) | Detection method, device and equipment for recycled optical modem and storage medium | |
CN110489350B (en) | NLP-based server testing method | |
CN115080326A (en) | Method, system, equipment and storage medium for BIOS (basic input output System) execution test | |
KR100856204B1 (en) | Apparatus and method for performing automatic test in verification device | |
CN116486893B (en) | UFS verification method and device, electronic equipment and computer readable storage medium | |
KR20150024972A (en) | System, verification apparatus, terminal device, method and computer-readable medium for verifying application | |
CN113157511B (en) | Peripheral detection method, device and readable storage medium | |
JP6417698B2 (en) | Application inspection apparatus and application inspection program | |
JP2010170459A (en) | Test system, test method, and test program | |
KR102535121B1 (en) | Apparatus for generating tag information of contents and method for the same | |
CN117174076A (en) | Voice test method and device, electronic equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090324 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100715 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100722 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100826 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110224 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110309 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140401 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |