JP5495764B2 - 情報処理装置及び情報処理方法及びプログラム - Google Patents

情報処理装置及び情報処理方法及びプログラム Download PDF

Info

Publication number
JP5495764B2
JP5495764B2 JP2009287380A JP2009287380A JP5495764B2 JP 5495764 B2 JP5495764 B2 JP 5495764B2 JP 2009287380 A JP2009287380 A JP 2009287380A JP 2009287380 A JP2009287380 A JP 2009287380A JP 5495764 B2 JP5495764 B2 JP 5495764B2
Authority
JP
Japan
Prior art keywords
message
state transition
test
communication
order
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.)
Active
Application number
JP2009287380A
Other languages
English (en)
Other versions
JP2011130235A (ja
Inventor
将人 川崎
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2009287380A priority Critical patent/JP5495764B2/ja
Publication of JP2011130235A publication Critical patent/JP2011130235A/ja
Application granted granted Critical
Publication of JP5495764B2 publication Critical patent/JP5495764B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Communication Control (AREA)
  • Maintenance And Management Of Digital Transmission (AREA)

Description

本発明は、試験のための試験シナリオを生成し、試験シナリオに従って試験を行う技術に関する。
実環境を流れる通信データを収集し、収集した通信データから試験シナリオを生成し、試験を実行する方式として、特許文献1と特許文献2がある。
特許文献1では、通信データを収集および解析してメッセージに変換し、メッセージ間のシーケンスを解析して試験シナリオを生成し記録する。
また、試験実行時には、試験シナリオのメッセージとメッセージ間のシーケンスを通信設備模擬に渡し、実行している。
特許文献2では、収集した通信データに付加した時刻情報を元に、通信データを収集した順序で試験シナリオを生成する。また試験シナリオでは、直前の通信データからの時間間隔は、記録時と再生時で同じとなるようにしている。
特開2000−196705号公報 特開平10−23107号公報
特許文献1では、データ解析機能部、および通信設備模擬の動作が明らかにされておらず、具体性に欠ける。
またメッセージ間シーケンスにおいてもメッセージ間の順序が記録されることだけが明らかにされており、記録方式の具体性に欠ける。これの具体的な例として、特許文献2がある。
特許文献2の試験シナリオでは、通信データ間の順序は、通信データを収集したときの時間順序と同じである。
したがって、収集時と試験実行時で試験対象の動作順序が仕様の範囲内で変化した場合、収集時の通信データと試験実行時の通信データの対応付けに失敗し、両者を照合した結果は不一致となる。
つまり、仕様の範囲内の動作にも関わらず、試験結果は失敗として出力することとなる。そのため、ユーザに詳細な調査を負わせることとなり、試験効率が悪い。
また、試験対象からの通信データ出力が、タイムアウトなどの所定の時間制約を守ってなされない可能性もあり得るが、特許文献2では時間制約については考慮外であり、やはり仕様への適合性と試験の合否結果が一致しないケースが発生する。
この発明は、上記のような課題を解決することを主な目的としており、通信データ間の順序やタイミングが仕様の範囲内で変化した場合でも、仕様への適合性と試験の合否結果を一致させることを主な目的とする。
本発明に係る情報処理装置は、
試験対象装置に対する試験を行う情報処理装置であって、
前記試験対象装置に対する試験に先立ち、所定の通信装置間で送受信されている複数のメッセージを受信する通信部と、
前記試験対象装置が用いる通信プロトコルにおいて発生し得る複数の状態と前記複数の状態における状態遷移の順序が示され、状態遷移ごとに、メッセージの属性についての条件とメッセージの受信時刻についての条件が状態遷移条件として定義されている通信順序ルールを入力する通信順序ルール入力部と、
前記通信順序ルールに示される状態遷移の順序に従って、状態遷移ごとに、前記通信部により受信されたメッセージの中から状態遷移条件に合致する属性及び受信時刻のメッセージを検索し、状態遷移条件に合致するメッセージが取得できた場合に、当該状態遷移を選択状態遷移として選択するとともに、前記選択状態遷移に対して取得されたメッセージを前記選択状態遷移よりも前の順序の状態遷移であって既に選択状態遷移として選択されている状態遷移に対して取得されているメッセージに連結し、複数のメッセージが選択状態遷移の順序に沿って順序付けられる試験シナリオを生成する試験シナリオ生成部と、
前記試験シナリオ生成部により生成された試験シナリオに含まれるメッセージを前記試験シナリオに示される順序に従って用い、前記試験対象装置に対する試験を行う試験管理部とを有することを特徴とする。
本発明によれば、試験対象装置が用いる通信プロトコルにおいて発生し得る状態遷移の順序が示される通信順序ルールと実環境を流れるメッセージを用いて、通信仕様の範囲に含まれる複数種の状態遷移パターンが含まれる試験シナリオを生成し、試験シナリオに従って試験対象装置に対する試験を行うため、同じ通信仕様の範囲内でメッセージの送受信順序やタイミングが変化した場合でも、試験結果の合否を誤って出力することがなくなり、試験作業を効率化することができる。
実施の形態1に係る通信シミュレータ装置の構成例を示す図。 実施の形態1に係るメッセージフォーマットの例を示す図。 実施の形態1に係るメッセージ解析手段の動作例を示すフローチャート図。 実施の形態1に係る通信順序ルールの例を示す図。 実施の形態1に係る通信順序ルールの例を示す図。 実施の形態1に係る順序関係計算手段の動作例を示すフローチャート図。 実施の形態1に係る順序関係計算手段の動作例を示すフローチャート図。 実施の形態1に係る順序関係計算手段の動作例を示すフローチャート図。 実施の形態1に係る順序送信時間算出手段の動作例を示すフローチャート図。 実施の形態1に係る順序つきシミュレータ情報格納領域の情報の例を示す図。 実施の形態1に係るシミュレータ情報作成手段の動作例を示すフローチャート図。 実施の形態1に係る順序関係制御手段の動作例を示すフローチャート図。 実施の形態1に係る順序関係制御手段の動作例を示すフローチャート図。 実施の形態1に係るシミュレータ結果確認手段の動作例を示すフローチャート図。 実施の形態1に係るシミュレータ動作実施手段の動作例を示すフローチャート図。 実施の形態1に係るシミュレータ動作実施手段の動作例を示すフローチャート図。 実施の形態1に係る通信シミュレータ装置の動作の概要を示すフローチャート図。 実施の形態1に係る通信シミュレータ装置の動作の概要を示すフローチャート図。 実施の形態1に係る時間制約及び時間差を説明する図。 実施の形態1に係る順序つきシミュレータ情報の例を示す図。 実施の形態1に係る蓄積したメッセージの例を示す図。 実施の形態1に係るUMLに基づく記述と略記の対応関係を示す図。 実施の形態1に係る通信シミュレータ装置のハードウェア構成例を示す図。
実施の形態1.
図1は、本実施の形態に係る機能構成図である。
通信シミュレータ装置100は、情報処理装置の例である。
通信シミュレータ装置100は、試験対象装置に対する試験において試験対象装置と通信を行う。
また、通信シミュレータ装置100は、試験対象装置に対する試験に先立ち、通信装置200と通信装置400との間で送受信されるメッセージを受信し、受信したメッセージを格納しておく。
そして、通信シミュレータ装置100は、試験対象装置が用いる通信プロトコルにおいて発生し得る複数の状態と複数の状態における状態遷移の順序が示される通信順序ルール600と格納しているメッセージを用いて、同じ通信仕様の範囲内でメッセージの送受信順序やタイミングが違う複数のメッセージの送受信パターンが含まれる試験シナリオを生成する。
そして、通信シミュレータ装置100は、同じ通信仕様の範囲に含まれる複数の状態遷移パターンが含まれる試験シナリオに従って試験対象装置に対する試験を行う。
このため、同じ通信仕様の範囲内でメッセージの送受信順序やタイミングが変化した場合でも、試験結果の合否を誤って出力することがなくなり、試験作業を効率化することができる。
なお、通信装置200、通信装置400は、試験対象装置であってもよいし、試験対象装置に相当する役割の装置(例えば、試験対象装置が新システムで使用される通信装置であり、通信装置200、通信装置400が現行システムで使用されている通信装置)であってもよい。
はじめに、通信シミュレータ装置100の各要素を説明する前に、本実施の形態に係る通信シミュレータ装置100の動作の概要を図17及び図18を参照して説明する。
なお、図17は試験対象装置に対する試験に先立って行われる準備段階の動作フローであり、図18は試験対象装置に対する試験の実行フローである。
まず、通信送受信手段101により通信装置200とネットワーク網300の間で送受信されるメッセージをキャプチャし(通信ステップ)、図21に示すように、時刻管理手段103で計測した時刻(メッセージの受信時刻)を付加して、メッセージと時刻を対応付けてモニタ情報格納領域104に格納する(S1401)。
次に、メッセージ解析手段110がメッセージフォーマット500に基づいて、モニタ情報格納領域104に格納されているメッセージを解析し、メッセージ中のどの位置にどのようなフィールドが配置され、また、各フィールドにどのような値が設定されているかを解析する(S1402)。
次に、順序関係計算手段111が、通信順序ルール600を入力する(通信順序ルール入力ステップ)とともに、メッセージ解析手段110による解析済みのメッセージに対して、通信順序ルール600に従って、順序関係を計算し、順序情報、時間制約情報を付加して試験シナリオを生成する(試験シナリオ生成ステップ)(S1403)。
ここで選出される順序関係には、試験対象装置の通信仕様の範囲内でメッセージ受信イベント(以下、受信イベントともいう)、メッセージ送信イベント(以下、送信イベントともいう)の順序が前後する複数種のバリエーションが含まれる。
順序情報は、イベント間の順序を示す情報である。
時間制約情報については後述する。
また、イベントには、試験対象装置からのメッセージの属性に関する条件が示されるフィールド値制約情報も付加される。
次に、順序送信時間算出手段105が、順序関係計算手段111により試験対象装置へのメッセージの送信時間(以下、送信タイミングともいう)を計算し、メッセージに送信時間を付加する(S1404)。
図19に示すように、試験対象装置においてあるメッセージを送信又は受信してから、別のメッセージを送信又は受信するまでの時間差に対する制約が時間制約情報となる。
また、送信時間(時間差ともいう)は、イベントまたは所定のメッセージ送受信イベントを起点として、通信シミュレータ装置100が試験対象装置にメッセージを送信するタイミングである。
図19では、メッセージ2の受信時刻を起点にして、送信時間の到来の際に通信シミュレータ装置100からメッセージ3を送信する例が示されている。
S1405の処理が終了すると、順序つきシミュレータ情報(以下、試験シナリオともいう)が完成し、順序つきシミュレータ情報が順序つきシミュレータ情報格納領域113に格納される(S1405)。
図20に、単純化した順序つきシミュレータ情報のイメージを示す。
図20は、順序つきシミュレータ情報を、UML(Unified Modeling Language)アクティビティ図で示したものである。
なお、図20は、図22のように略記している。つまり、UMLの規約に従うと図22(a)のようになる記述になるが、図20では図22(c)のように略記している。また、UMLの規約に従うと図22(b)のようになる記述になるが、図20では図22(d)のように略記している。
また、図20及び以下の説明では、メッセージ種別:x、ユーザID:yのメッセージをx(y)として略記している。
各ノードは、試験シナリオ上の仮想的なイベントであり、シナリオイベントという。
また、試験シナリオ内のシナリオイベントの他に、現実に発生するイベントがある。
たとえば、ユーザから現実にシミュレーション開始指示を入力したというイベントや、試験対象装置から現実にメッセージを受信したというイベントや、試験対象装置に現実にメッセージを送信したというイベントである。これら、実際に発生するイベントを実イベントという。
図20に示す内容について、例を挙げて説明する。
最初に(1)が実行される。
(1)の次に、(2)が実行される。
(2)の次に、(3)(4)(5)が任意の順序で実行される。
具体的には、(2)の0秒後(直後)に(3)を、(2)の1秒後に(4)を、(2)の2秒後に(5)を実行する。
(3)の次に、(6)が実行される。ただし、メッセージb(1)を3秒以内に受信した場合に限る。
(6)の次に、(8)(9)が任意の順序で実行される。ただし(9)は、(6)から60秒以内に実行しなければならない。その中で、5秒後に実行する。
(8)は、(5)および(6)の両方の実行後に実行しなければならない。ただし、(5)の実行後3秒以内にb(3)を受信した場合に限る。
(12)は、(10)および(8)の両方の実行後に実行しなければならない。ただし、(10)の実行後10秒以内かつ(7)の実行後300秒以内にメッセージb(2)を受信しなければならない。
なお、図20では、メッセージの送受信を区別したものとなっているが、必ずしも試験シナリオ生成時に送受信を区別しておく必要はない。
ユーザによって試験対象を特定する情報(IPアドレスなど)を入力し、試験シナリオ実行直前に送受信を区別してもよく、また試験シナリオ実行中に送受信を区別してもよい。
試験シナリオ生成時に送受信を区別しない場合、メッセージ間すべてに時間差情報が付加されることとなる。
次に、図18において、入力装置114が、ユーザから試験対象装置へのシミュレーション(試験)の開始指示を入力する(S1501)。
次に、順序関係制御手段112が、シミュレーション開始指示の入力イベントをトリガーに、順序つきシミュレータ情報格納領域113から順序つきシミュレータ情報を順次読み出しながら、順序関係制御手段112及びシミュレータ動作実施手段108が、イベントの順序関係を制御し、試験対象装置とのメッセージの送受信を伴いながら、シミュレーションを実行する(S1502)(試験管理ステップ)。
また、シミュレータ結果確認手段109がシミュレーションの結果を確認する(S1503)。
そして、順序つきシミュレータ情報における最終イベントに到達し、シミュレーションが終了した場合は、動作を終了し(S1504でYES)、シミュレーションが終了していない場合は、処理がS1502に戻る(S1504でNO)。
順序つきシミュレータ情報には仕様の範囲内で複数の状態遷移のパスが含まれるが、これは、仕様の範囲内でイベントの発生パターンが変動しても試験不合格と判定しないようにするためである。
試験対象装置からの受信メッセージが正しいものであるかどうかを判定するためには、その受信メッセージが複数のパスのうちのどのパスのどのメッセージ受信イベントに対応するものなのかを判断する必要がある。
本実施の形態では、試験対象装置からメッセージを受信する度に、受信した受信メッセージの属性及び受信時刻と、メッセージ受信イベントに定義づけられているメッセージの属性に関する条件(フィールド値制約情報)及び受信時刻の条件(時間制約情報)を照合し、受信メッセージの属性及び受信時刻と適合する条件が定義づけられているメッセージ受信イベントを抽出するようにしている。
また、試験対象装置へのメッセージの送信も、現実に生じるイベント(試験対象装置からのメッセージの受信等)の状況に応じて、いずれかのパスのメッセージ送信イベントに従って行われる。
次に、通信シミュレータ装置100の各構成要素を説明する。
通信送受信手段101は、通信装置200とのインタフェースとなり、通信装置200とネットワーク網300間のメッセージを受信する。
また、通信送受信手段101は、試験対象装置とのインタフェースとなり、シミュレータ動作実施手段108から指定されたメッセージを試験対象装置へ送信し、また、試験対象装置からのメッセージを受信する。
また、通信送受信手段101は、受信したメッセージの下位プロトコルを解析の上、ビットパターンのメッセージを出力する。
通信モニタ手段102は、通信送受信手段101からビットパターンのメッセージを受け取り、時刻管理手段103から現在時刻を取得し、図21に示すように、ビットパターンのメッセージと現在時刻(メッセージ受信時刻)をモニタ情報格納領域104に書き込む。
時刻管理手段103は、現在時刻の管理をし、通信モニタ手段102へ現在時刻を知らせる。
メッセージ解析手段110は、ビットパターンのメッセージを、メッセージフォーマット500に基づいて、フィールド解析済みのメッセージに変換する。
つまり、メッセージ解析手段110は、モニタ情報格納領域104に格納されているビットパターンのメッセージのどの位置にどのようなフィールドがあり、各フィールドにはどのような値が設定されているのかをメッセージごとに解析する。
メッセージフォーマット500は、ビットパターンのメッセージを解析するためのフォーマットを記載したデータである。
メッセージ中の各フィールドについて、フィールド名、長さ、固定値などの情報を持つ。
順序関係計算手段111は、通信順序ルール600を入力し、入力した通信順序ルール600に基づきルールが成立したメッセージ間に順序情報や時間制約情報を付加する。
換言すると、順序関係計算手段111は、通信順序ルール600に基づき、試験シナリオを生成する。
通信順序ルール600は、メッセージ間のルール、ルールが成立した際に付加する順序情報や時間制約情報を記載したデータである。
通信順序ルール600は、例えば、図4に示す情報である。
通信順序ルール600は、試験対象装置が用いる通信プロトコルにおいて発生し得る複数の状態と複数の状態における状態遷移の順序が示され、状態遷移ごとに、メッセージの属性についての条件とメッセージの受信時刻についての条件が状態遷移条件として定義されているルールである。
図4において、sx(x=1、2、3、4、5・・・)は状態を表しており、また、tx(x=1、2、3、4、5・・・)は状態遷移を表している。
また、例えば、状態遷移t2について示されている[メッセージ種別b]や[t2.message.ユーザID=t1.message.ユーザID]は、メッセージの属性についての条件であり、また、[t2.送受信時刻−t1.送受信時刻≦3秒]はメッセージの受信時刻についての条件である。
なお、図4の詳細は後述する。
順序関係計算手段111は、通信順序ルール600を入力し、通信順序ルール600に示される状態遷移の順序に従って、状態遷移ごとに、通信送受信手段101により受信されたメッセージ(通信装置200、通信装置400間で送受信され、モニタ情報格納領域104に時刻情報とともに格納されているメッセージ)の中から状態遷移条件に合致する属性及び受信時刻のメッセージを検索する。
そして、状態遷移条件に合致するメッセージが取得できた場合に、当該状態遷移を選択状態遷移として選択する。
更に、順序関係計算手段111は、選択状態遷移に対して取得されたメッセージを選択状態遷移よりも前の順序の状態遷移であって既に選択状態遷移として選択されている状態遷移に対して取得されているメッセージに連結し、複数のメッセージが選択状態遷移の順序に沿って順序付けられる試験シナリオを生成する。この結果、通信プロトコルの範囲内で複数の状態遷移パターン(メッセージの送受信パターン)が含まれる試験シナリオが生成される。
図4の例では、順序関係計算手段111は、s0からの状態遷移であるt1及びt5から処理を開始する。そして、例えば、t2の状態遷移条件に合致するメッセージが取得できた場合に、t2を選択状態遷移として選択し、更にt2の1つ前の順序の状態遷移であるt1に対して取得されているメッセージにt2に対して取得されたメッセージを連結する。なお、t2に対する処理は、t1が選択状態遷移として選択された場合にのみ行われるので、t2が選択状態遷移として選択された際には、t1は既に選択状態遷移として選択されており、またt1の状態遷移条件に合致するメッセージは取得済みである。
このように、状態遷移条件に合致するメッセージが取得された状態遷移は選択状態遷移として選択され、試験シナリオに反映されることになる。
例えば、t1、t2、t3、t4と続く状態遷移のパスのみ状態遷移条件に合致するメッセージが取得され、t5の状態遷移条件に合致するメッセージが取得されない場合は、t5、t6、t6、t7、t8という状態遷移のパスは試験シナリオに含まれないことになる。t5の状態遷移条件に合致するメッセージが取得できた場合には、t1、t2、t3、t4という状態遷移パスと、t5という状態遷移パスの2つの状態遷移パスが試験シナリオに含まれることになる。
また、s0からs1とs5に分岐するように、1つの状態から2つ以上の状態に分岐する状態遷移(t1、t5)により状態遷移パスが複数含まれる場合がある(t1−t2のパスと、t5−t6−t7−t8のパス)。このような場合に、順序関係計算手段111は、選択状態遷移に対して取得されたメッセージを、選択状態遷移と同じ状態遷移パスに含まれ、選択状態遷移の1つ前の順序の状態遷移であって既に選択状態遷移として選択されている状態遷移に対して取得されているメッセージに連結する。
図4の例では、t2を選択状態遷移とした場合に、t2のメッセージは同じ状態遷移パスの1つ前の選択状態遷移であるt1のメッセージに連結する。
一方、t6は同じ状態遷移パスの1つ前の選択状態遷移であるt5のメッセージにメッセージを連結し、t7は同じ状態遷移パスの1つ前の選択状態遷移であるt6のメッセージにメッセージを連結し、t8は同じ状態遷移パスの1つ前の選択状態遷移であるt7のメッセージにメッセージを連結する。
また、s1とs7がs2に統合されるように、2つ以上の状態が1つの状態に統合される状態遷移(t2、t8)が含まれる場合がある。
順序関係計算手段111は、選択状態遷移の始点となる状態が2つ以上の状態を遷移元とし当該2つ以上の状態を統合する統合状態である場合に、選択状態遷移に対して取得されたメッセージを、当該統合状態に至る2つ以上の状態遷移であって各々が既に選択状態遷移として選択されている状態遷移に対して取得されている2つ以上のメッセージの各々に連結する。
図4の例では、t3を選択状態遷移とした場合に、選択状態遷移t3の始点となる状態s2は2つ以上の状態(s1、s7)を遷移元とし当該2つ以上の状態を統合する統合状態であるので、選択状態遷移t3に対して取得されたメッセージを、当該統合状態s2に至る2つ以上の状態遷移であって各々が既に選択状態遷移として選択されている状態遷移(t2、t8)に対して取得されている2つ以上のメッセージの各々に連結する。
なお、順序関係計算手段111は、通信順序ルール入力部及び試験シナリオ生成部に相当する。
順序送信時間算出手段105は、順序情報を付加されたメッセージ間の受信時刻の差、またはモニタ開始時刻からのメッセージ受信時刻の差を算出する。
順序送信時間算出手段105は、試験シナリオ生成部の機能の一部を担う。
順序つきシミュレータ情報格納領域113は、順序つきシミュレータ情報(試験シナリオ)を記憶する。
順序つきシミュレータ情報は、フィールド値解析済みメッセージ、順序情報、時間制約情報、送信時間から構成される。
図20に例示したように、順序つきシミュレータ情報は、複数のパスを含み、各パスに試験対象装置からのメッセージ受信イベントと試験対象装置へのメッセージ送信イベントが順序づけられている。順序づけは、順序情報に示される。
そして、イベントごとに試験対象装置から受信すべきメッセージ(フィールド値解析済みメッセージ)又は試験対象装置に送信すべきメッセージ(フィールド値解析済みメッセージ)が定義づけられる。
また、各イベントには試験対象装置からメッセージを受信すべき時間制約(受信時刻の条件)又は試験対象装置へメッセージを送信すべき時間制約(送信時刻の条件)が定義づけられる。時間制約は時間制約情報に示される。
また、各イベントには試験対象装置にメッセージを送信すべき送信時間(送信タイミング)が定義づけられている。
順序関係制御手段112は、試験実行時に、順序情報を参照しながら送受信するメッセージを順次取り出すとともに、取り出したメッセージに付加されている時間制約情報を出力する。
また、内部的に取り出したメッセージがどこかを記憶している。
順序関係制御手段112は、シミュレータ動作実施手段108とともに試験管理部を構成する。
通信シミュレータ手段106は、シミュレータ情報作成手段107、シミュレータ動作実施手段108、シミュレータ結果確認手段109から構成される。
シミュレータ情報作成手段107は、モニタ情報格納領域104からビットパターンのメッセージを取得し、メッセージ解析手段110にフィールド値を解析させる。
また、フィールド値を解析したメッセージを順序関係計算手段111により順序情報および時間制約情報を付加させ、順序送信時間算出手段105によりメッセージおよび順序情報から送信時間を算出させる。
また、順序つきシミュレータ情報を順序つきシミュレータ情報格納領域113に格納させる。
シミュレータ動作実施手段108は、通信送受信手段101から受信した試験対象装置からのメッセージをメッセージ解析手段110によりフィールド値解析済みのメッセージに変換させ、順序関係制御手段112から次のメッセージおよび時間制約情報を取得する。
また、シミュレータ結果確認手段109に通信送受信手段101経由のメッセージが妥当かどうかを計算させ、結果を出力装置115に出力する。
シミュレータ動作実施手段108は、順序関係制御手段112とともに試験管理部を構成する。
シミュレータ結果確認手段109は、通信送受信手段101経由で受信したメッセージと、順序関係制御手段112により取得したメッセージのフィールド値を比較すると共に、時間制約情報の条件を満たすか検査し、合否を判定する。
シミュレータ結果確認手段109は、試験結果確認部の例である。
次に、メッセージフォーマット500の例を図2に示す。
図2において、メッセージ種別とは、メッセージの型を表しており、メッセージ種別ごとに、持ちうるフィールドや、フィールド値を示すのに必要なビット数が異なる。
例えば、ログインを要求するメッセージ種別と、ログイン要求に対して応答するメッセージ種別がある場合、ログインを要求するメッセージ種別には「ユーザID」「パスワード」などのフィールド値が含まれる。
一方、ログイン要求に対して応答するメッセージ種別の場合、「ログイン結果」「ログイン時刻」などのフィールド値が含まれる。
メッセージ中の特定の位置の値により、所定のメッセージがいずれのメッセージ種別に該当するかを識別できるようにしておく。
なお、1つのメッセージが複数のメッセージ種別に該当することはないものとする。
図2の例では、メッセージの先頭4ビットの値が0の場合にメッセージ種別aに該当することを示している。
また、メッセージの先頭4ビットの値が1の場合は、メッセージ種別bに該当することを示している。
次に、メッセージ解析手段110の動作例を図3に示す。
前述のように、メッセージ解析手段110は、ビットパターンのメッセージを元に、メッセージフォーマット500に従ってフィールド値を解析する。
図3では、メッセージフォーマット500を読み出した後の処理を説明する。
S301では、メッセージ解析手段110は、メッセージフォーマット500の中に含まれる表を順に取り出す。
S302において、次の表がなければS303へ移行し、次の表があればS304へ移行する。
S303では、該当するメッセージがないため、エラーを出力するなどして終了する。
S304では、メッセージ解析手段110はメッセージ上を指し示すポインタをメッセージの1ビット目に移動する。
S305では、メッセージ解析手段110は表の次の行を取得する。
S306において、次の行がなければS307へ移行し、次の行があればS308へ移行する。
S307では、ポインタがメッセージ上を指している場合はS301へ移行し、ポインタがメッセージ終了位置を指している場合はS308へ移行する。
S308では、メッセージ解析手段110は、これまでに解析したフィールド値解析済みメッセージを返して終了する。
S309では、メッセージ解析手段110は行のビット数の列の値の分だけビットパターンを取得する。
S310において、固定値の列の値が空欄でなければS311へ移行し、空欄ならばS314へ移行する。
S312では、メッセージ解析手段110はビットパターンと固定値Bを比較する。
S313において、一致すればS314へ移行し、一致しなければS301へ移行する。
S314では、メッセージ解析手段110は、フィールド値解析済みメッセージに、フィールド名とフィールド値を設定する。
S315では、メッセージ解析手段110は、メッセージ上のポインタを次のフィールドの先頭へ移動させる。
S316において、メッセージが有効な位置(メッセージ上またはメッセージ終了位置)になければS301へ移行し、有効な位置にあればS305へ移行する。
なお、メッセージフォーマットに型を記載してもよく、型を記載した場合には、メッセージフォーマットの「固定値」には型に従った値を記述し、後述する通信順序ルールの遷移条件の形式1の定数には型に従った値を記述できる。その際、S312「ビットパターンと固定値Bを比較」の前に、ビットパターンを型に従った値Aに変換する処理を実行し、固定値Bと比較する。
次に、通信順序ルール600の例を図4に示す。
通信順序ルールは、通信順序を示したプロトコル状態遷移を表す情報である。
状態は「メッセージ種別aの送受信後に、メッセージ種別bが送受信された後」というような状況を示している。
遷移にはt1のようなIDが付加されており、それぞれイベントとガード条件(状態遷移条件)を持つ。
イベントは、メッセージ送受信イベントが該当し、メッセージ種別のみを図中に表記している。
状態遷移条件には、ある状態から別の状態へ遷移するための条件を記述している。
状態遷移条件の形式は次の3種類があり、これらを組み合わた論理式で表される。
形式1:<遷移ID>.message.<フィールド名>=<定数>
<遷移ID>には、この条件を持つ遷移のIDが記述される。
<フィールド名>には、メッセージ中のフィールド名が記述される。
<定数>にはフィールドの値の定数を記述する。
<フィールド名>で記述されているフィールドに<定数>で記述されている定数が含まれているメッセージを取得できれば、次の状態に遷移することになる。
この形式で記述された条件は、所定の順序でメッセージが送受信される際に、必ずこのフィールド値を持つことを表す。
例えば、状態遷移t1の[t1.message.ユーザ種別=1]について説明する。
これは、ユーザ種別フィールドに値1が示されているメッセージが抽出できれば次の状態s1への状態遷移が行われることを示している(但し、s1への状態遷移を実現するには、メッセージ種別aの条件も満たす必要がある)。
形式2:<遷移ID>.message.<フィールド名>=<遷移ID>.message.<フィールド名>
<遷移ID>と<フィールド名>は上記と同じである。
この形式で記述された条件は、所定の順序でメッセージが送受信される際に、遷移パス上においてこの遷移よりも前の遷移で送受信されたメッセージのフィールド値と一致することを示す。
例えば、状態遷移t7の[t7.message.ユーザID=t5.message.ユーザID]について説明する。
これは、t5の状態遷移条件に合致するメッセージ(第1の先行メッセージ)を検索し、検索したメッセージの特定のフィールド(ユーザIDのフィールド)と同じフィールドに、当該メッセージと同じフィールド値(ユーザID)が含まれているメッセージが抽出できればs7への状態遷移が行われることを示している(但し、s7への状態遷移を実現するには、メッセージ種別eの条件及び送受信時刻についての条件も満たす必要がある)。
形式3:<遷移ID>.message.送受信時刻−<遷移ID>.message.送受信時刻<比較演算子><時間差>
<比較演算子>は、不等号や等号を記述する。
<時間差>は「3分」「1秒」のような時間を記述する。
この形式で記述された条件は、所定の順序でメッセージが送受信される場合に、遷移パス上においてこの遷移よりも前の遷移でメッセージが送受信された時刻との間に、時間制約があることを示す。
例えば、状態遷移t7の[t7.送受信時刻−t6.送受信時刻≧60秒]について説明する。
これは、t6の状態遷移条件に合致するメッセージ(第2の先行メッセージ)を検索し、検索したメッセージの受信時刻との差が制限時間である60秒以内に収まるメッセージが抽出できればs7への状態遷移が行われることを示している(但し、s7への状態遷移を実現するには、メッセージ種別eの条件及びユーザIDについての条件も満たす必要がある)。
また、通信順序ルール600には、図5に示すメッセージ種別セットも含まれる。
メッセージ種別セット1つにつき、メッセージ種別が複数含まれる。メッセージ種別セットは複数存在しうる。
メッセージ種別セットは、通信データを記録した際の順序に従って、メッセージ間に順序づけをするための通信順序ルールである。
例えば、メッセージ種別セットにメッセージ種別bとgが含まれており、記録したメッセージ(通信装置200、通信装置400からキャプチャしたメッセージ)にa1、b1、b2、c1、g1、b3、g2が含まれている場合、このメッセージ種別セットによって、b1→b2→g1→b3→g2の間に順序づけがなされる。
次に、順序関係計算手段111の動作例を図6及び図7に示す。
順序関係計算手段111は、S502以降の検査を、各トークンに対して順に実行する(S501)。
トークンとは、通信順序ルール600上の状態遷移の遷移パス1つに対して作成され、遷移パスを構成する各遷移について、記録したメッセージとの対応付けを持ち、「トークンが指す状態」とは、最後に対応付けをされた遷移における、遷移後の状態を表す。
なお、初期状態を指すトークンは常に存在するものとする。
S502では、通信順序ルール600において、次に検査するトークンがある場合はS504へ処理を進め、フィールド解析済みメッセージm1が、いずれのトークンの遷移パスにも適さない場合には、S503に処理を進める。
S503では、いずれのトークンの遷移パスにも適さなかったため、順序関係計算手段111は、エラーを出力して終了する。
一方、S504では、順序関係計算手段111は、各トークンが指している状態から出る遷移(複数個)を取得する。
次に、S505では、順序関係計算手段111は、取得した遷移について、S506以降の検査を順に実行する。
S506において、次に検査する遷移がある場合は、S507へ処理を進め、次に検査する遷移がない場合はS501へ処理を進める。
S507では、順序関係計算手段111は、フィールド解析済みメッセージm1の種別と、取得した遷移の状態遷移条件に示されるメッセージの種別が一致するかを検査する。
S508において、メッセージ種別が一致した場合は、S509へ処理を進め、一致しなかった場合はS505へ処理を進める。
S509では、順序関係計算手段111は、フィールド解析済みメッセージm1が、遷移に付属する条件を満たすか検査する。
条件が定数との比較の場合(上記の形式1の条件の場合)は、直接その定数と比較する。
例えば、図4の状態遷移t1の[t1.message.ユーザ種別=1]では、比較対象のt1のフィールド解析済みメッセージのユーザ種別フィールドに値1があるかどうかを判断する。
条件が他の遷移のメッセージm3のフィールド値との比較の場合(上記の形式2の条件の場合)は、トークンが保持する、フィールド解析済みメッセージm3と遷移との対応付けを参照し、他の遷移のメッセージm3のフィールド値との比較を行う。
例えば、図4の状態遷移t7の[t7.message.ユーザID=t5.message.ユーザID]では、t7のフィールド解析済みメッセージのユーザIDフィールドの値と比較対象となっているt5のフィールド解析済みメッセージのユーザIDフィールドの値が一致するか否かを判断する。
条件が他の遷移のメッセージ送受信時刻との比較の場合(上記の形式3の条件の場合)は、トークンが保持する、フィールド解析済みメッセージと遷移との対応付けを参照し、他の遷移のメッセージ送受信時刻との比較を行う。
例えば、図4の状態遷移t7の[t7.送受信時刻−t6.送受信時刻≧60秒]では、t6の状態遷移条件に合致するフィールド解析済みメッセージの受信時刻と比較対象のフィールド解析済みメッセージの受信時刻との差が制限時間である60秒以内に収まるか否かを判断する。
S510において、ある遷移tにおいてフィールド解析済みメッセージm1で状態遷移条件を満たした場合はS511へ処理を進め、フィールド解析済みメッセージm1で状態遷移条件を満たす遷移が得られない場合はS504へ処理を進める。
S511では、順序関係計算手段111は、トークンがたどっている遷移パスのうち、現在指している状態に入る遷移に対応するフィールド解析済みメッセージm2を取得する。例えば、図4の例では、トークンがs1を指しているときには、1つ前の状態遷移t1に対して取得されたメッセージがフィールド解析済みメッセージm2に該当する。
S512では、順序関係計算手段111は、取得したフィールド解析済みメッセージm2と、フィールド解析済みメッセージm1の間に順序情報を追加する。この際、フィールド解析済みメッセージm2が順序上先に現れるものとして追加する。つまり、状態遷移t2について取得したメッセージを状態遷移t1について取得されているメッセージに連結する。
S513では、順序関係計算手段111は、遷移tに付属している条件を、時間制約情報およびフィールド値制約情報として追加する。
条件がフィールド値と定数との比較の場合は、そのままフィールド値制約情報として追加する。
条件がフィールド値どうしの比較の場合は、トークンが保持する遷移とメッセージの対応付けを元に、フィールド値と定数との比較条件に変換し、フィールド値制約情報として追加する。
条件がメッセージの送受信時刻どうしの比較の場合は、時間制約情報としてそのまま追加する。
S514では、順序関係計算手段111は、トークンが保持する遷移パスに遷移tを追加し、遷移tとフィールド解析済みメッセージm1を対応付ける。
また、順序関係計算手段111は、メッセージ種別セットについて図8に示す動作も行う。
S521では、順序関係計算手段111は、記録したメッセージから、メッセージ種別セットに含まれるメッセージ種別を保持するメッセージを送受信時刻の順に取得する。
また、S522では、順序関係計算手段111は、送受信時刻の順序において、隣り合うメッセージ間に順序情報を追加する。
そして、順序関係計算手段111は、この処理を、メッセージ種別セットすべてについて順に実行する。
次に、順序送信時間算出手段105の動作例を図9に示す。
S601において、順序送信時間算出手段105は、順序情報を付加されたメッセージの組を検索する。
S602では、順序送信時間算出手段105は、検索したメッセージの組を順次取得する。
S603において、次のメッセージの組を取得できればS604へ移行し、できなければS606へ移行する。
S604では、順序送信時間算出手段105は、順序情報または時間制約情報で接続されたメッセージのうち、後のメッセージの受信時刻から、先のメッセージの受信時刻の時間差Aを計算する。
S605では、順序送信時間算出手段105は、2つのメッセージ間の時間制約を、時刻差Aが満たすか否かを検査する。満たさない場合は、順序送信時間算出手段105は、エラーを出力して処理を終了する。満たす場合は、時刻差Aを時間間隔情報として付加し、処理をS602に戻す。
S606では、順序送信時間算出手段105は、順序情報のないメッセージを検索する。
S607では、順序送信時間算出手段105は、検索したメッセージを順次取得する。
S608では、順序送信時間算出手段105は、次のメッセージを取得できればS610へ移行し、できなければS609へ移行する。
S609では、時間差情報を付加し終えたので順序送信時間算出手段105は動作を終了する。
S610では、順序送信時間算出手段105は、メッセージの受信時刻と受信開始時刻との時間差Bを計算する。
S611では、順序送信時間算出手段105は、受信開始時からメッセージの間の時間差情報として時間差Bを設定する。
次に、順序つきシミュレータ情報格納領域113の記録方式を図10のUMLクラス図で示す。
記録方式はこの方式に限らず、それぞれの情報が図に示すような関連および参照を持っていればよい。
また、フィールド解析済みメッセージおよびフィールドのデータについては、フィールド解析前のメッセージに置き換えてもよい。
イベントとは、受信開始イベントまたはメッセージ送受信イベントをまとめて扱うためのデータである。
イベントデータとして具体的なデータが存在するわけではない。
受信開始は、受信開始イベントを表すデータである。
送受信イベントは、メッセージを送受信したことを表すデータである。送受信したノード(アドレスなど)への参照と、送受信したメッセージへの参照を持つ。
フィールド解析済みメッセージは、フィールド解析済みメッセージを表すデータである。
フィールド解析済みメッセージには、メッセージ種別が含まれる。
また、フィールド解析済みメッセージは、解析したフィールドへの参照(複数個の場合あり)を持つ。
フィールドは、解析されたフィールドを表すデータである。
フィールド名とフィールド値を属性として持つ。
フィールド値制約情報は、送受信イベントが試験対象からの出力イベントである場合に、試験対象からの出力パケットどうしを比較するためのデータである。
フィールド名とフィールド値を属性として持つ。
イベント間関連は、順序情報、時間制約情報、時間差情報をまとめて扱うためのデータである。
イベント間関連データとして具体的なデータが存在するわけではない。
順序情報における前のイベントと後のイベントへの参照、時間制約情報と時間差情報における基点を表す前のイベントと終点を表す後のイベントへの参照を持つ。
順序情報は、イベントの発生時刻に関する情報である。
時間制約情報は、イベント発生時刻に関して、仕様上守るべきイベント発生時刻どうしの制約を表す情報。「3分以内」のように、時間差(例では「3分」)と制約タイプ(例では「以内」)の属性を持つ。
時間差情報は、あるイベントから所定の時間差を置いてイベントを送信するための情報である。属性として時間差を持つ。
次に、シミュレータ情報作成手段107の動作例を図11に示す。
S801では、シミュレータ情報作成手段107は、モニタ情報格納領域104から、フィールド未解析のメッセージを取得する。
S802では、シミュレータ情報作成手段107は、フィールド未解析のメッセージを、メッセージ解析手段110により、フィールド解析済みメッセージに変換する。
S803では、フィールド解析済みメッセージを元に、順序関係計算手段111により、順序情報および時間制約情報およびフィールド値制約情報を付加する。
S804では、シミュレータ情報作成手段107は、フィールド解析済みメッセージ、順序情報、および時間制約情報を元に、順序送信時間算出手段105により、時間差情報を付加する。
S805では、シミュレータ情報作成手段107は、順序つきシミュレータ情報格納領域113に、メッセージ、順序情報、時間制約情報、フィールド値制約情報、および時間差情報を記録する。
次に、順序関係制御手段112の動作例を図12及び図13に示す。
なお、あらかじめポインタは試験シナリオ上のシミュレーション開始指示の入力イベント(図20のノード(1)に相当)を指しており、図15のS1202の結果、試験開始イベント(図20のノード(2)に相当)を指しているものとする。
S901において、順序関係制御手段112は、操作の種別を判別する。
S902において、タイマーから起動された場合はS903へ移行する。
実受信イベントAに対応するシナリオイベントBを取得する場合はS904へ移行する。なお、実送受信イベントA(以下、実イベントAという)は、より具体的には、実際に発生した受信イベント(試験対象装置からのメッセージ受信)である。また、シナリオイベントBは、試験シナリオ上のイベントである。
また、イベントの発生を記録する場合はS907へ移行する。
S903では、順序関係制御手段112は、シミュレータ動作実施手段108にメッセージ送信タイミングの到来と、送信するメッセージを通知する。
なお、S903に続いて、後述する図15のS1217以降の処理が行われる。
S904では、順序関係制御手段112は、実イベントAの発生時刻Cを取得する。
また、S905では、順序関係制御手段112は、シナリオイベントを指している試験シナリオ上のすべてのポインタについて、ポインタが指すシナリオイベントDの次のシナリオイベントのうち、受信イベントであり、メッセージ種別が実イベントAで受信されたメッセージのメッセージ種別と一致し、実イベントAで受信されたメッセージが時間制約情報、フィールド値制約情報、順序情報のすべてを満たすシナリオイベントを取得する。
ここで、「あるシナリオイベントの次のシナリオイベント」について説明する。
図22において、ポインタがアクション1を指しており、条件1を満たしている場合には、アクション2が次のシナリオイベントに該当する。
また、アクション5〜7を指すポインタが3つあり、条件4のみ満たしている場合には次のシナリオイベントは存在せず、条件4〜6のすべてを満たす場合に限り、アクション8を返す。
また、時間制約情報を満たすかどうかの確認方法について説明する。
時間制約情報において、前のイベントで指定されたシナリオイベントに付加して記録された試験時刻と、実イベントAの発生時刻Cの時間差を計算し、その時間差が時間制約を満たすかどうかを確認する。
なお、メッセージが送信イベントか受信イベントかは、IPアドレス等の下位プロトコルの情報やメッセージのフィールド値を元にして、あらかじめ区別できるようにユーザより指定されているものとする。
また、S906において、順序関係制御手段112は、取得したシナリオイベント(シナリオイベントBに相当)と、シナリオイベントDを指すポインタEをシミュレータ動作実施手段108に返す。
なお、S906の処理により、後述の図16のS1209が実施される。
このように、順序関係制御手段112は、試験の進展に合わせて試験シナリオ上のメッセージにポインタを設定するとともに、実イベントAとして、試験対象装置からのメッセージ受信イベントが発生した場合に、ポインタが設定されている各メッセージの次の順序のメッセージを抽出する。
そして、順序関係制御手段112は、次の順序のメッセージが試験対象装置から受信すべき受信対象メッセージであるか否か(受信イベントであるか否か)を判断する。
次の順序のメッセージが受信対象メッセージである場合に、通信送受信手段101が試験対象装置から受信した受信メッセージのメッセージ種別及び特定のフィールドのフィールド値と抽出した受信対象メッセージのメッセージ種別及び特定のフィールドのフィールド値を照合する。
更に、順序関係制御手段112は、受信メッセージの受信時刻と所定の基準時刻との時刻差と抽出された受信対象メッセージの時間制約情報(制限時間)とを照合し、抽出した受信対象メッセージの中から、メッセージ種別及び特定のフィールドのフィールド値が受信メッセージのメッセージ種別及び特定のフィールドのフィールド値と一致し、時刻差以上の時間制約情報(制限時間)が対応付けられている受信対象メッセージを選択する。
なお、後述するように、順序関係制御手段112により選択された受信対象メッセージ(選択受信対象メッセージ)はシミュレータ結果確認手段109により試験対象装置から受信した受信メッセージと比較される。
S907では、順序関係制御手段112は、シナリオイベントBに試験時刻として実イベントAの発生時刻Cを対応付ける。つまり、試験シナリオのシナリオイベントBに対して実イベントAの発生時刻Cを記録する。
なお、S907〜S912は、後述の図15のS1202、S1219、図16のS1216に後続する処理である。
次に、S908において、順序関係制御手段112は、ポインタEを移動させる。
ポインタを移動させる場合について、図22を用いて説明する。
ポインタがアクション1を指しており、条件1のみ満たしている場合には、アクション2、アクション3の手前の分岐、アクション4の前の分岐を指すポインタの3つに増やす。
ポインタがアクション5を指しており、条件4のみ満たしている場合には、joinノードにポインタを移動させる。
条件4〜6のすべてを満たした場合には、3つのポインタを削除し、アクション8を指すポインタ1つだけが残る。この動作については、UMLアクティビティ図の走査順序に準ずる。その後、ポインタEを削除する。
S909では、順序関係制御手段112は、移動後のポインタが指しているシナリオイベントそれぞれについて、次のシナリオイベントの中から、送信イベントFを取得する。
S910において、シナリオイベントFとの間に時間差情報Gがある場合はS911へ移行し、ない場合はS912へ移行する。
S911では、順序関係制御手段112はタイマーを起動する。
タイマーの監視時間は時間差情報Gが保持するものであり、タイマーはシナリオイベントFへの参照を持つ。なお、ここで起動したタイマーにセットした時間(監視時間)が経過した際には、図12のS903が実行される。
S912では、順序関係制御手段112は、シミュレータ動作実施手段108にシナリオ送信イベントFの実行を要求する。
次に、シミュレータ結果確認手段109の処理の流れを図14に示す。
図14のフローは、後述する図16のS1213の処理に続いて実施される。
まず、S1101において、シミュレータ結果確認手段109は、受信したフィールド解析済みメッセージA(実メッセージA)と、順序つきシミュレータ情報格納領域113のフィールド解析済みメッセージB(シナリオメッセージB)を受け取る。
実メッセージとは、試験対象装置から受信したメッセージであり、シナリオメッセージとは、シナリオイベントに定義づけられているメッセージであり、試験対象装置から受信すべきメッセージとして図12のS906において順序関係制御手段112により選択されたメッセージ(選択受信対象メッセージ)である。
また、シミュレータ結果確認手段109は、後述する図16のS1213においてシミュレータ動作実施手段108から実メッセージAとシナリオメッセージBを受け取る(図16のS1213ではメッセージBとメッセージDと表記)。
なお、シミュレータ結果確認手段109が受け取る段階では、試験対象装置から受信したメッセージは、メッセージ解析手段110によるフィールド解析が完了した後のメッセージである。同様に、順序つきシミュレータ情報格納領域113から受け取るメッセージもメッセージ解析手段110によるフィールド解析済みのメッセージである。
S1102では、シミュレータ結果確認手段109は、シナリオメッセージBのフィールドCを順に取得する。
S1103において、フィールドCを取得できなかった場合はS1104へ移行し、できた場合はS1107へ移行する。
S1104では、実メッセージAのフィールドのうち、未確認のものがあればS1105へ移行し、なければS1106へ移行する。
S1105では、シミュレータ結果確認手段109は、実メッセージAに未確認のフィールドがあるため、エラーを出力して終了する。
S1106では、実メッセージAに未確認のフィールドがなければ、すべてのフィールド値が一致したことになるため、シミュレータ結果確認手段109は、実メッセージAとシナリオメッセージBが一致したことを出力する。
フィールドCを取得できた場合、S1107において、シミュレータ結果確認手段109は、次のフィールドDを実メッセージAから取得する。
S1108において、フィールドDを取得できなかった場合はS1109へ移行し、できた場合はS1110へ移行する。
フィールドDを取得できなかった場合、シミュレータ結果確認手段109は、S1109において、実メッセージAとシナリオメッセージBでフィールドの個数が異なるため、エラーを出力して終了する。
S1110では、シミュレータ結果確認手段109は、フィールドCとフィールドDのフィールド値を比較し、一致しているかを検査する。
S1111において、一致しなかった場合はS1112へ移行し、一致した場合はS1113へ移行する。
S1112では、フィールド値が不一致となったため、シミュレータ結果確認手段109は、エラーを出力して終了する。
S1113では、シミュレータ結果確認手段109は、フィールドDを確認済みに設定する。
S1105、S1106、S1109、S1112、S1113の処理に続いて、後述する図16のS1214が行われる。
次に、シミュレータ動作実施手段108の処理の流れを図15及び図16に示す。
シミュレータ動作実施手段108の動作は、入力装置114から起動された場合、通信送受信手段101から起動された場合、順序関係制御手段112から起動された場合に分けられる。
入力装置114から起動された場合とは、ユーザが入力装置114にシミュレーションの開始指示を入力した場合である。
通信送受信手段101から起動された場合は、通信送受信手段101が試験対象装置からメッセージを受信した場合である。
順序関係制御手段112から起動された場合は、順序関係制御手段112から試験対象装置へ送信対象メッセージを送信するよう通知された場合(図12のS903)である。
S1201において、入力装置114から起動された場合はS1202へ移行し、通信送受信手段101から起動された場合はS1208(図16)へ移行し、順序関係制御手段112から起動された場合はS1217へ移行する。
S1202では、シミュレータ動作実施手段108は、順序関係制御手段112に試験開始イベント(受信開始イベント)の記録を要求し、終了する。
S1202に続いて、図13のS907が実施される。
S1208では、シミュレータ動作実施手段108は、通信送受信手段101からメッセージBを受け取る。メッセージBは試験対象装置から受信したメッセージである。
S1209では、シミュレータ動作実施手段108は、メッセージ解析手段110にてメッセージBの解析を行わせた後、順序関係制御手段112に次のイベントの取得を要求し、次のイベント(0個又は1個)を取得する。ここでいう次のイベントとは、メッセージBの受信イベントに対応するシナリオイベント(メッセージ受信イベント)である。
S1209に基づき、順序関係制御手段112では、S904、S905の処理が行われ、該当するシナリオイベントがあれば、S906においてシナリオイベントとポインタEがシミュレータ動作実施手段108に返される。
シミュレータ動作実施手段108では、S1211において、受信イベントDがない場合(S906でシナリオイベントが返されなかった場合)は1212へ移行し、ある場合(S906でシナリオイベントが返された場合)はS1213へ移行する。
S1212では、シミュレータ動作実施手段108は、エラーを出力して終了する。
S1213では、シミュレータ動作実施手段108は、選択された受信イベントDのメッセージDと試験対象装置からのメッセージBをシミュレータ結果確認手段109により比較する。
S1214において、図14に示すシミュレータ結果確認手段109による検査の結果、メッセージBとDが一致した場合はS1216へ移行し、一致しなかった場合はS1215へ移行する。
メッセージが一致しなかった場合は、S1215において、シミュレータ動作実施手段108はエラーを出力して終了する。
メッセージが一致した場合は、S1216において、実メッセージ受信イベントBと、シナリオ受信イベントD、S1209で取得したポインタ(S906で順序関係制御手段112から返されたポインタ)を順序関係制御手段112に渡してイベントBの記録を要求して、終了する。
順序関係制御手段112から起動された場合、S1217において、送信対象のメッセージEを受け取る。S1217は、図12のS903に続く処理である。
S1218では、シミュレータ動作実施手段108は、通信送受信手段101を介してメッセージEを試験対象装置へ送信する。
S1219では、シミュレータ動作実施手段108は、順序関係制御手段112にメッセージEの送信イベントの記録を要求し、終了する。
このように、本実施の形態では、仕様の範囲内でメッセージの送受信順序が変化した場合でも、試験結果の合否を誤って出力することがなくなるとともに、通信仕様上の時間制約についても検査することができるため、仕様への適合性と試験結果の合否が不一致だった場合の詳細な調査を行う手間がなくなるため、試験作業を効率化することができる。
以上、本実施の形態では、
ネットワーク網と通信装置の間の通信データをモニタする通信モニタ手段、
現在時刻の管理をする時刻管理手段、
通信モニタ手段がモニタした情報が書き込まれるモニタ情報格納領域、
通信装置とのインタフェース機能を持ち、下位プロトコルを解析の上、ビットパターンのメッセージを出力する通信送受信手段、
ビットパターンのメッセージを、メッセージフォーマットに基づいて、フィールド解析済みのメッセージに変換するメッセージ解析手段、
通信順序ルールに基づき、ルールが成立したメッセージ間に順序情報や時間制約情報を付加する順序関係計算手段、
順序情報を付加されたメッセージ間の受信時刻の差、またはモニタ開始時刻からのメッセージ受信時刻の差を算出する順序送信時間算出手段、
モニタ情報格納領域からビットパターンのメッセージを取得し、メッセージ解析手段によりフィールド値を解析し、フィールド値を解析したメッセージを順序関係計算手段により順序情報および時間制約情報を付加し、順序送信時間算出手段によりメッセージおよび順序情報および時間制約情報から送信時間を算出し、順序つきシミュレータ情報格納領域に記録するシミュレータ情報作成手段、
フィールド値解析済みメッセージ、順序情報、時間制約情報、送信時間を格納する順序つきシミュレータ情報格納領域、
試験実行時に、順序情報を参照しながら送受信するメッセージを順次取り出すとともに、取りだしたメッセージに付加されている時間制約情報を出力する順序関係制御手段、
通信送受信手段経由で受信したメッセージと、順序関係制御手段により取得したメッセージのフィールド値を比較すると共に、時間制約情報の条件を満たすか検査し、合否を判定するシミュレータ結果確認手段、
通信送受信手段から受信したメッセージをメッセージ解析手段によりフィールド値解析済みのメッセージに変換し、順序関係制御手段から次のメッセージおよび時間制約情報を取得し、シミュレータ結果確認手段により通信送受信手段経由のメッセージが妥当かどうかを計算し、結果を出力装置に出力するシミュレータ動作実施手段
を持つシステムを説明した。
また、本実施の形態で説明したシステムと同様の手順にて方法及びプログラムを実現することができる。
最後に、本実施の形態に示した通信シミュレータ装置100のハードウェア構成例について説明する。
図23は、本実施の形態に示す通信シミュレータ装置100のハードウェア資源の一例を示す図である。
なお、図23の構成は、あくまでも通信シミュレータ装置100のハードウェア構成の一例を示すものであり、通信シミュレータ装置100のハードウェア構成は図23に記載の構成に限らず、他の構成であってもよい。
図23において、通信シミュレータ装置100は、プログラムを実行するCPU911(Central Processing Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)を備えている。
CPU911は、バス912を介して、例えば、ROM(Read Only Memory)913、RAM(Random Access Memory)914、通信ボード915、表示装置901、キーボード902、マウス903、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。
更に、CPU911は、FDD904(Flexible Disk Drive)、コンパクトディスク装置905(CDD)、プリンタ装置906、スキャナ装置907と接続していてもよい。また、磁気ディスク装置920の代わりに、光ディスク装置、メモリカード(登録商標)読み書き装置などの記憶装置でもよい。
RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
本実施の形態で説明した「モニタ情報格納領域104」、「順序つきシミュレータ情報格納領域113」は、RAM914、磁気ディスク装置920等により実現される。
通信ボード915、キーボード902、マウス903、スキャナ装置907、FDD904などは、入力装置の一例である。
また、通信ボード915、表示装置901、プリンタ装置906などは、出力装置の一例である。
通信ボード915は、例えば、LAN(ローカルエリアネットワーク)、インターネット、WAN(ワイドエリアネットワーク)、SAN(ストレージエリアネットワーク)などに接続されていても構わない。
磁気ディスク装置920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。
プログラム群923のプログラムは、CPU911がオペレーティングシステム921、ウィンドウシステム922を利用しながら実行する。
また、RAM914には、CPU911に実行させるオペレーティングシステム921のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、RAM914には、CPU911による処理に必要な各種データが格納される。
また、ROM913には、BIOS(Basic Input Output System)プログラムが格納され、磁気ディスク装置920にはブートプログラムが格納されている。
通信シミュレータ装置100の起動時には、ROM913のBIOSプログラム及び磁気ディスク装置920のブートプログラムが実行され、BIOSプログラム及びブートプログラムによりオペレーティングシステム921が起動される。
上記プログラム群923には、本実施の形態の説明において「〜手段」、「〜部」として説明している機能を実行するプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。
ファイル群924には、本実施の形態の説明において、「〜の判断」、「〜の変換」、「〜の検査」、「〜の検索」、「〜の計算」、「〜の比較」、「〜の評価」、「〜の更新」、「〜の設定」、「〜の登録」、「〜の選択」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのCPUの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、本実施の形態で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAM914のメモリ、FDD904のフレキシブルディスク、CDD905のコンパクトディスク、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク、DVD等の記録媒体に記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
また、本実施の形態の説明において「〜手段」、「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。
すなわち、本実施の形態で説明したフローチャートに示すステップ、手順、処理により、本発明に係る情報処理方法を実現することができる。
また、「〜手段」、「〜部」として説明しているものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。すなわち、プログラムは、本実施の形態の「〜手段」、「〜部」としてコンピュータを機能させるものである。あるいは、本実施の形態の「〜手段」、「〜部」の手順や方法をコンピュータに実行させるものである。
このように、本実施の形態に示す通信シミュレータ装置100は、処理装置たるCPU、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜手段」、「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
100 通信シミュレータ装置、101 通信送受信手段、102 通信モニタ手段、103 時刻管理手段、104 モニタ情報格納領域、105 順序送信時間算出手段、106 通信シミュレータ手段、107 シミュレータ情報作成手段、108 シミュレータ動作実施手段、109 シミュレータ結果確認手段、110 メッセージ解析手段、111 順序関係計算手段、112 順序関係制御手段、113 順序つきシミュレータ情報格納領域、114 入力装置、115 出力装置、500 メッセージフォーマット、600 通信順序ルール。

Claims (14)

  1. 試験対象装置に対する試験を行う情報処理装置であって、
    前記試験対象装置に対する試験に先立ち、所定の通信装置間で送受信されている複数のメッセージを受信する通信部と、
    前記試験対象装置が用いる通信プロトコルにおいて発生し得る複数の状態と前記複数の状態における状態遷移の順序が示され、前記通信プロトコルに含まれる複数の状態遷移パターンが含まれ、状態遷移ごとに、メッセージの属性についての条件とメッセージの受信時刻についての条件が状態遷移条件として定義されている通信順序ルールを入力する通信順序ルール入力部と、
    前記通信順序ルールに示される状態遷移の順序に従って、状態遷移ごとに、前記通信部により受信されたメッセージの中から状態遷移条件に合致する属性及び受信時刻のメッセージを検索し、状態遷移条件に合致するメッセージが取得できた場合に、当該状態遷移を選択状態遷移として選択するとともに、前記選択状態遷移に対して取得されたメッセージを前記選択状態遷移よりも前の順序の状態遷移であって既に選択状態遷移として選択されている状態遷移に対して取得されているメッセージに連結し、複数のメッセージが選択状態遷移の順序に沿って順序付けられ、前記通信プロトコルに含まれる複数の状態遷移パターンが含まれる試験シナリオを生成する試験シナリオ生成部と、
    前記試験シナリオ生成部により生成された試験シナリオに含まれるメッセージを前記試験シナリオに示される順序に従って用い、前記試験対象装置に対する試験を行う試験管理部とを有することを特徴とする情報処理装置。
  2. 前記試験シナリオ生成部は、
    前記選択状態遷移に対して取得されたメッセージを、前記選択状態遷移の1つ前の順序の状態遷移であって既に選択状態遷移として選択されている状態遷移に対して取得されているメッセージに連結することを特徴とする請求項1に記載の情報処理装置
  3. 前記通信順序ルール入力部は、
    1つの状態から2つ以上の状態に分岐する状態遷移により状態遷移パスが複数含まれる通信順序ルールを入力し、
    前記試験シナリオ生成部は、
    前記選択状態遷移に対して取得されたメッセージを、前記選択状態遷移と同じ状態遷移パスに含まれ前記選択状態遷移の1つ前の順序の状態遷移であって既に選択状態遷移として選択されている状態遷移に対して取得されているメッセージに連結することを特徴とする請求項1又は2に記載の情報処理装置
  4. 前記通信順序ルール入力部は、
    2つ以上の状態が1つの状態に統合される状態遷移が含まれる通信順序ルールを入力し、
    前記試験シナリオ生成部は、
    前記選択状態遷移の始点となる状態が2つ以上の状態を遷移元とし当該2つ以上の状態を統合する統合状態である場合に、前記選択状態遷移に対して取得されたメッセージを、当該統合状態に至る2つ以上の状態遷移であって各々が既に選択状態遷移として選択されている状態遷移に対して取得されている2つ以上のメッセージの各々に連結することを特徴とする請求項1〜3のいずれかに記載の情報処理装置
  5. 前記通信部は、
    複数のメッセージ種別に分類され、特定のフィールドに複数種のフィールド値が含まれる複数のメッセージを受信し、
    前記通信順序ルール入力部は、
    いずれかの状態遷移に対して、メッセージの属性についての条件として、特定のメッセージ種別に該当すること及び特定のフィールドに特定のフィールド値が含まれていることが定義されている通信順序ルールを入力し、
    前記試験シナリオ生成部は、
    特定のメッセージ種別に該当すること及び特定のフィールドに特定のフィールド値が含まれていることが定義されている状態遷移に対して、前記特定のメッセージ種別に該当し、前記特定のフィールドに前記特定のフィールド値が含まれ、受信時刻についての条件に合致するメッセージを検索することを特徴とする請求項1〜4のいずれかに記載の情報処理装置。
  6. 前記通信順序ルール入力部は、
    いずれかの状態遷移に対して、メッセージの属性についての条件として、特定のメッセージ種別に該当すること及び状態遷移の順序において先行する特定の状態遷移に設けられている状態遷移条件に合致する先行メッセージと同じ特定のフィールドに特定のフィールド値が含まれていることが定義されている通信順序ルールを入力し、
    前記試験シナリオ生成部は、
    特定のメッセージ種別に該当すること及び前記先行メッセージと同じ特定のフィールドに特定のフィールド値が含まれていることが定義されている状態遷移に対して、前記通信部により受信されたメッセージの中から前記先行メッセージを検索し、取得された前記先行メッセージと同じ特定のフィールドに前記特定のフィールド値が含まれ、前記特定のメッセージ種別に該当し、受信時刻についての条件に合致するメッセージを検索することを特徴とする請求項5に記載の情報処理装置。
  7. 前記試験シナリオ生成部は、
    選択状態遷移に対して取得された各メッセージに各メッセージのメッセージ種別及び各メッセージの特定のフィールドに含まれているフィールド値を対応付け、複数のメッセージが選択状態遷移の順序に沿って順序付けられ各メッセージにメッセージ種別及びフィールド値が対応付けられている試験シナリオを生成し、
    前記通信部は、
    前記試験対象装置に対する試験において、前記試験対象装置からメッセージを受信し、
    前記試験管理部は、
    前記試験対象装置に対する試験において、試験の進展に合わせて前記試験シナリオ内の1つ以上のメッセージにポインタを設定し、前記通信部が前記試験対象装置からメッセージを受信する度に、ポインタが設定されている各メッセージの次の順序のメッセージを抽出し、次の順序のメッセージが前記試験対象装置から受信すべき受信対象メッセージであるか否かを判断し、次の順序のメッセージが受信対象メッセージである場合に、前記通信部が受信した受信メッセージのメッセージ種別及び特定のフィールドのフィールド値と抽出した受信対象メッセージのメッセージ種別及び特定のフィールドのフィールド値を照合し、抽出した受信対象メッセージの中から、メッセージ種別及び特定のフィールドのフィールド値が前記受信メッセージのメッセージ種別及び特定のフィールドのフィールド値と一致する受信対象メッセージを選択し、
    前記情報処理装置は、更に、
    前記試験管理部により選択された選択受信対象メッセージと前記受信メッセージを比較する試験結果確認部を有することを特徴とする請求項6に記載の情報処理装置。
  8. 前記通信順序ルール入力部は、
    いずれかの状態遷移に対して、メッセージの属性についての条件として、特定のメッセージ種別に該当すること及び状態遷移の順序において先行する特定の状態遷移に設けられている状態遷移条件に合致する第1の先行メッセージと同じ特定のフィールドに特定のフィールド値が含まれていることが定義され、更に、メッセージの受信時刻に関する条件として、状態遷移の順序において先行する特定の状態遷移に設けられている状態遷移条件に合致する第2の先行メッセージの受信時刻からの制限時間が定義されている通信順序ルールを入力し、
    前記試験シナリオ生成部は、
    特定のメッセージ種別に該当すること及び前記第1の先行メッセージと同じ特定のフィールドに特定のフィールド値が含まれていることが定義され、更に、前記第2の先行メッセージの受信時刻からの制限時間が定義されている状態遷移に対して、前記通信部により受信されたメッセージの中から前記第1の先行メッセージと前記第2の先行メッセージを検索し、取得された前記第1の先行メッセージと同じ特定のフィールドに特定のフィールド値が含まれ、取得された前記第2の先行メッセージとの受信時刻の差が制限時間内に収まり、前記特定のメッセージ種別に該当するメッセージを検索することを特徴とする請求項5〜7のいずれかに記載の情報処理装置。
  9. 前記試験シナリオ生成部は、
    選択状態遷移に対して取得された各メッセージに各メッセージのメッセージ種別及び各メッセージの特定のフィールドに含まれているフィールド値と状態遷移条件に定義されている制限時間を対応付け、複数のメッセージが選択状態遷移の順序に沿って順序付けられ各メッセージにメッセージ種別及びフィールド値と制限時間が対応付けられている試験シナリオを生成し、
    前記通信部は、
    前記試験対象装置に対する試験において、前記試験対象装置からメッセージを受信し、
    前記試験管理部は、
    前記試験対象装置に対する試験において、試験の進展に合わせて前記試験シナリオ内の1つ以上のメッセージにポインタを設定し、前記通信部が前記試験対象装置からメッセージを受信する度に、ポインタが設定されている各メッセージの次の順序のメッセージを抽出し、次の順序のメッセージが前記試験対象装置から受信すべき受信対象メッセージであるか否かを判断し、次の順序のメッセージが受信対象メッセージである場合に、前記通信部が受信した受信メッセージのメッセージ種別及び特定のフィールドのフィールド値と抽出した受信対象メッセージのメッセージ種別及び特定のフィールドのフィールド値を照合するとともに、前記受信メッセージの受信時刻と所定の基準時刻との時刻差と抽出された受信対象メッセージの制限時間とを照合し、抽出した受信対象メッセージの中から、メッセージ種別及び特定のフィールドのフィールド値が前記受信メッセージのメッセージ種別及び特定のフィールドのフィールド値と一致し、前記時刻差以上の制限時間が対応付けられている受信対象メッセージを選択し、
    前記情報処理装置は、更に、
    前記試験管理部により選択された選択受信対象メッセージと前記受信メッセージを比較する試験結果確認部を有することを特徴とする請求項8に記載の情報処理装置。
  10. 前記試験管理部は、
    前記試験結果確認部により前記選択受信対象メッセージと前記受信メッセージが一致しているとの判定結果が得られた場合に、前記通信部による前記受信メッセージの受信時刻を前記試験シナリオにおいて前記選択受信対象メッセージに対応付けて記録し、前記選択受信対象メッセージの前の順序のメッセージに設定されているポインタを前記選択受信対象メッセージの次の順序のメッセージに移動させることを特徴とする請求項7又は9に記載の情報処理装置。
  11. 前記試験シナリオ生成部は、
    選択状態遷移に対して取得された各メッセージに対して、前記試験対象装置へ送信する場合の送信タイミングを決定し、決定した送信タイミングを各メッセージに対応付け、
    前記試験管理部は、
    ポインタが設定されているメッセージが前記試験対象装置へ送信すべき送信対象メッセージである場合に、ポインタが設定されている送信対象メッセージの送信タイミングが到来した際に、前記通信部に対して当該送信対象メッセージの送信を指示し、
    前記通信部は、
    前記試験管理部から送信を指示された送信対象メッセージを前記試験対象装置に対して送信することを特徴とする請求項7、9及び10のいずれかに記載の情報処理装置。
  12. 前記試験管理部は、
    前記通信部による前記送信対象メッセージの送信時刻を前記試験シナリオにおいて前記送信対象メッセージに対応付けて記録し、前記送信対象メッセージに設定されているポインタを前記試験シナリオ内の次の順序のメッセージに移動させることを特徴とする請求項11に記載の情報処理装置。
  13. 試験対象装置に対する試験を行うコンピュータが、前記試験対象装置に対する試験に先立ち、所定の通信装置間で送受信されている複数のメッセージを受信する通信ステップと、
    前記コンピュータが、前記試験対象装置が用いる通信プロトコルにおいて発生し得る複数の状態と前記複数の状態における状態遷移の順序が示され、前記通信プロトコルに含まれる複数の状態遷移パターンが含まれ、状態遷移ごとに、メッセージの属性についての条件とメッセージの受信時刻についての条件が状態遷移条件として定義されている通信順序ルールを入力する通信順序ルール入力ステップと、
    前記コンピュータが、前記通信順序ルールに示される状態遷移の順序に従って、状態遷移ごとに、前記通信ステップにより受信されたメッセージの中から状態遷移条件に合致する属性及び受信時刻のメッセージを検索し、状態遷移条件に合致するメッセージが取得できた場合に、当該状態遷移を選択状態遷移として選択するとともに、前記選択状態遷移に対して取得されたメッセージを前記選択状態遷移よりも前の順序の状態遷移であって既に選択状態遷移として選択されている状態遷移に対して取得されているメッセージに連結し、複数のメッセージが選択状態遷移の順序に沿って順序付けられ、前記通信プロトコルに含まれる複数の状態遷移パターンが含まれる試験シナリオを生成する試験シナリオ生成ステップと、
    前記コンピュータが、前記試験シナリオ生成ステップにより生成された試験シナリオに含まれるメッセージを前記試験シナリオに示される順序に従って用い、前記試験対象装置に対する試験を行う試験管理ステップとを有することを特徴とする情報処理方法。
  14. 試験対象装置に対する試験を行うコンピュータに、
    前記試験対象装置に対する試験に先立ち、所定の通信装置間で送受信されている複数のメッセージを受信する通信処理と、
    前記試験対象装置が用いる通信プロトコルにおいて発生し得る複数の状態と前記複数の状態における状態遷移の順序が示され、前記通信プロトコルに含まれる複数の状態遷移パターンが含まれ、状態遷移ごとに、メッセージの属性についての条件とメッセージの受信時刻についての条件が状態遷移条件として定義されている通信順序ルールを入力する通信順序ルール入力処理と、
    前記通信順序ルールに示される状態遷移の順序に従って、状態遷移ごとに、前記通信処理により受信されたメッセージの中から状態遷移条件に合致する属性及び受信時刻のメッセージを検索し、状態遷移条件に合致するメッセージが取得できた場合に、当該状態遷移を選択状態遷移として選択するとともに、前記選択状態遷移に対して取得されたメッセージを前記選択状態遷移よりも前の順序の状態遷移であって既に選択状態遷移として選択されている状態遷移に対して取得されているメッセージに連結し、複数のメッセージが選択状態遷移の順序に沿って順序付けられ、前記通信プロトコルに含まれる複数の状態遷移パターンが含まれる試験シナリオを生成する試験シナリオ生成処理と、
    前記試験シナリオ生成処理により生成された試験シナリオに含まれるメッセージを前記試験シナリオに示される順序に従って用い、前記試験対象装置に対する試験を行う試験管理処理とを実行させることを特徴とするプログラム。
JP2009287380A 2009-12-18 2009-12-18 情報処理装置及び情報処理方法及びプログラム Active JP5495764B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009287380A JP5495764B2 (ja) 2009-12-18 2009-12-18 情報処理装置及び情報処理方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009287380A JP5495764B2 (ja) 2009-12-18 2009-12-18 情報処理装置及び情報処理方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2011130235A JP2011130235A (ja) 2011-06-30
JP5495764B2 true JP5495764B2 (ja) 2014-05-21

Family

ID=44292320

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009287380A Active JP5495764B2 (ja) 2009-12-18 2009-12-18 情報処理装置及び情報処理方法及びプログラム

Country Status (1)

Country Link
JP (1) JP5495764B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5805166B2 (ja) * 2013-11-12 2015-11-04 三菱電機株式会社 通信試験装置、通信試験方法およびプログラム
WO2022044190A1 (ja) * 2020-08-27 2022-03-03 日本電信電話株式会社 生成装置、生成方法および生成プログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3212959B2 (ja) * 1998-12-28 2001-09-25 日本電気通信システム株式会社 メッセージ/シーケンス編集機能を有する自動通信プロトコル試験システムおよび試験方法
JP2001209414A (ja) * 2000-01-25 2001-08-03 Omron Corp シーケンスプログラムのテスト装置
JP2003060735A (ja) * 2001-08-16 2003-02-28 Kddi Research & Development Laboratories Inc 通信プロトコル試験装置
JP2005175915A (ja) * 2003-12-11 2005-06-30 Anritsu Corp エミュレーション装置及びエミュレーションプログラム
JP4494860B2 (ja) * 2004-05-11 2010-06-30 新日本製鐵株式会社 テスト支援システム及びテスト支援方法
JP4411188B2 (ja) * 2004-11-17 2010-02-10 株式会社日立製作所 オンラインシステム及び通信方法

Also Published As

Publication number Publication date
JP2011130235A (ja) 2011-06-30

Similar Documents

Publication Publication Date Title
CN110928772B (zh) 一种测试方法及装置
JP5794107B2 (ja) 分散型コンピュータシステム、インタラクティブ型クライアント−サーバ・アプリケーションのベリファイ方法、及び製品
CN110321154B (zh) 一种微服务的接口信息展示方法、装置及电子设备
JP2012133721A (ja) テストの網羅性を評価する装置及び方法
Magee et al. Analysing the behaviour of distributed software architectures: a case study
EP2447893A2 (en) Technique for stateless distributed parallel crawling of interactive client-server applications
JP5318190B2 (ja) 情報処理装置及び情報処理方法及びプログラム
US20100058118A1 (en) Storage medium recording information reacquisition procedure generation program and information reacquisition procedure generation apparatus
JP2012190219A (ja) 情報処理装置、およびトレースログ取得方法
EP2447897A2 (en) Technique for compression of state information in the crawling of interactive client-server applications
CN109710810A (zh) 变更管理方法、装置、设备和存储介质
JPWO2014049804A1 (ja) 分散システムにおけるシステム動作トレース方法
JP5495764B2 (ja) 情報処理装置及び情報処理方法及びプログラム
JP2006058966A (ja) ページ情報収集プログラム、ページ情報収集方法、及びページ情報収集装置
KR101948927B1 (ko) 협업 리그레이션 점검 장치
EP2447895A2 (en) Synchronization scheme for distributed, parallel crawling of interactive client-server applications
JP4944559B2 (ja) 履歴情報表示装置および方法
Fields et al. DMVIS: Design, modelling and validation of interactive systems
Shahzadi et al. Repairing Event Logs to Enhance the Performance of a Process Mining Model
EP2447896A2 (en) Technique for efficient partial crawling of interactive client-server applications in a parallel, distributed environment
JP3705331B2 (ja) ハイパーテキスト解析装置及び方法、ハイパーテキスト解析プログラムを記録した記憶媒体
JP2006190033A (ja) 情報処理システム及び通信再生処理方法
US20140006882A1 (en) Screen generation program, screen generation apparatus, and screen generation method
JP4955051B2 (ja) データベースシステム、端末装置およびプログラム
GB2397905A (en) Method for automatically generating and ordering test scripts

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120914

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130918

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131001

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131025

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140204

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140304

R150 Certificate of patent or registration of utility model

Ref document number: 5495764

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250