本発明は、伝送プロトコルテスト方法及びテスト装置に関し、より詳細には、ネットワーク上のプロトコル伝送を受けて他の機器から制御されるネットワーク機器を開発するためのテスト方法及びテスト装置に関する。
マルチメディア技術の発展に伴って、ビデオ機器やテレビ機器などのなどのAV機器を含むオーディオ・ビジュアル機器や情報家電機器をネットワーク接続する技術が開発されている。例えば、IEEE1394方式のシリアルバスを用いたネットワーク(以下、「IEEE1394ネットワーク」と称し、この方式を「IEEE1394」と称する。)において規定された伝送プロトコルに沿って通信を行うことにより、相互に情報を伝達することができる。例えば、IEEE1394ネットワークなどのネットワークにおいては、例えば所定のコマンド(AV/C コマンド トランザクション、以下、「AV/Cコマンド」と称する。)を用いることにより、AV機器を遠隔操作することができる。
IEEE1394方式のバスラインに接続される機器においては、上述した伝送プロトコルに従って通信を行う必要があり、IEEE1394方式のバスラインに接続可能な機器は、その通信プロトコルに従って処理を行うための制御部が設けられている。例えば、IEEE1394方式のバスラインに接続される機器の設計時や製造時、修理時においては、その機器が上述の伝送プロトコルに従った伝送処理を行うことができるか否かをテスト(チェック)する必要がある。
以上の特許文献1および2においては、IEEE1394を対象とした伝送状態のテストを容易にするための手法が提案されている。上記文献に記載されている技術は、決められたテストシーケンスに沿ってテスト装置から送信される制御コマンドに対するレスポンスと期待値との比較を行い、レスポンスと期待値とが一致しない場合には、エラーを返すことによりテストを行う技術である。
特開2002−218007号公報
特開2003−69572号公報
しかしながら、上記先行技術文献に開示されている手法には、以下のような解決すべき課題があった。まず、テストを行う試験官がテスト対象機器を予め決められた状態にする必要があるという点で問題があった。例えば、レスポンスと比較するための基準値である上記期待値は、機器やネットワークの構成などによって変化する可能性があるため、このような変化に対応することが難しく、必ずしも開発者や試験官にとって接続検証を容易ではなかった。また、テスト対象機器が、予め設定されたテストシーケンスから外れた場合には、テスト結果がエラーになってしまいテストが継続できないという問題もあった。
テスト装置は、テスト対象機器に対して初期状態を設定する制御コマンドを送信し、機器がコマンドを実行した旨のレスポンスを受け取った後、機器の状態を調査するコマンドを送信し、返されるレスポンスから機器が所望の初期状態になっているかを確認する。各々のレスポンスはあらかじめ定められた期待値と比較され、期待値通りであれば次の段階へと進み、期待値と異なっている場合は初期設定に失敗した旨のエラーを返してテストを終了する。
テスト終了時には、テスト対象機器に対して終了状態を設定する制御コマンドを送信し、機器がコマンドを実行した旨のレスポンスを受け取った後、機器の状態を調査するコマンドを送信し、返されるレスポンスから機器が所望の終了状態になっているかを確認する。各々のレスポンスはあらかじめ定められた期待値と比較され、期待値と異なっている場合は終了設定に失敗した旨のエラーを返してテストを終了する。
以上により、連続して複数のテストを自動実行する場合でも安定したテストを行うことが可能となる。
次に、初期設定が完了した後のメインとなるテストの実行についてであるが、一つの制御コマンドに対して複数通りのレスポンスが得られるように仕様が定義されている場合がある。この場合、複数通りの期待値を準備しておき、機器がコマンドを実行した旨のレスポンスを受け取った後、機器の状態を調査するコマンドを送信し、返されるレスポンスから機器が仕様に定義されている状態になっているかどうかをチェックし、コマンド実行に対するレスポンスと対応が取れているかを仕様に沿った期待値と比較して判断することにより、より複雑なテストも実行可能となる。
また、テストによっては実行する時間帯や場所によって期待値が変化する場合がある。その場合は、期待値を外部の入力手段から入力したり、テスト機器から現在の期待値となる値をテスト実行直前に取得したりすることで、期待値を自動的に正しい値に再設定する事が可能となり、テスト容易性が向上する。
期待値は、通常レスポンスと同じフォーマットとして準備されるが、仕様によっては全てのデータを比較しなくても良い場合が存在する。その場合、比較しなくても良いデータはマスクする機能を実装することにより、本当に比較したいデータのみを比較することが可能となり、テストの精度が向上する。
テスト対象機器は現在の状態によってはコマンドを受け取ったという返事(上記レスポンスとは異なる)を返すことが出来ない場合がある。この状態をビジー状態と呼ぶことにする。通常ビジー状態にあるときにはテストが失敗してしまうが、テスト装置はテスト対象機器がビジー状態にある場合は、一定時間待ってから再度コマンドを送信する仕組みを設けることにより、他の要因に左右されない正確なテストが可能となる。
ネットワークによっては何らかの要因により意図的に接続が解除され、その後再度接続が確立される場合がある(IEEE1394の場合はバスリセット)。再接続の際にネットワークによっては接続構成(IEEE1394の場合はトポロジー)が以前と変わってしまう場合がある。この時、テスト対象機器が持つネットワーク上における固有のIDを記憶しておく機能及び当該IDをネットワーク上から探し出す機能を持たせることにより、不意あるいは意図的なネットワーク切断が生じた場合にもテストの続行が可能となり、テストの容易性が向上する。
テスト装置はテストサポート機器をコマンドで制御することにより、テスト対象機器が複数機器から同時に制御コマンドを受けた場合の動作検証を自動で行うことが可能となる。
すなわち、本発明の一観点によれば、ネットワークにより接続される機器間のデータ伝送を所定の伝送プロトコルにより行うデータ伝送システムをチェックする伝送テスト方法であって、テスト装置が、テスト対象機器に対して初期状態を設定する制御コマンドを送信し、前記テスト対象機器がコマンドを実行した旨のレスポンスを受け取った後、前記テスト対象機器の状態を調査するコマンドを送信し、返されるレスポンスから前記テスト対象機器が所望の初期状態になっているか否かを確認する初期状態設定ステップと、レスポンスを予め定められた期待値と比較し前記レスポンスが期待値通りであれば次の段階へと進み、期待値と異なっている場合は初期設定に失敗した旨のエラーを返してテストを終了するテスト処理ステップと、テスト終了時に、前記テスト機器が前記テスト対象機器に対して終了状態を設定する制御コマンドを送信し、前記テスト対象機器がコマンドを実行した旨のレスポンスを受け取った後、前記テスト対象機器の状態を調査するコマンドを送信し、該テスト対象機器から返されるレスポンスから前記テスト対象機器が所望の終了状態になっているか否かを確認する終了処理ステップとを有することを特徴とする伝送テスト方法が提供される。さらに、各々のレスポンスを、予め定められた期待値と比較し、期待値と異なっている場合は終了設定に失敗した旨のエラーを返してテストを終了するステップを有することを特徴とする。これにより、テスト処理の前後に、初期設定処理と終了処理とを行うことにより、テスト処理を安定して行うことができる。
尚、前記初期状態設定ステップにおいて、前記テスト対象機器から返されるレスポンスに基づいて前記テスト対象機器が所望の初期状態になっていないと判断された場合に、前記テスト処理ステップの後であって前記終了処理ステップの前のステップに移行し、その後に前記終了処理ステップを行うようにすることもできる。
前記テスト処理ステップは、1つの制御コマンドに対して複数通りのレスポンスが得られるように仕様により定義されている場合において、対応する複数通りの期待値を準備するステップと、前記テスト対象機器が前記制御コマンドを実行した旨のレスポンスを前記テスト装置が受け取った後に、該テスト装置が前記テスト対象機器の状態を調査するためのコマンドを前記テスト対象機器に対して送信するステップと、該コマンドに応じて返されるレスポンスに基づいて、前記制御コマンドの実行に対するレスポンスと前記複数通りの期待値のうちの仕様に沿った期待値とを比較するステップとを有することを特徴とする。これにより、前記テスト対象機器が当該伝送プロトコルに従っているか否かがわかるため、複雑なテストも実行可能となる。
実行する時間帯や場所によって期待値が変化するテストの場合において、前記期待値を外部から入力するか、又は、前記テスト装置から現在の期待値となる値をテスト実行直前に取得するステップを含むことを特徴とする。これにより、期待値を自動的に正しい値に再設定する事が可能となり、テスト容易性が向上する。
さらに、期待値をマスクするマスクステップを有することを特徴とする。これにより、期待値は、通常レスポンスと同じフォーマットとして準備されるが、仕様によっては全てのデータを比較しなくても良い場合が存在する。その場合には、比較しなくても良いデータはマスクすることにより、本当に比較したいデータのみを比較することが可能となり、テストの精度が向上する。
さらに、前記テスト対象機器がコマンドを受け取ったという返事を返すことができないビジー状態において、前記テスト装置は前記テスト対象機器がビジー状態にある場合に、一定時間経過後に再度前記コマンドを送信するステップを有することを特徴とする。これにより、通常ビジー状態にあるときにはテストが失敗してしまうが、テスト装置はテスト対象機器がビジー状態にある場合は、一定時間待ってから再度コマンドを送信する仕組みを設けることにより、他の要因に左右されない正確なテストが可能となる。
さらに、前記テスト対象機器が持つ前記ネットワーク上における固有のIDを記憶するステップと、該IDを前記ネットワーク上から検索するステップとを有することを特徴とする。これにより、不意あるいは意図的なネットワーク切断が生じた場合にもテストの続行が可能となり、テストの容易性が向上する。さらに、ネットワーク接続が解除され、その後再度接続が確立される場合において(バスリセット)、該再接続の際に前記ネットワークによっては接続構成(トポロジー)が再接続前と変わる場合に、探し出す機能を持たせることにより、不意あるいは意図的なネットワーク切断が生じた場合にもテストの続行が可能となり、テストの容易性が向上する。
さらに、前記テスト機器と前記テスト対象機器とにテストサポート機器を接続するステップと、前記テスト対象機器と前記テストサポート機器とに対してコマンドを送るステップとを有することを特徴とする。これにより、テスト装置はテストサポート機器をコマンドで制御することにより、テスト対象機器が複数機器から同時に制御コマンドを受けた場合の動作検証を自動で行うことが可能となる。
本発明の他の観点によれば、ネットワークにより接続される機器間のデータ伝送を所定の伝送プロトコルのテスト装置であって、コマンドを送信するコマンド送信部と、期待値を予め記憶する記憶部と、前記期待値と他の機器からのレスポンス値とを比較する比較部と、テスト対象機器に対して初期状態を設定する制御コマンドを送信し、前記テスト対象機器がコマンドを実行した旨のレスポンスを受け取った後、前記テスト対象機器の状態を調査するコマンドの送信を前記コマンド送信部に指令し、返されるレスポンスから前記テスト対象機器が所望の初期状態になっているか否かを確認し、レスポンスを前記記憶部に予め記憶された期待値と前記レスポンスとを前記比較部により比較しその結果、前記期待値通りであれば次の段階へと進み、期待値と異なっている場合は初期設定に失敗した旨のエラーを返してテストを終了するテストを行い、テスト終了時に前記テスト対象機器に対して終了状態を設定する制御コマンドを送信するように前記コマンド送信部に指令し、前記テスト対象機器がコマンドを実行した旨のレスポンスを受け取った後、前記テスト対象機器の状態を調査するコマンドを送信するように前記コマンド送信部に指令し、前記テスト対象機器から返されるレスポンスに基づいて前記テスト対象機器が所望の終了状態になっているか否かを確認する終了処理を行う制御部とを有するテスト装置が提供される。
本発明のテスト手法及びテスト装置を用いることにより、ネットワーク機器の開発者又は検査者は、伝送プロトコルによる制御を受けて動作する機器の開発において、容易に接続検証を行うことができる。
本発明に係る伝送プロトコル技術は、現在の機器やネットワークの状態に応じてテストの期待値を設定できるようにすることで、機器やネットワーク構成などの変化に対応したテストができるようにすることを特徴とする。このように規定された伝送プロトコルに沿ってネットワーク又は機器間の通信を行う方式を、本明細書では、所定の伝送プロトコルと称する。
以下、図面を参照して本発明の実施の形態による伝送プロトコルテスト技術について図面を参照しつつ説明を行う。本発明が対象とする伝送システムは、コマンドを送信すると該コマンドを受けた旨の受信レスポンスを受け取り、対応する応答を受けると該応答を受けた旨の応答を返す処理一連の処理を1つの処理単位とするネットワーク伝送システムが対象となる。このような一連の処理を処理単位とすることにより、ある処理(「トランザクション」とも称する。)が完了するまで、他のトランザクションによって他の処理が開始されることがないような仕組みが作られている。
図1は、本発明の第1の実施の形態によるIEEE1394伝送プロトコルテストシステムの一構成例を示すブロック図である。図1に示すように、本実施の形態によるIEEE1394伝送プロトコルテストテストシステムAは、伝送プロトコルテストを行う伝送プロトコルテスト装置1と、テスト対象機器21と、を有している。伝送プロトコルテスト装置1とテスト対象機器21とは、それぞれ、IEEE1394通信ポート1a、21aを有しており、このIEEE1394通信ポート1a、21aを介してIEEE1394用ケーブルL1を介して通信を行うことができる。
伝送プロトコルテスト装置1は、例えばパーソナルコンピュータ(以下「PC」と称する。)である。伝送プロトコルテスト装置1は、AV/Cコマンドに関するコマンドシーケンス処理を行うコマンドシーケンス処理部3aを含めた全体の制御と情報の記憶を行う制御・記憶部3と、データ、例えば、テスト装置から送信される制御コマンドに対するレスポンスと期待値との比較を行う比較部5と、情報を表示する表示部11と、データ入力操作を行う入力部15と、入力部15からの入力操作に応じて制御・記憶部3を介してコマンドを送信するコマンド送信部7と、コマンド送信部からのAV/Cコマンドを送信するとともに、レスポンスを受信し比較部5に送るインターフェイス(I/F)部17と、を有している。テスト対象機器は、AV機器、例えば、デジタルビデオカメラ、チューナを有する液晶テレビなどが含まれる。テスト者は、入力部15から期待値などを適宜入力することが可能である。
次に、本実施の形態による伝送プロトコルテスト処理の流れについて説明する。図2は、本実施の形態による伝送プロトコルテスト処理の流れを示すフローチャート図である。
図1および図2に示すように、まず、ステップS1においてテストを開始すると、ステップS2において、図1に示す伝送プロトコルテスト装置1は、テストの前提条件を設定するために、テスト対象機器21に対してテスト対象機器21を初期状態に設定する制御コマンドを送信し、テスト対象機器21が上記制御コマンドを実行した旨のレスポンスをテスト対象機器21から受け取る。次いで、ステップS3において、テスト対象機器21の状態を調査するコマンドをテスト対象機器21に対して送信し、テスト対象機器21から返されるレスポンスに基づいて、テスト対象機器21が所望の初期状態になっているか否かを確認する。
図2に示す処理においては、上記の各々のレスポンスは、予め定められた期待値と比較することにより、レスポンスが期待値通りであれば次の段階へと進み、レスポンスが期待値と異なっている場合は初期設定に失敗した旨のエラーを返してテストを終了するようになっている(例えば、ステップS5で失敗した場合には、テスト終了ステップS8に進む)。
ステップS3において状態確認の結果、初期状態になっていることが確認されると、ステップS4に進みテスト処理を行う。この場合には、ステップS4においてテスト装置1からテスト対象機器21に対してテストを開始するためのAV/Cコマンドを送り、テスト対象機器21からのレスポンスを受ける。ステップS5において、レスポンスが期待値の通りであるか否かを判定することにより状態確認処理を行い、テスト対象機器21からのレスポンスが期待値の通りであれば、ステップS6において、終了処理ステータスコマンドを送り終了処理を行う。ステップS7において終了処理に関する状態確認を行い、終了処理に成功している場合にはステップS8に進みテストを終了する。失敗している場合でもステップS8に進みテストを終了する。
終了処理の失敗に関して何らかの原因がある。そこで、テスト者は一連の処理の成否を見ることにより、どこに不具合があるかを発見する手掛かりを得ることができる。また、終了処理の成功の有無は、テストを連続して行う場合には特に重要である。すなわち、あるテストに失敗した原因が前のテストの終了処理に失敗したためであるという場合があるからである。尚、テストによっては、必ずしも終了処理が必要ではない場合もありうるので、このようなテストの場合には、状態確認処理を行うことなく次のテストに移行するように処理を行なうことができる。
尚、ステップS5におけるテスト終了処理時には、テスト対象機器21に対して終了状態を設定する旨の制御コマンドを送信し、テスト対象機器21がコマンドを実行した旨のレスポンスを受け取った後、テスト対象機器21の状態を調査するコマンドを送信し、返されるレスポンスからテスト対象機器21が所望の終了状態になっているか否かを確認する。各々のレスポンスは予め定められた期待値と比較され、期待値と異なっている場合は終了設定に失敗した旨のエラーを返してテストを終了する。
以上の処理によれば、連続して複数のテストを実行する場合に、前提条件である初期状態の設定処理と初期状態に戻す終了処理とを1つのセットとして行い、テスト対象機器が終了状態になっているか否かを確認した後にテストの終了処理を行うため、連続した複数のテストを自動的に行うことができ、かつ、安定した状態でテストを行うことが可能となるという利点がある。
次に、本発明の第2の実施の形態による伝送プロトコルテスト技術について図面を参照しつつ説明を行う。図3は、本実施の形態による伝送プロトコルテスト処理の流れを示すフローチャート図である。本実施の形態による伝送プロトコルテスト技術は、初期設定が完了した後のメイン処理となるテストの実行処理において、1つの制御コマンドに対して複数通りのレスポンスが得られるように仕様が定義されている場合に関する。1つの制御コマンドに対して複数通りのレスポンスが得られるように仕様が定義されている場合に対応して、本実施の形態においては、図1に示すテスト装置1の制御・記憶部3に複数通りの期待値を記憶させておく。テスト装置1がテスト対象機器21に対してコマンドを送り、テスト対象機器21からテストコマンドを実行した旨のレスポンスを受け取った後、テスト装置1がテスト対象機器21の状態を調査するコマンドをテスト対象機器21に対して送信し、テスト対象機器21から返されるレスポンスに基づいてレスポンスを返したテスト対象機器21が、例えばIEEE1394などの伝送プロトコル上で規定されている仕様に定義されている状態になっているか否かをチェックし、コマンド実行に対するレスポンスと対応が取れているかを仕様に沿った期待値と比較して判断することにより、複雑なテストも実行可能となる。
以下に、本実施の形態の処理について詳細に説明を行う。図1および図3に示すように、まず、ステップS11においてテストを開始すると、ステップS12において、図1に示す伝送プロトコルテスト装置1は、テストの前提条件を設定するために、テスト対象機器21に対してテスト対象機器21を初期状態に設定する制御コマンドを送信し、テスト対象機器21が上記制御コマンドを実行した旨のレスポンスをテスト対象機器21から受け取る。次いで、ステップS13において、テスト対象機器21の状態を調査するコマンドをテスト対象機器21に対して送信し、テスト対象機器21から返されるレスポンスに基づいて、テスト対象機器21が所望の初期状態になっているか否かを確認する。初期状態になっていれば、ステップS14に進み、テスト装置1からテスト対象機器21に対してテストコマンドを送る。本実施の形態による伝送プロトコルテスト処理では、上述のように、テスト機器21から送られる1つの制御コマンドに対して複数通りのレスポンスが得られるように仕様が定義されている。
1つの制御コマンドに対して複数通りのレスポンスが得られる場合、例えば状態1と状態2との2通りがある場合に、予めテスト装置1の制御・記憶部3に複数通りの第1および第2の期待値を準備しておく。上記制御コマンドをテスト対象機器21が実行した旨のレスポンスをテスト対象機器21からテスト機器1が受け取った後に、レスポンスと第1および第2の期待値とを比較し、例えば第1の期待値通りである場合には、状態1としてステップS19において状態確認を行いステップS20において終了処理を行いステップS21において状態確認を行いステップS20でテストを終了する。例えば第2の期待値通りである場合には、状態2としてステップS15において状態確認を行いステップS16において終了処理を行いステップS17において状態確認を行いステップS20でテストを終了する。
本実施の形態による伝送プロトコルテスト方法によれば、テスト機器1がテスト対象機器21の状態を調査するコマンドを送信し、返されるレスポンスから機器が仕様に定義されている状態のうち状態1になっているのか状態2になっているのかをチェックし、いずれかの状態においてコマンド実行に対するレスポンスと対応が取れているか否かを、仕様に沿った期待値と比較して判断することにより、複雑なテストも実行可能となる。
次に、本発明の第3の実施の形態による伝送プロトコルテスト方法について図面を参照しつつ説明を行う。テストによっては、実行する時間帯や場所などによって期待値が変化する場合がある。その場合は、期待値を外部の入力手段から入力するか、或いは、テスト機器21から現在の期待値となる値をテスト実行直前に取得する。図4は、本実施の形態による伝送プロトコルテスト処理の流れを示すフローチャート図である。
図4に示すように、本実施の形態による伝送プロトコルテスト方法においては、まずステップS31においてテスト開始し、ステップS32において初期設定を行う。ステップS33において初期設定が正しく行われているか否かに関する状態確認を行い、ステップS34において期待値を取得する。次いで、ステップS35において実際のテスト処理を行い、ステップS36においてステップS34において取得した期待値とテストにおけるレスポンスとを比較することにより状態確認を行う。状態確認に成功した場合には、ステップS37の終了処理を行い、ステップS38において終了状態になっているか否かの状態確認を行う。ステップS33、S36、S38の状態確認において失敗の場合には、いずれもテストを終了する。以上の処理によれば、期待値を自動的に正しい値に再設定することが可能となり、テストにおけるフレキシビリティーが向上する。
次に、本発明の第4の実施の形態による伝送プロトコルテストシステムについて、図5を参照しつつ説明を行う。図5は、本実施の形態による伝送プロトコルテストシステムの構成例を示すブロック図である。図5に示すように、本実施の形態による伝送プロトコルテストシステムBは、図1に示す伝送プロトコルテストシステムAに加えて、テストサポート機器35とテストサポート機器41とを有している。尚、テストサポート機器35、41は、例えばIEEE1394端子が設けられたPCであり、その実際の構成は、テスト機器1のうち図5の波線で囲まれた機能、すなわち、制御・記憶部と、コマンド送信部とインターフェイス部とを有する構成となっている。
テストサポート機器35にはポート部35aが、テストサポート機器41にはポート部41aが設けられており、ケーブルL2によりポート21aとポート35aとが、ケーブルL3によりポート35aとポート41aとが接続可能となっている。図5に示す構成においては、テスト機器1からポート1a−ポート21a−ポート31aを介してテストサポート機器35を通り、テスト対象機器21にコマンドを送る第1ルートR1、テスト機器1からポート1a−ポート21aを介してテストサポート機器35を通らずにテスト対象機器21にコマンドを送る第2ルートR2とが形成されている。上記構成によれば、テスト機器1からの1つのコマンドを、第1ルートR1と第2ルートR2とを介してテスト対象機器21に送ることにより、あたかも複数の機器から同時にコマンドを出している状態を作り出すことができ、テスト対象機器21が複数の機器からのコマンドに対して応答可能であるか否かを調査することができる。例えば、IEEE1394においては、異なるTVから同じコマンドがほぼ同時に1台のビデオデッキに対して出される場合があるが、このような状況に関連するテストに対応することができる。例えば、1台からのコマンドは受け付けるが、2台からのコマンドを同時に受け付けることができない機器であるか、或いは両方からのコマンドを同時に受け付けることができる機器であるかを調べることができる。テスト装置はテストサポート機器をコマンドで制御することにより、テスト対象機器が複数機器から同時に制御コマンドを受けた場合の動作検証を自動で行うことが可能となる。
尚、期待値は、通常、レスポンスと同じフォーマットとして準備されているが、仕様によっては、全てのデータを比較しなくても良い場合がある。このような場合に、比較しなくても良いデータをマスクする機能を実装することができるように構成すれば、本当に比較したいデータのみを比較することが可能となり、テストの精度が向上する。
また、テスト対象機器は、現在の状態によってはコマンドを受け取ったという返事(上記の「レスポンス」とは異なる。)を出すことができない場合もある。この状態をビジー状態と呼ぶる。通常ビジー状態にあるときには、上記のテストは失敗してしまうが、テスト装置1は、テスト対象機器21がビジー状態である場合は、一定時間待ってから、再度コマンドを送信する仕組みを設けることもできる。このようにすれば、ビジー状態になる他の要因に左右されない正確なテストが可能となるという利点がある。
また、ネットワークによっては、何らかの要因により意図的に接続が解除され、その後に再度接続が確立される場合がある(IEEE1394の場合は、「バスリセット」と呼ばれる)。再接続の際に、ネットワークによっては接続構成(IEEE1394の場合はトポロジーと呼ばれる)が以前と変わってしまう場合がある。このような場合に、図6に示すように、テスト対象機器21が持つネットワーク上における固有のIDを記憶しておく機能51及び当該IDをネットワーク上から検索することができる検索機能53を持たせることにより、不意に、あるいは、意図的に、ネットワークが切断された場合においても、テストの続行が可能となり、テストの容易性が向上する。
次に、本発明の第5の実施の形態による伝送プロトコルテスト方法について図面を参照しつつ説明を行う。図14は、本実施の形態による伝送プロトコルテスト方法における処理の流れを示すフローチャート図であり、図15は、この際のテスト装置とテスト対象機器間におけるAV/Cコマンド及びレスポンスのやり取りを示す図である。本実施の形態による伝送プロトコルテスト方法は、本発明の第1の実施の形態による伝送プロトコルテスト方法の変形例として位置付けることができる。第1の実施の形態においては、何らかの失敗が起こった時には、必ずテストを終了することになる(例えばステップS3から失敗の場合にステップS8に進む)。これに対して、図14に示すように、本実施の形態においでは、初期設定時の状態確認ステップS103において失敗した場合に、ステップS108ではなくステップS106に進み終了処理を行う。このように、初期設定におけるエラーが起こった場合に終了処理の前に進むことが特徴である。
図15に示すように、例えば、テスト装置201とテスト対象機器291とにおけるやり取りにおいて、第1のコマンドR21と第2のコマンドR23に関しては、正常な応答R22、R24があり、第3のコマンドR25と第4のコマンドR27に関しては、NG応答R26、R28であった場合を想定する。このように初期設定やテスト処理における処理が完全ではなく一部に失敗があった場合でも、既に幾つかのコマンド実行に成功している可能性があり(R21、R23)、終了処理を行わないで終了した場合には、次のテストに不都合な状態で終わってしまうことがある。この場合、図2に示す処理では、テスト処理で成功しても失敗しても同じであるが、実際にはテストに失敗した場合には、失敗である旨と、どの処理が失敗であったかがなどを明瞭にするのが好ましい。
すなわち、処理において、一部成功、一部失敗の場合には、成功した設定は既に行われているため、この設定をリセットしない状態では、次のステップに移行できなくなり、自動処理も困難になる。そこで、ステップS106の終了処理を行うことにより、次のステップ(テスト)に移行できるようになる。尚、テスト失敗の場合と設定に失敗した場合とで、例えば報知されるエラーの種類を異なるようにすることにより、どの処理が失敗であったかを判断できるようにすれば、テストがより簡単になり、次のテストにも失敗と成功の状況(結果)を反映することができるという利点がある。
以下に具体的なテスト方法について、デジタル液晶テレビ(一般的なデジタルテレビに共通であるが、ここでは、環境に優しく省電力かつ省スペースの薄型液晶テレビを対象に説明する。)の選局が正しく行なわれるか否かに関するテストを例に挙げ、図7から図13までを参照して説明する。図7は図1に対応する図であり、テスト装置がPC1、テスト対象機器がデジタル液晶TV91とした具体例を示す図である。図8は、期待値をテスト対象機器から取得する場合のテストシーケンスを示す図である。図9は、ノードID−GUID変換データベースの具体例を示す図である。図10は、入力のダイアログを示す図である。図11は、マスクパターンについて具体的に説明するための図である。図12は、AV/Cコマンド及びレスポンスを含む状態遷移図である。図13は、テストサポート装置の役割を説明するための図である。尚、本実施例においては、デジタル液晶テレビ91の選局が正しく行なわれるかのテストをIEEE1394のAV/Cコマンドを用いて行う場合を例に挙げて説明する。
図12に示すように、まず初期設定を行なうため、テスト装置1はテスト対象機器(デジタル液晶テレビ)91に対して初期設定チャンネルを指定する選局コマンドR1を送信する。デジタル液晶テレビ91は、コマンドを受け取ったことを示す応答(ack)R2を返す。その後、自らが選局可能な状態にあって、選局処理をこれから実行するか、又は、実行して成功した場合にはコマンドを受け付けた旨のレスポンス(ACCEPTED)R3をテスト装置1に対して返す。また、選局可能な状態にないなど、コマンドの受付けが不可能な場合には、実行不可のレスポンス(REJECTED)R4をテスト装置1に対して返す。テスト装置1は、受け取ったレスポンスがREJECTED場合には、初期設定に失敗したのでテスト実行エラーとして当該テストを終了する。受け取ったレスポンスがACCEPTEDの場合には、デジタル液晶テレビの現在のステータスを確認するためにDESCRIPTORという情報構造の読み出しを行う。このDESCRIPTORの読み出しは、DESCRIPTORのOPEN/READ/CLOSEという3つの段階を経て行なわれる。各々の段階を実現するためには、DESCRIPTOR制御コマンドを用いる。各コマンドの実行時にREJECTEDレスポンスを受け取った場合には初期設定に失敗したと判断されテスト実行エラーとしてテストを終了する。または、初期設定でOPENしてCLOSEを行っていないままエラーとなった場合には終了処理を実行し、DESCRIPTORをCLOSEしてからテストを終了するようにすると、テストの連続実行時に次のテストに悪影響を与えない様に出来る。DESCRIPTORの読み出しに成功した場合は、DESCRIPTORの情報の一部であるorg_netowrk_id(どの放送ネットワークを選択しているか)とservice_id(放送ネットワークの内のどのサービス(チャンネル)を選択しているか)が、初期設定で指定した所望のチャンネルと一致している否か比較を行い、両者が一致していれば、初期設定が成功したと判断出来る。
また、デジタル液晶テレビなどのデジタルテレビにおいては選局に時間がかかることがあり、DESCRIPTORを読み出した時点では選局動作を実行中の場合もある。そのため、DESCRIPTOR読み出し後に選局動作中かどうかを示すsearchingフラグをチェックし、選局中の状態を示している場合はsearchingフラグが選局終了状態になるまで繰り返しDESCRIPTOR読み出しを実行することで、誤って選局失敗と判断することを防ぐことが可能となる。
ここでは初期設定の例として初期設定チャンネルの設定を例に挙げたが、初期設定は電源のON/OFFであったり、バスリセットであったりとテスト仕様で定義されている状態を設定するものとする。初期設定が終了した後は、テスト仕様に記載されたテストを実行する。
テスト装置はテスト仕様書に従ってテスト対象機器(デジタル液晶テレビ)に対してテスト用のチャンネルを指定する選局コマンドを送信する。デジタル液晶テレビはまずコマンドを受け取ったことを示すackを返す。その後、自らが選局可能な状態にあって、選局処理をこれから実行するまたは実行して成功した場合にはコマンドを受け付けた旨のレスポンス(ACCEPTED)をテスト装置に対して返す。また、選局可能な状態に無い等コマンドを受付不可能な場合には実行不可のレスポンス(REJECTED)をテスト装置に対して返す。テスト装置は受け取ったレスポンスがREJECTEDの場合にはテストに失敗したのでテスト実行エラーとして当該テストを終了する。
受け取ったレスポンスがACCEPTEDの場合には、デジタル液晶テレビの現在のステータスを確認するためにDESCRIPTORという情報構造の読み出しを行なう。このDESCRIPTORの読み出しは、DESCRIPTORのOPEN/READ/CLOSEという3つの段階を経て行なわれる。各々の段階の実現にはDESCRIPTOR制御コマンドを用いる。各コマンドの実行時にREJECTEDレスポンスを受け取った場合にはテストに失敗したのでテスト実行エラーとして当該テストを終了する。
DESCRIPTORの読み出しに成功した場合は、DESCRIPTORの情報の一部であるorg_netowrk_id(どの放送ネットワークを選択しているか)とservice_id(放送ネットワークの内のどのサービス(チャンネル)を選択しているか)を、指定した所望のチャンネルと一致しているか比較し、一致していればテストが成功したと判断出来る。
また、デジタル液晶テレビでは選局に時間がかかることがあり、DESCRIPTORを読み出した時点では選局動作を実行中の場合がある。そのため、DESCRIPTOR読み出し後に選局動作中かどうかを示すsearchingフラグをチェックし、選局中の状態を示している場合はsearchingフラグが選局終了状態になるまで繰り返しDESCRIPTOR読み出しを実行することで、誤って選局失敗と判断することを防ぐことが可能となる。
テストで指定したチャンネルによっては、現在そのチャンネルが存在しないためにACCEPTEDを返しても実際には選局を実行しないデジタル液晶テレビも存在する。その場合、初期設定時にDESCRIPTORを読み込んだ際にメモリ上に記憶したorg_netowrk_idとservice_idとテスト後のorg_netowrk_idとservice_idとを比較し、変更が無かった場合にはテストに成功したと判断することもある。
テストの実行に成功した後は、テストの内容によっては終了処理が必要な場合がある。
テスト装置はテスト対象機器(デジタル液晶テレビ)に対して終了処理チャンネルを指定する選局コマンドを送信する。デジタル液晶テレビはまずコマンドを受け取ったことを示すackを返す。その後、自らが選局可能な状態にあって、選局処理をこれから実行するまたは実行して成功した場合にはコマンドを受け付けた旨のレスポンス(ACCEPTED)をテスト装置に対して返す。また、選局可能な状態に無い等コマンドを受付不可能な場合には実行不可のレスポンス(REJECTED)をテスト装置に対して返す。テスト装置は受け取ったレスポンスがREJECTEDの場合には終了処理に失敗したのでテスト実行は成功、終了処理エラーとして当該テストを終了する。
受け取ったレスポンスがACCEPTEDの場合には、デジタル液晶テレビの現在のステータスを確認するためにDESCRIPTORという情報構造の読み出しを行なっても良い。DESCRIPTORの読み出しを行なわない場合は、選局コマンドへのACCEPTEDレスポンスが得られた時点で一連のテストシーケンス実行が成功したとしてテストを終了する。
DESCRIPTORの読み出しは、DESCRIPTORのOPEN/READ/CLOSEという3つの段階を経て行なわれる。各々の段階の実現にはDESCRIPTOR制御コマンドを用いる。各コマンドの実行時にREJECTEDレスポンスを受け取った場合には終了処理に失敗したのでテスト実行は成功、終了処理エラーとして当該テストを終了する。
DESCRIPTORの読み出しに成功した場合は、DESCRIPTORの情報の一部であるorg_netowrk_id(どの放送ネットワークを選択しているか)とservice_id(放送ネットワークの内のどのサービス(チャンネル)を選択しているか)を、終了処理で指定した所望のチャンネルと一致しているか比較し、一致していれば終了処理が成功したと判断し、一連のテストシーケンス実行が成功したとしてテストを終了する。
また、デジタル液晶テレビでは選局に時間がかかることがあり、DESCRIPTORを読み出した時点では選局動作を実行中の場合がある。そのため、DESCRIPTOR読み出し後に選局動作中か否かを示すsearchingフラグをチェックし、選局中の状態を示している場合は、searchingフラグが選局終了状態になるまで繰り返しDESCRIPTOR読み出しを実行することにより、誤って選局失敗と判断することを防ぐことができる。ここでは終了処理の例として、終了処理チャンネルの設定処理を例示したが、終了処理は電源のON/OFFであっても良く、或いは、バスリセットであっても良く、テスト仕様で定義されている状態を設定するものとする。
上記一連のテストシーケンスにおいて、デジタル液晶テレビが連続して多数のコマンドを受信して処理をするために、これ以上コマンドを受け取れない状態にあった場合、ackの一種であるack_busyを返し、AV/Cコマンドの仕様で定められている100ms以内にレスポンスを返せない場合がある。この時、レスポンスが返らなかった事を理由としてテスト失敗と判断させるようにすることも可能である。しかしながら、デジタル液晶テレビのテスト実行時のように、長時間連続して多数のコマンドを受信して実行するのはユーザーの実際の利用環境とはかけ離れている。そこで、連続したコマンド受信でビジー状態に陥ったというだけでテスト結果をエラーとしてしまうのは実情に合わず問題がある。そこで、テスト装置1にデジタル液晶テレビ91がビジー状態にあるか、又は、レスポンスが返って来ない場合には、一定時間をおいて同じコマンドを再送する機能を設けることにより、デジタル液晶テレビがビジー状態から回復し、テスト結果を実情にあったものに改善させることができる。
また、初期設定や終了処理においてバスリセットを行った場合、そのままではテスト装置1からデジタル液晶テレビ91に宛ててコマンドを送ることが出来なくなる可能性がある。
IEEE1394の仕様として、バスリセットが発生した後は、機器同士の接続関係(トポロジー)が初期化されて、バスリセット前と各機器(ノード)に振られているノードIDが変わってしまう場合がある。AV/Cコマンドは、ノードIDを指定して送信するため、ノードIDが変わってしまうと、テスト装置1は誤った機器にコマンドを送ることになり、正常なテスト結果が得られなくなる。
各機器はバスに接続された時に割り振られるノードIDとは別に、Configuration ROMと呼ばれる機器情報を格納するアドレス空間内に64bitからなる機器固有のID(Global Unique ID(GUID))を持っている。テスト装置1は、このGUIDとノードIDとを関連付けるデータベースを装置内に備えることにより、バスリセットが生じてノードIDが変化したとしてもGUIDを手掛かりとして新たなノードIDを調査し、データベースの更新を行う。このようにして得られた新しいノードIDを指定してコマンドを送信することにより、バスリセットの前後でも正常なテストが可能となる。
地上デジタル放送の受信機能を有するデジタル液晶テレビの場合のテストにおいては、テストを行う地域によって選局可能/不可能なチャンネルが異なる場合がある。また、同じチャンネルでも、放送コンテンツは時間帯によって異なるため、例えば副音声として選択可能な音声数等が異なる場合もある。このように、地域性、時間性に左右されるテストの期待値を予め固定値として作成してテスト装置に組み込むのは難しい。そこで、選局可能/不可能なチャンネルを、テスト実行者が入力出来るように入力手段を設けることでテストを行う場所の実情に合ったテスト実施が可能となる。図10は、上記入力手段の一構成例を示す図である。図10に示すように、入力手段101は、選局可能チャンネル1から3と選局不可チャンネル103−3’とを有しており、それぞれに対応付けして、入力ボタン103−1から103−3まで(以下略)と、103−3’との表示を有している。図10に示す入力用ダイアログを表示することにより、テスト実行者にテストに適したチャンネル入力を要求し、入力された値を期待値に取り込むことができる。さらに、時間によって期待値の内容が左右される場合には、図8に示すように、テスト実行の直前(例えば初期設定を行った後)に、例えば上記DESCRIPTORを一度先読みして期待値に必要な値を抜き出してテスト用の期待値を作成することにより(ステップS84)、時間に左右されないテスト実施が可能となる。尚、図8は、期待値取得ステップS84と、期待値をステップS86の状態確認において利用する旨を図2に示すフローに追加したフローである。
テスト内容によっては、デジタル液晶テレビ91から返って来たレスポンスの値のうち全てのbitを期待値と比較する必要はない場合がある。この際、比較しなくても良いbitをマスクしたマスクパターンを作成しておき、レスポンスと期待値とが異なっていた場合には、マスクパターンでそのbitがマスクされていないか否かを確認し、マスクされていた場合には期待値と一致していなくてもテスト成功とみなすことにより、より細かい精度でテスト結果を得ることが可能となる。図11に一例を示す。図11に示すように、レスポンスRpと期待値Epとを比較する場合に、マスクパターンM1によると、比較結果C1にように全てのbitが一致している(全て0)とみなされテスト成功となるが、マスクパターンM2によると比較値C2のうち2箇所でbitが一致していない(Xとなっている)ためテストは失敗となる。
2つ以上の機器から同時期にコマンドを受け付けた場合の動作を検証するテストを行う場合は、通常はテスト装置を複数台用意し、別々にテスト対象機器に対してコマンドを送信する。この場合、複数台のテスト装置のコマンド送信タイミングを同期させるのが難しいという問題がある。テストサポート機器はテスト装置からパケット化されたコマンドを受け取ると直ちにパケット化されたコマンドを取り出し、テスト対象機器にコマンドを送信する。図13を参照しつつ、テストサポート機器101が1台の場合を例に説明を行う。
テスト装置1はテスト対象機器91宛てのノードIDをセットしたコマンドをパケット化したパケットAをテストサポート機器宛てのノードIDに送信する(R11)。テストサポート機器101は、受け取ったパケットを展開し、コマンドA’としてテスト対象機器に送信する(R12)。テスト対象機器91は、レスポンスB’をテストサポート機器101宛てに返し(R13)、テストサポート機器101は受け取ったレスポンスB’をパケット化してテスト装置1宛てのノードIDにパケットBとして送信する(R14)。以上の手順により、テスト装置1は、テストサポート機器101からのコマンド送受信の結果を把握することが出来る。テスト装置1はパケットBを受け取った後、パケットBの中身が期待したレスポンスであれば、テスト対象機器91に対してコマンドA’を送信する(R15)。これにより、2台のテスト装置からテスト対象機器に対して同じコマンドを送信したのと同じ効果を得ることが出来る。加えて、テスト装置が全てのコマンドとレスポンスの内容とを把握することが可能であるため、2つ以上の機器から同時期にコマンドを受け付けた場合の動作を簡単に検証するためのテストを自動化することが可能となる。
以上、本発明の各実施の形態による伝送プロトコルテスト技術について、図面を参照しつつ説明したが、本発明は上記各実施の形態による技術には限定されない。例えば、IEEE1394規格以外の他の伝送技術に関しても同様の方法を適用することができるのはいうまでもない。
本発明は、IEEE1394規格に沿った伝送プロトコルに関するテストの他に、同様のトランザクション処理を行う他の伝送プロトコルに沿った機器ネットワークのテストにも応用することができる。
図1は、本発明の第1の実施の形態によるIEEE1394伝送プロトコルテストシステムの一構成例を示すブロック図である。
本発明の第2の実施の形態による伝送プロトコルテスト処理の流れを示すフローチャート図である。
本発明の第3の実施の形態による伝送プロトコルテスト処理の流れを示すフローチャート図である。
本実施の形態による伝送プロトコルテスト処理の流れを示すフローチャート図である。
本発明の第4の実施の形態による伝送プロトコルテストシステムの構成例を示すブロック図である。
テスト対象機器が持つネットワーク上における固有のIDを記憶しておく機能及びIDをネットワーク上から検索することができる検索機能を有する構成を示す図である。
図1に対応する図であり、テスト装置がPC、テスト対象機器がデジタル液晶TVとした具体的な構成を示す図である。
期待値をテスト対象機器から取得する場合のテストシーケンスを示す図である。
ノードID−GUID変換データベースの構成例を示す図である。
入力ダイアログの表示例を示す図である。
マスクパターンの例を示す図である。
テスト装置とテスト対象機器間におけるAV/Cコマンド及びレスポンスのやり取りを示す図である。
テストサポート装置と、テスト装置及びテスト対象機器との関係を示す図である。
本発明の第5の実施の形態による伝送プロトコルテスト方法における処理の流れを示すフローチャート図である。
本発明の第5の実施の形態による伝送プロトコルテスト方法におけるテスト装置とテスト対象機器間におけるAV/Cコマンド及びレスポンスのやり取りを示す図である。
符号の説明
A…IEEE1394伝送プロトコルテストテストシステム、1…伝送プロトコルのテスト装置、1a…IEEE1394通信ポート、3…制御・記憶部、3a…コマンドシーケンス処理部、5…比較部、7…コマンド送信部、11…表示部、15…入力部、17…インターフェイス(I/F)部、21…テスト対象機器、21a…IEEE1394通信ポート、L…IEEE1394用ケーブル。