JP2000259450A - オブジェクト指向メッセージ通信テスト装置及び記憶媒体 - Google Patents

オブジェクト指向メッセージ通信テスト装置及び記憶媒体

Info

Publication number
JP2000259450A
JP2000259450A JP11061448A JP6144899A JP2000259450A JP 2000259450 A JP2000259450 A JP 2000259450A JP 11061448 A JP11061448 A JP 11061448A JP 6144899 A JP6144899 A JP 6144899A JP 2000259450 A JP2000259450 A JP 2000259450A
Authority
JP
Japan
Prior art keywords
message
test
destination
handler
communication
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
Application number
JP11061448A
Other languages
English (en)
Other versions
JP3791876B2 (ja
Inventor
Takeo Hayase
健夫 早瀬
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP06144899A priority Critical patent/JP3791876B2/ja
Publication of JP2000259450A publication Critical patent/JP2000259450A/ja
Application granted granted Critical
Publication of JP3791876B2 publication Critical patent/JP3791876B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【課題】 テスト対象のオブジェクトからテスト対象外
のオブジェクトへのメッセージ通信があるような場合で
もテストプログラムを続行可能とする。 【解決手段】 マルチプロセス機能を有するオペレーテ
ィングシステムにて実行される一以上のプロセス21を
生成させ、かつ、データと手続きとをカプセル化した一
以上のオブジェクト29をプロセスが有するように、当
該プロセスを生成させるためのプログラムに対し、オブ
ジェクト間のメッセージ通信をテストするオブジェクト
指向メッセージ通信テスト装置にあって、テスト対象と
なる最初のオブジェクトにメッセージを送出するととも
に、このテストにより何れかのオブジェクトから出力さ
れた送信メッセージの受取先が非生成状態である場合に
は、当該受取先に代えて送信メッセージを受信するメッ
セージ代理受信手段25を備えたオブジェクト指向メッ
セージ通信テスト装置。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明はオブジェクト指向
メッセージ通信テスト装置、更に詳しくはプログラムの
並行動作が可能なマルチプロセス/マルチスレッド環境
において、複数のオブジェクト間のメッセージ通信によ
り所定の機能を実現可能なソフトウエアをテストする部
分に特徴のあるオブジェクト指向メッセージ通信テスト
装置及び記憶媒体に関する。
【0002】
【従来の技術】近年C++言語等のオブジェクト指向言
語を用いてプログラム作成が行われるようになってい
る。このオブジェクト指向言語においては、データ処理
等を行う手続きとその対応データとを一体(カプセル
化)としてオブジェクトという単位を構成し、あるオブ
ジェクトのデータは、当該オブジェクトの手続きのみを
介して操作するようにしている。
【0003】したがって、一のオブジェクトが他のオブ
ジェクトのデータに関連して何らかの処理を行う場合に
は、当該一のオブジェクトの手続きが当該他のオブジェ
クトの手続きに対して処理を依頼することになる。具体
的には、オブジェクト間でメッセージ通信が行われるこ
とで依頼処理等が実現される。ここで、オブジェクト指
向の概念におけるメッセージ通信とは、オブジェクトは
自律的に動作しており、必要に応じてメッセージを送信
することである。
【0004】一方、プログラムの並行処理が可能なマル
チプロセス/マルチスレッド環境を実現するUNIX等
のOS(オペレーティングシステム)が広く用いられる
ようになっている。
【0005】このようなプリエンプティブ方式のマルチ
タスクOSでは、プログラムはプロセスという単位で実
行されるとともに、さらにスレッドというプロセスより
も細かい実行単位を導入してスケジューリングを行って
いる。
【0006】マルチプロセス/マルチスレッド機能を有
する並行環境でオブジェクト指向言語のプログラムを実
行させる場合、一般に、プロセスは複数のオブジェクト
を有することとなり、オブジェクトはスレッドに対応す
る場合が多い。また、マルチタスクOSでは、プロセス
は複数存在するのが一般的である。
【0007】このような場合、オブジェクト間のメッセ
ージ通信は図27に示すようなメソッドにより行われ
る。なお、メソッドとは、C++言語におけるクラスの
中で定義される操作の実装である。
【0008】図48はメッセージ通信を行う場合におけ
る従来のプログラム記述方法の例を示す図である。
【0009】同図では、メッセージ通信対象となるオブ
ジェクトが同一プロセス内にある場合(同図(a))
と、異なるプロセス内にある場合(同図(b),
(c))とを示している。
【0010】同一プロセス内のオブジェクトに対して
は、図48(a)に示すように直接メッセージを送信す
ることができる。一方、他プロセス内のオブジェクトに
対しては、図48(b)に示すようにそのオブジェクト
が存在するプロセスの位置を指定することによって、メ
ッセージを送信することになる。
【0011】しかし、このような方法でメッセージ送信
を行うのでは、プログラム作成時に各オブジェクトがど
のプロセスに配置されているのかを意識する必要が生じ
る。これではシステム開発に多大な労力がかかることに
なり、さらにその保守、変更等を行う場合にも負担が大
きい。かかる事情は、システム開発者の労力を大きくす
るばかりでなく、プログラムミスの少ない信頼性の高い
システムを容易に構築できるようにする上でも不都合で
ある。
【0012】また、例えばプログラム処理の進行等に従
って、オブジェクトBのプロセス配置が変更されるよう
な場合には、図48(c)に示すようにオブジェクトA
のメソッドを修正する必要があり、プログラム作成上の
負荷がますます大きくなる。
【0013】さらに、オブジェクトのメッセージ通信を
行う必要のある複数のプロセスが、複数の計算機上に分
散して配置される場合には、上記負担は更に過大とな
る。
【0014】このような実情を考慮し、特願平10−3
28065号において送信先オブジェクトのプロセス配
置等を送信元オブジェクトにおいて意識することなく、
オブジェクト間のメッセージ通信を実現可能とする技術
が提案されている。
【0015】この技術においては、メッセージ通信制御
手段が設けられている。そして、このメッセージ通信制
御手段によって、あるオブジェクトから他のオブジェク
トへのオブジェクト宛メッセージの引き渡し制御が実行
され、上記オブジェクト間のメッセージ通信が実現され
るものである。
【0016】
【発明が解決しようとする課題】しかしながら、特願平
10−328065号に示される技術であっても、その
ソフトウエア開発段階において、作成途中のオブジェク
ト間メッセージ通信をいかにテストするかという問題が
ある。
【0017】図49は開発途中におけるオブジェクト間
通信テストの様子を示す図である。
【0018】ここでメッセージ通信テストを行うため
に、テスト対象となるオブジェクトが生成された上で、
図49(a)に示すテストルーチンが記述される。さら
にテストを実行するのに同テストルーチンがコンパイル
・リンクされる。この場合には、オブジェクトAにメッ
セージAを送信するシナリオとなっている。
【0019】次に、別のテストシナリオにするために
は、図49(b)に示すように先に作成したテストルー
チンを変更し、テストプログラムを再コンパイル・リン
クする必要がある。すなわちこのテスト方法では、テス
トシナリオを変更するたびに、テストルーチンを変更
し、その都度テストプログラムを再コンパイル・リンク
することになる。
【0020】しかしながら、一々テストシナリオをコン
パイル・リンクしながらテスト作業を行うのでは、テス
トに時間が掛かることになり効率が悪いものとなる。
【0021】一方、テスト対象となっているオブジェク
トがメッセージを受け取ったことにより、テスト対象外
のオブジェクトにメッセージを送信する際には、テスト
プログラムが途中で異常終了してしまう可能性があり、
テストを効果的に行い得ないという問題もある。
【0022】図50は実行されたテストプログラムが途
中で異常終了してしまう場合を示す図である。
【0023】同図において例えば、テスト対象のオブジ
ェクトがオブジェクトAであった場合を考える。このオ
ブジェクトAは、同図(b)に示すようにメッセージA
を受け取ると、メソッドA(メッセージAに対応する処
理)の中でオブジェクトXへメッセージXを送信するよ
うになっている。
【0024】したがって、オブジェクトXが存在しない
状態でテストを実行すると、オブジェクトAのメソッド
AによってオブジェクトXへメッセージXが送信され、
この時点でテストプログラムが異常終了してしまう。こ
のとき、あらかじめオブジェクトXを生成しておけば問
題は発生しないが、システムを開発途中の場合には、す
べてのオブジェクトが開発済みであるとは限らない。
【0025】本発明は、このような実情を考慮してなさ
れたもので、その第1の目的は、開発したオブジェクト
をテストするためのテストシナリオを柔軟に選択・変更
でき、ひいてはシステム開発途上時のオブジェクトのテ
ストを効率的に行い、システムを効率的に開発できるオ
ブジェクト指向メッセージ通信テスト装置及び記憶媒体
を提供することにある。
【0026】また、第2の目的は、テスト対象のオブジ
ェクトからテスト対象外のオブジェクトへのメッセージ
通信があるような場合でもテストプログラムを続行可能
とし、ひいてはシステム開発途上時のオブジェクトのテ
ストを効率的に行い、システムを効率的に開発できるオ
ブジェクト指向メッセージ通信テスト装置及び記憶媒体
を提供することにある。
【0027】
【課題を解決するための手段】上記課題を解決するため
に、請求項1に対応する発明は、マルチプロセス機能を
有するオペレーティングシステムにて実行される一以上
のプロセスを生成させ、かつ、データと手続きとをカプ
セル化した一以上のオブジェクトをプロセスが有するよ
うに、当該プロセスを生成させるためのプログラムに対
し、オブジェクト間のメッセージ通信をテストするオブ
ジェクト指向メッセージ通信テスト装置についてなされ
たものである。
【0028】このオブジェクト指向メッセージ通信テス
ト装置にはメッセージ代理受信手段が設けられている。
【0029】このメッセージ代理受信手段によって、テ
スト対象となる最初のオブジェクトにメッセージが送出
されるとともに、このテストにより何れかのオブジェク
トから出力された送信メッセージの受取先が非生成状態
である場合には、当該受取先に代えて前記送信メッセー
ジが受信される。
【0030】したがって、図50に示したような問題が
生じることがなく、テスト対象のオブジェクトからテス
ト対象外のオブジェクトへのメッセージ通信があるよう
な場合でもテストプログラムを続行可能とし、ひいては
システム開発途上時のオブジェクトのテストを効率的に
行い、システムを効率的に開発することができる。
【0031】次に、請求項2に対応する発明は、マルチ
プロセス機能を有するオペレーティングシステムにて実
行される一以上のプロセスを生成させ、かつ、データと
手続きとをカプセル化した一以上のオブジェクトをプロ
セスが有するように、当該プロセスを生成させるための
プログラムに対し、オブジェクト間のメッセージ通信を
テストするオブジェクト指向メッセージ通信テスト装置
についてなされたものである。
【0032】このオブジェクト指向メッセージ通信テス
ト装置には、まず、テストシナリオ格納手段が設けら
れ、同手段に、送信元オブジェクト、送信先オブジェク
ト及びメッセージ種類の各情報を含む少なくとも一つの
シナリオからなるテストシナリオが格納されている。
【0033】また、テストアイテム抽出手段によって、
テストシナリオから送信元オブジェクト、送信先オブジ
ェクト及びメッセージ種類がテストアイテムとして抽出
される。
【0034】そして、テスト実行手段によって、シナリ
オの何れか若しくはテストアイテムの指定された組み合
わせに基づくメッセージ通信テストが実行される。
【0035】したがって、開発したオブジェクトをテス
トするためのテストシナリオを柔軟に選択・変更でき、
ひいてはシステム開発途上時のオブジェクトのテストを
効率的に行い、システムを効率的に開発することができ
る。
【0036】次に、請求項3に対応する発明は、マルチ
プロセス機能を有するオペレーティングシステムにて実
行される一以上のプロセスを生成させ、かつ、データと
手続きとをカプセル化した一以上のオブジェクトをプロ
セスが有するように、当該プロセスを生成させるための
プログラムに対し、オブジェクト間のメッセージ通信を
テストするオブジェクト指向メッセージ通信テスト装置
についてなされたものである。
【0037】このオブジェクト指向メッセージ通信テス
ト装置には、メッセージ送受表示入力手段が設けられて
いる。
【0038】このメッセージ送受表示入力手段によっ
て、以下の表示及び入力受付が行われる。すなわちま
ず、送信元オブジェクト、送信先オブジェクト及びメッ
セージ種類の各情報を含む少なくとも一つのシナリオか
らなるテストシナリオが表示され、テストシナリオから
抽出される送信元オブジェクト、送信先オブジェクト及
びメッセージ種類がテストシナリオの表示とは別途に表
示される。
【0039】さらに、シナリオの何れか若しくはテスト
アイテムの指定された組み合わせを、メッセージ通信テ
ストの内容として実行するよう入力させる実行ボタンが
表示される。
【0040】そして、テストアイテムの指定並びに実行
ボタンからの入力が受け付けられるようになっている。
【0041】本発明では、このような手段を設けたの
で、請求項2に係る発明と同様な作用効果を得ることが
できる。
【0042】次に、請求項4に対応する発明は、請求項
2又は3に対応する発明において、テスト対象となる最
初のオブジェクトにメッセージを送出するとともに、こ
のテストにより何れかのオブジェクトから出力された送
信メッセージの受取先が非生成状態である場合には、当
該受取先に代えて前記送信メッセージを受信するメッセ
ージ代理受信手段を備えたオブジェクト指向メッセージ
通信テスト装置である。
【0043】本発明はこのような手段を設けたので、請
求項1及び請求項2又は3の発明を組み合わせた効果を
得ることができる。
【0044】次に、請求項5に対応する発明は、請求項
1〜4に対応する発明において、プロセスは、自プロセ
ス又は他プロセスのオブジェクトが出力するオブジェク
ト宛のメッセージを受け取るとともに、そのメッセージ
の宛先が自プロセス内であるときはその宛先オブジェク
トにメッセージを引き渡し、宛先が他のプロセス内とな
るときは、当該他のプロセスにメッセージを引き渡すメ
ッセージ通信制御手段を備えたオブジェクト指向メッセ
ージ通信テスト装置である。
【0045】本発明はこのような手段を設けたので、請
求項1〜4に係る発明と同様な効果が得られる他、メッ
セージ通信制御手段により、送信先オブジェクトのプロ
セス配置等を送信元オブジェクトにおいて考慮すること
なく、オブジェクト間のメッセージ通信を実現すること
ができる。
【0046】次に、請求項6に対応する発明は、請求項
5に対応する発明において、メッセージ通信制御手段
は、各オブジェクトがどのプロセスに属するかの情報を
記録するプロセス対応記録手段と、プロセス対応記録手
段を検索し、受け取ったメッセージの宛先オブジェクト
がどのプロセスに属するを判定する判定手段とを備えた
オブジェクト指向メッセージ通信テスト装置である。
【0047】本発明はこのような手段を設けたので、請
求項1〜5に係る発明と同様な効果が得られる他、請求
項5に対応する発明を効率的にかつ確実に実現すること
ができる。
【0048】次に、請求項7に対応する発明は、請求項
5又は6に対応する発明において、メッセージ通信制御
手段は、各オブジェクトが元々有する論理的なオブジェ
クト識別情報と、オペレーティングシステムに生成され
たときに各オブジェクトに付された動作時オブジェクト
識別情報との対応情報を記録するオブジェクト対応記録
手段を備えるとともに、メッセージの宛先情報として論
理的なオブジェクト情報のみが付されているときであっ
ても、オブジェクト対応記録手段を検索して動作時オブ
ジェクト識別情報を取得することにより、宛先オブジェ
クトにメッセージを引き渡し可能とするオブジェクト指
向メッセージ通信テスト装置である。
【0049】本発明はこのような手段を設けたので、請
求項1〜6に係る発明と同様な効果が得られる他、送信
元オブジェクトのメゾットにおいて、送信先オブジェク
トのプロセス位置等を考慮することなく、論理的なオブ
ジェクト識別情報を指定しておくのみで、メッセージ送
信先を特定することができる。したがって、オブジェク
トに割り当てられるプロセスが変更された場合でも、柔
軟かつ容易に対応することができる。例えばプロセス配
置の変更に伴うプログラムの変更量を軽減し、システム
を効率的に開発することができる。
【0050】次に、請求項8に対応する発明は、請求項
1に対応する発明をコンピュータに実現させるプログラ
ムを記録した記録媒体である。
【0051】この記録媒体から読み出されたプログラム
により制御されるコンピュータは、請求項1のオブジェ
クト指向メッセージ通信テスト装置として機能する。
【0052】次に、請求項9に対応する発明は、請求項
2に対応する発明をコンピュータに実現させるプログラ
ムを記録した記録媒体である。
【0053】この記録媒体から読み出されたプログラム
により制御されるコンピュータは、請求項2のオブジェ
クト指向メッセージ通信テスト装置として機能する。
【0054】次に、請求項10に対応する発明は、請求
項3に対応する発明をコンピュータに実現させるプログ
ラムを記録した記録媒体である。
【0055】この記録媒体から読み出されたプログラム
により制御されるコンピュータは、請求項3のオブジェ
クト指向メッセージ通信テスト装置として機能する。
【0056】
【発明の実施の形態】以下、本発明の実施の形態につい
て説明する。
【0057】(発明の第1の実施の形態)図1は本発明
の第1の実施の形態における計算機システムの一例を示
す構成図である。この計算機システムのために開発され
るプログラムが、第2の実施形態以降で説明するオブジ
ェクト指向メッセージ通信テスト装置にてテストされる
ものである。
【0058】この計算機システム20は、パーソナルコ
ンピュータやワークステーション等の計算機上でマルチ
プロセス/マルチスレッド環境を実現するUNIX等の
OSが動作し、さらに当該OS上に複数のプロセス21
−1〜21−2(プロセス#1〜#2)が設けられてな
っている。以下、本明細書において各機能構成部分を示
す符号における「−1」,「−2」,..部分を削除し
て例えば「プロセス21」等と示した場合には、その機
能構成部分の一般的な場合を意味する。
【0059】各プロセス21−1〜21−2は、オブジ
ェクト指向言語で記述されたプログラムをもとに生成さ
れたものであり、それぞれメッセージ通信制御部23お
よびアクタ部24で構成されている。逆にそのオブジェ
クト指向言語は、本実施形態のプロセス21を構成でき
るような仕様となっている。
【0060】アクタ部24には、そのプロセス独自の処
理を行うための主たるオブジェクトが配置される。ここ
で、プロセス21−1のアクタ部24には、オブジェク
ト29−1〜29−2(オブジェクトA〜B)が存在す
る。また、プロセス21−2のアクタ部24には、オブ
ジェクト29−3〜29−4(オブジェクトC〜D)が
存在する。
【0061】メッセージ通信制御部23は、アクタ部2
4に配置された各オブジェクト29が他のオブジェクト
と通信するために、メッセージハンドラ30等の各機能
を有している。なお、メッセージ通信制御部23の機能
構成部分も基本的にはオブジェクトから構成される。
【0062】メッセージハンドラ30は、プロセス対応
マップ31及びオブジェクト対応マップ32を参照して
アクタ部24内のオブジェクト29が出力するメッセー
ジ通信の取り扱いを管理する。すなわち直接メッセージ
通信の引き渡しを管理するか、プロセスメッセージハン
ドラ等の他の機能構成部分にメッセージ通信の送信を依
頼し、あるいは他の機能構成部分から自プロセス21宛
のメッセージ通信を受け取る。
【0063】このために各メッセージハンドラ30−1
〜30−2は、システム内に唯一存在するプロセス対応
マップ31を参照し、送信先オブジェクト29−1〜2
9−4が存在するプロセスを識別する。
【0064】図2はプロセス対応マップの構成例を示す
図である。
【0065】同図(a)はプロセス対応マップの一般的
な構成(フォーマット)を示し、同図(b)は本実施形
態の場合におけるプロセス対応マップ31の構成を示し
ている。
【0066】また、図3はオブジェクト対応マップの構
成例を示す図である。
【0067】同図(a)はオブジェクト対応マップの一
般的な構成(フォーマット)を示し、同図(b)は本実
施形態の場合におけるオブジェクト対応マップ32−1
の構成を示す。さらに、同図(c)は本実施形態の場合
におけるオブジェクト対応マップ32−2の構成を示し
ている。
【0068】プロセス対応マップ31を参照した結果、
同一プロセス内での通信であることが判定された場合に
は、メッセージハンドラ30−1は、さらに図3に示す
オブジェクト対応マップ32−1,32−2(オブジェ
クト対応マップP1,P2)をそれぞれ参照し、送信先
オブジェクトの識別番号(動作時オブジェクトID)を
取得する。さらに取得したオブジェクトIDをもとに、
アクタ部24内でのメッセージの引き渡しを行う。
【0069】図4は各プロセスにおけるアクタ部の詳細
構成例を示すブロック図である。
【0070】同図に示すように、アクタ部24において
は各オブジェクト29に対応して、メッセージキュー3
8及びメッセージマップ39が設けられている。詳細は
後述するが、このメッセージキュー38及びメッセージ
マップ39によりメッセージ通信の引き渡しが実現され
る。
【0071】図5はメッセージマップの構成例を示す図
である。
【0072】同図(a)はメッセージマップの一般的な
構成(フォーマット)を示し、同図(b)は本実施形態
の場合におけるメッセージマップ39−1の構成を示
す。さらに、同図(c),(d),(e)は、それぞれ
本実施形態の場合におけるメッセージマップ39−2,
39−3,39−4の構成を示している。
【0073】また、メッセージハンドラ30は、後述す
るプロセスメッセージハンドラ34からメッセージの取
り扱い通知を受けたときも上記と同様にしてアクタ部2
4のオブジェクトIDを取得して、メッセージの引き渡
しを行う。
【0074】一方、プロセス対応マップ31を参照した
結果、異なるプロセス間での通信であることが判定され
た場合には、メッセージハンドラ30−1は、このメッ
セージ通信を図6に示すプロセスメッセージハンドラ3
4に依頼する。
【0075】図6は各プロセスにおけるメッセージ通信
部の詳細構成例を示すブロック図である。
【0076】すなわちオブジェクト29−1〜29−2
とオブジェクト29−3〜29−4との間のメッセージ
通信は、プロセスメッセージハンドラ34−1〜34−
2(プロセスメッセージハンドラP1−P2〜P2−P
1)が取り扱う。
【0077】ここで、プロセス21−1とプロセス21
−2との間は、共有メモリ37−1(共有メモリP1−
P2:プロセス#1からプロセス#2へのメッセージ通
信)及び共有メモリ37−2(共有メモリP2−P1:
プロセス#2からプロセス#1へのメッセージ通信)が
設けられ、これらの共有メモリ37−1〜37−2を介
して、オブジェクト29−1〜29−2とオブジェクト
29−3〜29−4との間のメッセージ通信が可能とな
っている。
【0078】なお、メッセージハンドラ30−1〜30
−2、プロセスメッセージハンドラ34−1〜34−
2、オブジェクト29−1〜29−4は、それぞれ自律
的に動作し一つのスレッドが割り当てられており、この
スレッドが自分自身のキューを監視している。アクタ部
24のオブジェクト29−1〜29−4の存在するプロ
セス21−1〜21−2を表現したプロセス対応マップ
31は、あらかじめ図2(b)に示す内容でファイルや
共有メモリなどシステム稼動時に参照できるような形態
で保管しておく。
【0079】次に、以上のように構成された本実施形態
における計算機システムの動作について説明する。
【0080】オブジェクトからのメッセージ通信につい
て説明する。
【0081】まず、同一プロセス内のオブジェクト間メ
ッセージ通信について図8を用いて説明する。
【0082】図7はメッセージハンドラスレッドによる
メッセージ通信処理の様子を示す流れ図である。
【0083】ここでオブジェクト29−1のメソッドm
1によってオブジェクト29−2に向けてメッセージA
を送信することを考える。
【0084】図8はオブジェクト29−1のメソッドm
1の内容例を示す図である。
【0085】同図に示されるオブジェクトIDは、プロ
グラム中の論理的な番号を意味し、以下、論理オブジェ
クトID101と呼ぶ。この論理オブジェクトID10
1は、図2,図3に示すプロセス対応マップ31及びオ
ブジェクト対応マップ32に対応するものである。な
お、この論理オブジェクトID101と区別するため
に、生成された動作中のオブジェクトに付けられるオブ
ジェクトIDを動作時オブジェクトID102と呼ぶ
(図3)。動作時オブジェクトID102は当該オブジ
ェクトが計算機におけるメモリ上の位置を示し、具体的
にはポインタ等を意味している。
【0086】さて、図7において、オブジェクト29−
1からオブジェクト29−2に向けてメッセージAが送
信されると、メソッドm1によって送信先のオブジェク
ト29−2の論理オブジェクトID101と送信メッセ
ージAがメッセージハンドラ30−1に渡され、メッセ
ージハンドラキュー33−1に格納される(T13)。
【0087】このメッセージハンドラキュー33−1か
らオブジェクト29−2の論理オブジェクトID101
とメッセージAとがメッセージハンドラ30−1によっ
て取り出され(T14)、プロセス対応マップ31(図
2)に記述されたオブジェクト29−2の論理オブジェ
クトID101に対応するプロセスが検索される(T1
5)。
【0088】ここで、検出されたオブジェクト29−2
がオブジェクト29−1と同一プロセス21−1(プロ
セス#1)に存在するかどうかが判定される(T1
6)。
【0089】この場合は、同一プロセスに存在すること
が判明するので、ステップT17に進む。ステップT2
1に進む場合は後述する。
【0090】次に、メッセージハンドラ30−1によ
り、メッセージAがスレッド終了メッセージでないこと
が確認される(T17)。さらに、メッセージハンドラ
30−1がオブジェクト対応マップ32−1を検索する
ことで(T18)オブジェクト29−2の論理オブジェ
クトID101(オブジェクト識別子)に基づき動作時
オブジェクトID102(オブジェクト)が取り出され
る(T19)。
【0091】次に、取り出された動作時オブジェクトI
D102に基づき、メッセージハンドラ30−1による
送信先オブジェクト29−2へのメッセージAの送信が
行われる(T20)。
【0092】以降、アクタ部24におけるオブジェクト
スレッドによる処理に移る。
【0093】図9はアクタ部のオブジェクトスレッドに
よるメッセージ通信処理を示す図である。
【0094】アクタ部24に対しメッセージAが送信さ
れると、送信メッセージAが送信先オブジェクト29−
2に渡され、メッセージキュー38−2に格納される
(T24)。
【0095】このメッセージAは、送信先オブジェクト
29−2によってメッセージキュー38−2から取り出
され(T25)、スレッド終了メッセージでないことが
確認される(T26)。さらに、当該オブジェクト29
−2によってメッセージAに対応するメソッドAが図5
のメッセージマップ39−2から検索される(T2
7)。
【0096】この場合は、図5(c)に示すようにメッ
セージAがメソッドAに対応しているので、このメソッ
ドAがオブジェクト29−2によって呼び出され、実行
される(T28)。
【0097】以上が同一プロセス内のオブジェクト間メ
ッセージ通信であるが、次に、別プロセスに属するオブ
ジェクト間でのメッセージ通信について説明する。
【0098】ここでは、オブジェクト29−1がオブジ
ェクト29−4に向けてメッセージAを送信する場合を
考える。この通信においても、その通信用メゾットでは
図9のメゾットm1と同一の形式で通信相手が規定され
る。すなわち通信相手オブジェクトの論理オブジェクト
ID101のみが指定されている。
【0099】この場合、図7におけるステップT13か
らT15までの動作は上述と同様である。
【0100】ここで、オブジェクト29−4の論理オブ
ジェクトID101はID_Dでありプロセス21−2
(#2)に属するためオブジェクト29−1とは異なる
プロセスに存在することが判明する(T16)。したが
って、この場合は図7においてステップT21に進む。
【0101】まず、メッセージハンドラ30−1によ
り、プロセス21−2に対応するプロセスメッセージハ
ンドラ34−1が取り出される(T21)。ついで、オ
ブジェクト29−4の論理オブジェクトIDとメッセー
ジAとがプロセスメッセージハンドラ34−1に送信さ
れる(T22)。この論理オブジェクトIDとメッセー
ジAとは、プロセスメッセージハンドラ34−1によっ
てプロセス送信用メッセージキュー35−1に格納され
る(T23)。続いて共有メモリ37−1上にオブジェ
クト29−4の論理オブジェクトIDとメッセージAが
置かれる。
【0102】この共有メモリ37−1に置かれた各デー
タはプロセス#2によって以下のように処理される。
【0103】図10は他のプロセスから受信したメッセ
ージがプロセスメッセージハンドラにより処理される様
子を示す流れ図である。
【0104】まず、送信先オブジェクト29−4が存在
するプロセス21−2(#2)内のプロセスメッセージ
ハンドラ34−2によって、共有メモリ37−1に置か
れたオブジェクト29−4の論理オブジェクトIDとメ
ッセージAが取り出され、プロセス受信用メッセージキ
ュー36−2に格納される(T29)。
【0105】このオブジェクト29−4の論理オブジェ
クトIDとメッセージAとはプロセスメッセージハンド
ラ34−2によって、プロセス受信用メッセージキュー
36−2から取り出される(T30)。さらにメッセー
ジAがスレッド終了メッセージでないことが確認された
上で(T31)、メッセージハンドラ30−2に送信さ
れる(T32)。
【0106】送信された論理オブジェクトIDとメッセ
ージとは、プロセス#2のメッセージハンドラ30−2
により、メッセージハンドラキュー33−2に格納され
る(図7:T13)。
【0107】これらの論理オブジェクトIDとメッセー
ジAとはメッセージハンドラ30−2によってメッセー
ジハンドラキュー33−2から取り出され(T14)、
プロセス対応マップ31によってこの論理オブジェクト
ID101に対応するプロセスが検索される(T1
5)。
【0108】この場合、図2(b)に示すように、オブ
ジェクト29−4の論理オブジェクトID102は、メ
ッセージハンドラ30−2と同一プロセス21−2に存
在することが判明するため(T16)、ステップT17
に進む。
【0109】つまり、この場合は、プロセス#2におい
て、プロセス#1から受け取った論理オブジェクトID
を調べたところ、そのメッセージの送信先がプロセス#
2であることがメッセージハンドラ30−2により判定
されたものである。両プロセス#1,#2内のメッセー
ジハンドラ30−1,30−2は同様な動作を行うた
め、以降の処理は、上述した同一プロセス内でのメッセ
ージ通信と同様である。
【0110】すなわちメッセージAがスレッド終了でな
いことが確認された上(T17)オブジェクト対応マッ
プ32−2から動作時オブジェクトID102が検索さ
れ(T18)、取り出され(T19)、送信先オブジェ
クト29−4にメッセージAが送信される(T20)。
【0111】さらに、図9の処理に移って、送信された
メッセージAが送信先オブジェクト29−4のメッセー
ジキュー38−4に一旦格納された後(T24)、メッ
セージAが取り出される(T25)。さらに、メッセー
ジAがスレッド終了メッセージでないことが確認され
(T26)、メッセージAに対応するメソッドAをメッ
セージマップ39−4から検索される(T27)。そし
て、メッセージAに対応するメソッドAが呼び出され実
行される(T28)。
【0112】こうして異なるプロセス間でのオブジェク
ト間メッセージ通信が実現される。
【0113】以上の同一プロセス内でのオブジェクト間
メッセージ通信、及び異なるプロセス間でのオブジェク
ト間メッセージ通信の何れも、論理オブジェクトID1
01のみが指定されたメゾットm1と同一形式のメゾッ
トにより実現される。すなわち通信相手のオブジェクト
の所属するプロセスや動作時プロセスIDを全く考慮す
ることなく、通信可能となっている。
【0114】上述したように、本発明の実施の形態に係
る計算機システムは、プログラムの並行処理が可能なマ
ルチプロセス/マルチスレッド環境において、データと
手続きをカプセル化した複数のオブジェクト間のメッセ
ージ通信装置を提供するようにしたので、オブジェクト
指向の概念におけるメッセージ通信、およびオブジェク
トの自律的な動作を実現し、さらにオブジェクト間のメ
ッセージ通信において送信先オブジェクトのプロセス配
置を意識しないようにすることができる。
【0115】(発明の第2の実施の形態)本実施形態に
おいては、第1の実施形態の計算機システムに用いられ
るオブジェクト指向プログラムをテストするためのオブ
ジェクト指向メッセージ通信テスト装置について説明す
る。
【0116】図11は本発明の第2の実施の形態に係る
オブジェクト指向メッセージ通信テスト装置の一例を示
す構成図であり、図1〜図10と同一部分には同一符号
を付して説明を省略し、ここでは異なる部分についての
み述べる。
【0117】同図に示すオブジェクト指向メッセージ通
信テスト装置20′は、第1の実施形態の計算機システ
ム20と同様な計算機上に構成されるものであり、第1
の実施形態では図示を省略した入力装置99が示される
とともに、プロセス21−1(#1)がメッセージ通信
テスト用のプロセスとなっている他、第1の実施形態と
同様に構成されている。
【0118】本実施形態では、プロセス21−1(#
1)及びプロセス21−2(#2)の2つのプロセスが
設けられ、本実施形態のプロセス21−2(#2)は第
1の実施形態のプロセス21−1(#1)に相当する。
したがって、これに対応し、以降の図面においては、符
号の「−1」,「−2」部分が修正されている。
【0119】また、プロセス21−1はメッセージ通信
テスト用のプロセスであり、アクタ部24に代えてテス
ト制御部22が設けられる他、第1の実施形態と同様に
構成されている。なお、テスト制御部22は本発明にお
いて改良を施したアクタ部24の一形態である。
【0120】また、図12は本実施形態のオブジェクト
指向メッセージ通信テスト装置におけるメッセージ通信
制御部の詳細構成例を示すブロック図であり、図1〜図
11と同一部分には同一符号を付して説明を省略する。
【0121】さらに、図13は本実施形態のオブジェク
ト指向メッセージ通信テスト装置におけるテスト制御部
並びにアクタ部の詳細構成例を示すブロック図であり、
図1〜図12と同一部分には同一符号を付して説明を省
略する。
【0122】すなわちテスト制御部22は、図13に示
すように、テストハンドラ25,テストシナリオ26,
テストアイテムリスト27,メッセージ送受表示GUI
28及びメッセージキュー38−0から構成されてい
る。なお、メッセージ送受表示GUI28の出力先であ
り表示装置は図示を省略している。
【0123】すなわちプロセス21−1は、テストハン
ドラ25によってテストシナリオ7を駆動するプロセス
であって、プロセス21−2はそのテスト対象となるオ
ブジェクト29−1〜29−2(オブジェクトA〜B)
を含むプロセスである。
【0124】テストハンドラ25は、メッセージ代理受
信手段、テストアイテム抽出手段及びテスト実行手段と
して機能するものである。すなわちメッセージ送受表示
GUI28の指令に従い、メッセージハンドラ30−1
とメッセージを送受することでメッセージ送信テストを
実行し、また、そのテスト結果をメッセージ送受表示G
UI28に引き渡す。メッセージハンドラ30−1以降
の処理はプロセス対応マップ31及びオブジェクト対応
マップ32に従い第1の実施形態と同様に扱われる。
【0125】また、テストハンドラ25によるテスト
は、メッセージ送受表示GUI28に指定されたテスト
シナリオ26に従う場合、テストアイテムリスト27を
利用しメッセージ送受表示GUI28から直接指示入力
する場合等がある。
【0126】テストシナリオ26には、予め設定された
又は入力装置99により設定入力される少なくとも1種
類のメッセージ送信テストのシナリオが保持されてお
り、このシナリオは送信先オブジェクトとメッセージを
表現したものである。
【0127】なお、テストシナリオ26は、図13に示
すような内容でファイルや共有メモリなどシステム稼動
時に参照できるような形で保管しておく。
【0128】図14はテストシナリオの内容例を示す図
であり、同図(a)は一般形、同図(b)は本実施形態
に対応する内容例を示している。
【0129】テストアイテムリスト27には、各オブジ
ェクト名やメッセージ名等のテストパターンを組むため
の情報が格納されている。この情報は、システム立ち上
げ時にテストシナリオ26から抽出されて保存される
が、立ち上げ後に入力することも可能である。テストシ
ナリオ26にないシナリオパターンでテストする場合等
にこのテストアイテムリスト27に格納された各情報が
使用される。
【0130】メッセージ送受表示GUI28は、入力装
置99からの設定情報や指令入力を受け付けるととも
に、表示装置に結果出力し、また、テストシナリオ26
あるいはテストアイテムリスト27に設定情報を出力す
るとともに、テストハンドラ25に対してテスト指令を
出力するようになっている。
【0131】メッセージキュー38−0は、テストにお
いて行き先のないメッセージを戻す戻し先に用いられる
ものである。
【0132】なお、メッセージハンドラ30−1〜30
−2、プロセスメッセージハンドラ34−1〜34−
2、テストハンドラ25、オブジェクト29−1〜29
−2は、それぞれ自律的に動作し一つのスレッドが割り
当てられており、このスレッドが自分自身のキューを監
視している。テスト制御部22のテストハンドラ25お
よびアクタ部24のオブジェクト29−1〜29−2の
存在するプロセス21−1〜21−2を表現したプロセ
ス対応マップ31は、あらかじめ図15に示す内容でフ
ァイルや共有メモリなどシステム稼動時に参照できるよ
うな形態で保管しておく。次に、プロセス対応マップ3
1,オブジェクト対応マップ32及びメッセージマップ
39の構成例を示す。
【0133】図15は本実施形態におけるプロセス対応
マップの構成を示す図である。
【0134】図16は本実施形態におけるオブジェクト
対応マップの構成を示す図であり、同図(a)はオブジ
ェクト対応マップ32−1、同図(b)はオブジェクト
対応マップ32−2の構成を示している。
【0135】図17は本実施形態におけるメッセージマ
ップの構成を示す図であり、同図(a)はメッセージマ
ップ39−1、同図(b)はメッセージマップ39−2
の構成を示している。
【0136】なお、図15,図16及び図17における
一般的な構成は、第1の実施形態と同様であるので省略
している。
【0137】図15に示すように、本実施形態では架空
のオブジェクトCがプロセス#1に論理オブジェクトI
D101として割り付けられている。これに対応し、図
16のオブジェクト対応マップ32ではオブジェクトC
の論理オブジェクトID101に対する動作時オブジェ
クトID102としてテストハンドラが割り付けられて
いる。このようなマップ構成とすることで未だに作成さ
れていないオブジェクトにメッセージを発信する場合が
あってもエラーを生じずにテストできるようになってい
る。
【0138】なお、プロセス対応マップ31はメッセー
ジテスト用に予め作成されるものであり、メッセージマ
ップ29もメソッドとメッセージの関係に対応して予め
作成されている。しかし、オブジェクト対応マップ32
は後述するように、テストシステム生成時に作成される
ものである。
【0139】次に、以上のように構成された本実施形態
におけるオブジェクト指向メッセージ通信テスト装置の
動作について説明する。
【0140】(システム起動);システムを起動する際
のプロセスの動作、メッセージ通信制御部23、テスト
制御部22およびアクタ部24の動作を図18及び図1
9のフロー図を参照して説明する。
【0141】図18は本実施形態におけるシステム起動
の際の立ち上げ処理を説明する第1の図である。
【0142】図19は本実施形態におけるシステム起動
の際の立ち上げ処理を説明する第2の図である。
【0143】図18に示すように、テストハンドラ25
を含むプロセスが起動される場合には、まず始めに、メ
ッセージハンドラ30−1が生成される(図18
(a):S1)。次に、テストシナリオ26を駆動する
テストハンドラ25が生成される(S2)。さらに、シ
ナリオ情報およびテストアイテム(送信先オブジェクト
IDとメッセージ)を表示するメッセージ送受表示GU
I28が生成される(S3)。
【0144】一方、テスト対象オブジェクト29−1〜
29−2を含むプロセスが起動される場合には、まず始
めに、メッセージハンドラ30−2(図18(b):S
4)が生成される。次に、プロセスに存在するべきオブ
ジェクト29−1〜29−2が生成される(S5)。
【0145】以下に各処理のより詳細な説明を行う。
【0146】まず、ステップS1又はS4におけるメッ
セージハンドラ30−1〜30−2の生成について説明
する。この場合は、まずメッセージハンドラキュー33
−1〜33−2が生成され(図18(c):S6)、メ
ッセージハンドラキュー33−1〜33−2を監視する
ためのスレッドが起動される(S7)。さらに、プロセ
ス対応マップ31が読み込まれ(S8)、プロセスメッ
セージハンドラ34−1〜34−2が生成される(S
9)。
【0147】また、ステップS9におけるプロセスメッ
セージハンドラ34−1〜34−2の生成時には、まず
プロセス送信用メッセージキュー35−1〜35−2が
生成され(図19(d):S10)、プロセス受信用メ
ッセージキュー36−1〜36−2が生成される(S1
1)。さらに、プロセス受信用メッセージキュー36−
1〜36−2を監視するためのスレッドが起動される
(S12)。
【0148】また、ステップS2におけるテストハンド
ラ25の生成時には、テストシナリオ26からシナリオ
情報が読み込まれ(図19(e):S13)、テストシ
ナリオ26から送信先オブジェクトおよびメッセージを
抽出したテストアイテムリスト27が作成される(S1
4)。次に、読み込んだシナリオ情報と作成したテスト
アイテムがメッセージ送受表示GUI28に表示され
(S15)、メッセージキュー38−0が生成される
(S16)。さらに、メッセージキュー38−0を監視
するためのスレッドが起動され(S17)、メッセージ
ハンドラ30−1に自分自身が登録される(ステップS
18)。
【0149】これにより図16に示すように、オブジェ
クト対応マップ32−1に未だ作成されていないオブジ
ェクトについても登録がなされることになる。ここで、
当該オブジェクトの代わりになるのはテストハンドラ2
5である。すなわちプロセス対応マップ31の情報から
プロセス#1にオブジェクトCが存在することとなる。
しかし、実際には同オブジェクトCが存在しないため、
オブジェクトCの論理オブジェクトID101にテスト
ハンドラの動作時オブジェクトID102が割り付けら
れることになるようオブジェクト対応マップ32−1が
生成される。
【0150】一方、ステップS2で生成されるべきテス
ト対象となるオブジェクト29−1〜29−2の生成時
には、まずメッセージキュー38−1〜38−2が生成
され(図19(f):S19)、メッセージキュー38
−1〜38−2を監視するためのスレッドが起動される
(S20)。さらに、メッセージハンドラ30−2に自
分自身が登録される(S21)。以上により図16に示
すように、オブジェクト対応マップ32−1〜32−2
にオブジェクトが登録される。
【0151】(メッセージ通信テスト);以上のように
して、テストハンドラ25が生成されると、テストシナ
リオ26が読み込み、送信先のオブジェクトIDと送信
メッセージとが取得され、シーケンシャルなシナリオ情
報としてメッセージ送受表示GUI28に表示される。
一方、任意の送信先オブジェクトIDと任意の送信メッ
セージを選択できるように、テストシナリオ6から送信
先オブジェクトおよびメッセージが抽出されてテストア
イテムリスト7が作成され、メッセージ送受表示GUI
8に先のシーケンシャルなシナリオ情報とは別にこれら
の情報が表示される(後述の図24)。こうして、メッ
セージ通信テストの準備が整うことになる。
【0152】この状態で、シナリオを開始するか、ある
いは任意の送信先オブジェクトIDと任意の送信メッセ
ージを選択すると、テストハンドラ25によりメッセー
ジ通信テストが開始される。本実施形態ではテストシナ
リオ26を用いてテストする場合を説明し、任意組み合
わせモードによるテストは後述の第4の実施形態で説明
する。
【0153】以下に説明する例においては、シナリオで
はテストハンドラ25からオブジェクトAにメッセージ
Aを送信するようになっている。この最初のメッセージ
送信の結果、オブジェクトAからオブジェクトBへ通信
メッセージBが送信され、さらにオブジェクトBからオ
ブジェクトCへメッセージCが送信されるように、それ
ぞれのオブジェクトA,Bがプログラムされている場合
を考える。
【0154】しかしながら、図11〜図13に示すよう
に、オブジェクトA及びBはテストハンドラとは異なる
同一プロセス#2内に存在し、オブジェクトC自体は未
だ作成されていない。
【0155】このような状況において、テストハンドラ
プロセス21−1からテスト対象プロセス21−2への
メッセージ通信(テストハンドラ25からオブジェクト
29−1〜29−2へのメッセージ通信)、同一プロセ
ス内のテスト対象オブジェクト間のメッセージ通信(オ
ブジェクト29−1からオブジェクト29−2へのメッ
セージ通信)、テスト対象プロセス21−2からテスト
ハンドラプロセス21−2へのメッセージ通信(オブジ
ェクト29−2からテスト対象外オブジェクトへのメッ
セージ通信)の各メッセージ通信テストについて、図2
0〜図23のフロー図を用いて順に説明する。
【0156】図20は本実施形態におけるメッセージハ
ンドラスレッドメッセージ通信の動作を示す流れ図であ
り、図21は本実施形態におけるプロセスメッセージハ
ンドラスレッドメッセージ通信の動作を示す流れ図であ
る。
【0157】また、図22は本実施形態におけるテスト
ハンドラスレッドメッセージ通信の動作を示す流れ図で
あり、図23は本実施形態におけるオブジェクトスレッ
ドメッセージ通信の動作を示す流れ図である。
【0158】a)通信テスト#1;テストハンドラ25
からオブジェクト29−1〜29−2へのメッセージ通
信 まず、テストハンドラプロセス21−1からテスト対象
プロセス21−2へのメッセージ通信に関し、メッセー
ジ通信制御部23のメッセージハンドラ30−1および
テスト制御部22のテストハンドラ25の動作を説明す
る。
【0159】テストハンドラ25が駆動するテストシナ
リオ27は、図14(a)に示すフォーマットであらか
じめ与えられている。図14(b)は本実施例における
具体例である。
【0160】テストシナリオ27には、[シナリオ情
報]、[オブジェクト名対応]、[メッセージ名対応]
の三種類の情報が記述されている。最初の[シナリオ情
報]には、送信元オブジェクト名(“テストハンド
ラ”)、送信先オブジェクト名(“オブジェクト
A”)、メッセージ名(“メッセージA”)を順に記述
する。次の[オブジェクト名対応]と[メッセージ名対
応]は、テストハンドラ25がメッセージ送受表示GU
I28にシナリオ情報やメッセージ送受状況を表示する
ために利用される。[オブジェクト名対応]とは、オブ
ジェクトIDとオブジェクト名の対応を表し、[メッセ
ージ名対応]とは、メッセージIDとメッセージ名の対
応を表す。なお、図14において、左側の番号(1,
2,3,..等)がID(論理オブジェクトID101
等に相当)を示し、番号の右側の名称(オブジェクト
A,メッセージA等)がオブジェクト名等を示してい
る。
【0161】また、オブジェクトがメッセージを送信す
る際には、実際には送信元オブジェクトIDとメッセー
ジIDを格納したものを作成する。以下では、説明を簡
略化するため、メッセージの送信はメッセージ名(メッ
セージAなど)で記述する。
【0162】図24はメッセージ送受表示GUIによっ
て表示されるメッセージ通信テスト環境画面を示す図で
ある。
【0163】同図に示す画面において、テストを行う開
発者によりシナリオ読み込みボタン111が指定入力さ
れると(マウスクリック等による)、テストハンドラ2
5によりテストシナリオ26が読み込まれ、メッセージ
送受表示GUI28のシナリオ一覧112にシナリオ情
報が表示される。また、このときオブジェクトおよびメ
ッセージ一覧113にはシナリオ26から抽出されテス
トアイテムリスト27に格納された情報が表示される。
【0164】ここで、シナリオ一覧112のシナリオ情
報が選択され、連続送信ボタン114が押されると、テ
ストハンドラ25により一定間隔でテストシナリオ26
に沿ったメッセージ送信が行われる。
【0165】ここで、テストハンドラ25がオブジェク
ト29−1に向けてメッセージAを送信することを考え
る。
【0166】テストハンドラ25のメッセージ送信メソ
ッドは、図25(a)に示す内容になっている。
【0167】図25は本実施形態のテストハンドラある
いはオブジェクトに対応する各メゾット内容例を示す図
である。
【0168】ここでテストハンドラ25によりオブジェ
クト29−1(オブジェクトA)に向けてメッセージA
が送信されると、まず送信先オブジェクト29−1の論
理オブジェクトIDと送信メッセージAが図12のメッ
セージハンドラ30−1に渡され、メッセージハンドラ
キュー33−1に格納される(図20;S22)。
【0169】メッセージハンドラ30−1により、メッ
セージハンドラキュー33−1からオブジェクト29−
1の論理オブジェクトID101とメッセージAが取り
出され(S23)、図15のプロセス対応マップ31に
記述されたオブジェクト29−1の論理オブジェクトI
D101に対応するプロセスが検索される(ステップS
24)。
【0170】ここでまず、オブジェクト29−1がメッ
セージハンドラ30−1と同一プロセス21−1に存在
するかどうかが調べられる(S25)。この場合、図1
5にあるように、オブジェクトAがテストハンドラ25
とは異なるプロセス#2に存在することが判明する。し
たがって、メッセージハンドラ30−1により、プロセ
ス21−2(#2)に対応するプロセスメッセージハン
ドラ34−1が取り出され(S30)、オブジェクト2
9−2の論理オブジェクトID101とメッセージAが
プロセスメッセージハンドラ34−1に送信される(S
31)。オブジェクト29−2の論理オブジェクトID
101とメッセージAが送信されると、これらがプロセ
ス送信用メッセージキュー35−1に格納され(S3
2)、続いて共有メモリ27−1上にオブジェクト29
−1の論理オブジェクトID101とメッセージAとが
置かれる。
【0171】次に、送信先オブジェクト29−1が存在
するプロセス21−2内のプロセスメッセージハンドラ
34−2により共有メモリ37−1に置かれたオブジェ
クト29−1の論理オブジェクトID101とメッセー
ジAが取り出され、プロセス受信用メッセージキュー3
6−2に格納される(図21;S33)。プロセスメッ
セージハンドラ34−2により、プロセス受信用メッセ
ージキュー36−2からオブジェクト29−1の論理オ
ブジェクトID101とメッセージAが取り出される
(S34)。このメッセージAがスレッド終了メッセー
ジでないことが確認された上で(S35)、これらがメ
ッセージハンドラ30−3に送信される(S36)。
【0172】この送信されたオブジェクト29−1のオ
ブジェクトIDとメッセージAは、メッセージハンドラ
30−2によりメッセージハンドラキュー33−2に一
旦格納される(図20;S22)。メッセージハンドラ
30−2により、メッセージハンドラキュー33−2か
らオブジェクト29−1のオブジェクトIDとメッセー
ジAが取り出され(S23)、図15のプロセス対応マ
ップ31に記述されたオブジェクト29−1の論理オブ
ジェクトID101に対応するプロセスが検索される
(S24)。この場合、オブジェクト29−1がメッセ
ージハンドラ30−2と同一プロセス21−2に存在す
るかどうかが調べられる(S25)。
【0173】ここでは図15にあるように、同一プロセ
ス#2に存在することが判明するので、メッセージAが
スレッド終了メッセージでないことが確認された上で
(S26)、メッセージハンドラ30−2によって、図
16のオブジェクト対応マップ32−2からオブジェク
ト29−1の論理オブジェクトID101に対応するオ
ブジェクト29−1の動作時オブジェクトID102が
検索される(S27)。
【0174】この場合には、オブジェクト29−1の論
理オブジェクトID101に対応する動作時オブジェク
ト102がオブジェクト対応マップ32から取り出され
(S28)、送信先オブジェクト29−1にメッセージ
Aが送信される(S29)。
【0175】メッセージAが送信されると、送信メッセ
ージAが送信先オブジェクト29−1に渡され、送信先
オブジェクト29−1のメッセージキュー38−1に格
納される(図23;S41)。このメッセージAは送信
先オブジェクト29−1によってメッセージキュー38
−1から取り出され(S42)、メッセージAがスレッ
ド終了メッセージでないことが確認された上で(S4
3)、メッセージAに対応するメソッドAが図17のメ
ッセージマップ39−1から検索される(S44)。そ
してメッセージAに対応するメソッドAが呼び出され、
実行される(S45)。
【0176】こうして、正常なメッセージ通信並びに通
信に基づく正常なオブジェクト動作がなされたか否かが
確認される。なお、このメッセージ通信状況は、例えば
図24に示すようにメッセージ送受表示GUI28のメ
ッセージ送受信状況115に表示される。
【0177】b)通信テスト#2;オブジェクト29−
1からオブジェクト29−2へのメッセージ通信 次に、同一プロセス内のテスト対象オブジェクト間のメ
ッセージ通信に関し、メッセージ通信制御部23のメッ
セージハンドラ30−2およびアクタ部24のオブジェ
クト29−1〜29−2の動作を説明する。
【0178】オブジェクト29−1のメソッドAにより
オブジェクト29−2に向けてメッセージBを送信する
こととなる場合を考える。この場合、オブジェクト29
−1のメソッドAは、図25(b)に示す内容になる。
【0179】ここでオブジェクト29−1がオブジェク
ト29−2に向けてメッセージBを送信すると、送信先
のオブジェクト29−2のオブジェクトIDと送信メッ
セージBがメッセージハンドラ30−2に渡され、メッ
セージハンドラキュー33−2に格納される(図20;
S22)。メッセージハンドラ30−2により、メッセ
ージハンドラキュー33−2からオブジェクト29−2
の論理オブジェクトID101とメッセージBが取り出
される(S23)。さらに、図15のプロセス対応マッ
プ31に記述されたオブジェクト29−2のオブジェク
トIDに対応するプロセスが検索される(S24)。こ
れによりオブジェクト29−2がオブジェクト29−1
と同一プロセス21−2(プロセス#2)に存在するか
どうかが調べられる(S25)。
【0180】この場合、図15にあるように、各オブジ
ェクト20−1,29−2が同一プロセスに存在するこ
とが判明するので、メッセージBがスレッド終了メッセ
ージでないことが確認された上で(S26)、メッセー
ジハンドラ30−2により、図16(b)のオブジェク
ト対応マップ32−2からオブジェクト29−2のオブ
ジェクトIDに対応するオブジェクトが検索される(S
27)。
【0181】この検索の結果、メッセージハンドラ30
−2により、オブジェクト29−2の論理オブジェクト
ID101から動作時オブジェクト102が取り出され
(S28)、送信先オブジェクト29−2にメッセージ
Bが送信される(S29)。
【0182】この送信されたメッセージBは送信先オブ
ジェクト29−2に渡され、メッセージキュー38−2
に格納される(図23;S41)。送信先オブジェクト
29−2により、メッセージキュー38−2からメッセ
ージBが取り出され(S42)、メッセージBはスレッ
ド終了メッセージでないことが確認され(S43)、メ
ッセージBに対応するメソッドBが図17(b)のメッ
セージマップ39−2から検索される(S44)。
【0183】こうしてメッセージBに対応するメソッド
Bが呼び出され、オブジェクトBにより実行される(ス
テップS45)。
【0184】なお、ここでは、テストの一部分として、
オブジェクトAからオブジェクトBへのメッセージ送信
という形で説明したが、例えば送信側オブジェクトAと
してテストハンドラ25を用いれば同一プロセス内のオ
ブジェクト間通信の場合であってもメッセージ通信テス
トを実行できることになる。
【0185】c)通信テスト#3;オブジェクト29−
2からテスト対象外オブジェクトへのメッセージ通信 次に、テスト対象プロセス21−2からテストハンドラ
プロセス21−2へのメッセージ通信に関し、テスト制
御部22、メッセージ制御部23およびアクタ部24の
動作を説明する。
【0186】ここでは、オブジェクト29−2のメソッ
ドBによりテスト対象外のオブジェクトCに向けてメッ
セージCを通信することとなる場合を考える。オブジェ
クト29−2のメソッドBは、図25(c)に示す内容
になる。
【0187】この場合、オブジェクトCへのメッセージ
をテストハンドラ25に受信させるために、図15にあ
るように、プロセス対応マップ31では、オブジェクト
Cが存在するプロセスをテストハンドラ25が存在する
プロセス21−1(プロセス#1)としている。一方、
テストハンドラ25が生成された際に、メッセージハン
ドラ30−1に自分自身が登録される(図19(e);
S18)。この時プロセス対応マップ31でテストハン
ドラ25が存在するプロセス21−1に送信先オブジェ
クト(この場合はオブジェクトC)が対応付けられてい
るときは、該当するオブジェクトIDもテストハンドラ
25自身として登録される。これは、テスト対象外であ
るオブジェクトCへのメッセージ送信をテストハンドラ
25が受け取るための仕組みである。
【0188】このような状況において、オブジェクト2
9−2(オブジェクトB)がオブジェクトCに向けてメ
ッセージCが送信されると、図20のステップS25ま
では先と同様な動作が行われる。
【0189】ここで、図15に示されるように、オブジ
ェクトCが存在するプロセスは、テストハンドラ25が
存在するプロセス21−1であるため、メッセージハン
ドラ30−2によって、プロセス21−1に対応するプ
ロセスメッセージハンドラ34−2が取り出される(S
30)。さらに、オブジェクトCの論理オブジェクトI
D101(テストハンドラ25の動作時オブジェクトI
D102に対応)とメッセージCがプロセスメッセージ
ハンドラ34−2に送信される(S31)。
【0190】送信されたオブジェクトCの論理オブジェ
クトID101とメッセージCは、プロセス送信用メッ
セージキュー35−2に格納され(S32)、続いて共
有メモリ37−2上に置かれる。
【0191】次に、プロセス対応マップ31で送信先オ
ブジェクトCが存在すると記述されたプロセス21−1
内のプロセスメッセージハンドラ34−1によって、共
有メモリ37−2に置かれたオブジェクトCの論理オブ
ジェクトID101とメッセージAが取り出され、プロ
セス受信用メッセージキュー36−1に格納される(図
21;S33)。オブジェクトCの論理オブジェクトI
D101とメッセージAはプロセスメッセージハンドラ
34−1によってプロセス受信用メッセージキュー36
−1から取り出される(S34)。さらに、メッセージ
Aがスレッド終了メッセージでないことが確認された上
で(S35)、メッセージハンドラ30−1に送信され
る(S36)。
【0192】送信されたオブジェクトCの論理オブジェ
クトID101とメッセージAは、メッセージハンドラ
30−1によって、メッセージハンドラキュー33−1
に格納される(図20;S22)。さらに、メッセージ
ハンドラ30−1によって、メッセージハンドラキュー
33−1からオブジェクトCの論理オブジェクトID1
01とメッセージCが取り出される(S23)。
【0193】この取り出されたオブジェクトCの論理オ
ブジェクトID101に対応するプロセスが、図15の
プロセス対応マップ31から検索される(S24)。こ
れにより、オブジェクトCがメッセージハンドラ30−
1と同一プロセス21−1に存在するかどうか調べられ
る(S25)。この場合は、同一プロセスに存在するこ
とが判明するので、メッセージCがスレッド終了メッセ
ージでないことが確認された上で(S26)、メッセー
ジハンドラ30−1によって、図16(a)のオブジェ
クト対応マップ32−1からオブジェクトCの論理オブ
ジェクトID101に対応する動作時オブジェクトID
102が検索される(S27)。
【0194】図16(a)にあるように、オブジェクト
対応マップ32−1においてはオブジェクトCの論理オ
ブジェクトID101に対してはテストハンドラ25の
動作時オブジェクトID102が割り付けられている。
したがって、テストハンドラ25の動作時オブジェクト
ID102が取り出され(S28)、オブジェクトCの
代用としてのテストハンドラ25にメッセージCが送信
される(プS29)。
【0195】送信されたメッセージCはテストハンドラ
25に渡され、テストハンドラ25のメッセージキュー
38−0に格納される(図22;S37)。このメッセ
ージCは、テストハンドラ25によってメッセージキュ
ー38−0から取り出され(S38)、スレッド終了メ
ッセージでないことが確認される(S39)。さらに、
同メッセージCに基づき、メッセージ送受表示GUI2
8によって、送信元オブジェクト29−2(オブジェク
トB)の名前、送信先オブジェクトCの名前、メッセー
ジCの名前がメッセージ送受信状況115に表示される
(S40)。
【0196】こうして、例えばオブジェクトCが未作成
などの理由により存在しない場合でも異常終了とならず
にメッセージ通信テストが可能となる。
【0197】(システム停止);次に、システムを停止
する際のプロセスの動作、テスト制御部22、メッセー
ジ通信制御部23およびアクタ部24の動作を図26及
び図27のフロー図を用いて説明する。
【0198】図26はシステム停止時の処理を示す第1
の流れ図である。
【0199】図27はシステム停止時の処理を示す第2
の流れ図である。
【0200】テスト対象オブジェクトを含むプロセスを
停止するときには、まず始めに、プロセスに存在してい
るオブジェクト29−1〜29−2が破壊される(図2
6(a);S46)。次に、メッセージハンドラ30−
2が破壊される(S47)。
【0201】一方、テストハンドラ25を含むプロセス
を停止するときには、まず始めに、メッセージ送受表示
GUI28が破壊される(図26(b);S48)。次
に、テストハンドラ25が破壊される(ステップS4
9)、最後に、メッセージハンドラ30−1が破壊され
る(S50)。
【0202】以下、それぞれの処理についてさらに詳し
く説明する。
【0203】まず、ステップS46のオブジェクト29
−1〜29−2の破壊時には、まず論理オブジェクトI
Dの登録がメッセージハンドラ30−2から抹消される
(図26(c);ステップS51)。続いて、自分自身
にスレッド終了メッセージが送信され(S52)、メッ
セージキュー38−1〜38−2を監視していたスレッ
ドの終了が待たれたのち(S53)、メッセージキュー
38−1〜38−2が破壊される(ステップS54)。
【0204】また、ステップS49のテストハンドラ2
5の破壊時には、オブジェクトIDの登録がメッセージ
ハンドラ30−1から抹消される(図27(d);S5
5)さらに、自分自身にスレッド終了メッセージが送信
され(S56)、メッセージキュー38−0を監視して
いたスレッドの終了が待たれたのち(S57)、メッセ
ージキュー38−0が破壊される(ステップS58)。
【0205】次に、ステップS47,S50のメッセー
ジハンドラ30−1〜30−2の破壊時には、まず、プ
ロセスメッセージハンドラ34−1〜34−2が削除さ
れる(図27(e);S59)。さらに、自分自身にス
レッド終了メッセージが送信され(S60)、メッセー
ジハンドラキュー33−1〜33−2を監視していたス
レッドの終了が待たれたのち(S61)、メッセージハ
ンドラキュー33−1〜33−2が破壊される(S6
2)。
【0206】さらに、メッセージハンドラ30の破壊時
におけるステップS59のプロセスメッセージハンドラ
34−1〜34−2の破壊時には、まず自分自身にスレ
ッド終了メッセージが送信される(図27(f);S6
3)。次に、プロセス受信用メッセージキュー36−1
〜36−2を監視していたスレッドの終了が待たれたの
ち(S64)、プロセス受信用メッセージキュー36−
1〜36−2が破壊される(S65)。さらに、プロセ
ス送信用メッセージキュー35−1〜35−2が破壊さ
れる(S66)。
【0207】このようにしてメッセージ通信テストシス
テムが終了する。
【0208】上述したように、本発明の実施の形態に係
るオブジェクト指向メッセージ通信テスト装置は、第1
の実施形態と同様な構成を設けた他、メッセージ通信テ
スト装置を提供するようにしたので、開発したオブジェ
クトをテストするためのテストシナリオを柔軟に選択・
変更できるとともに、テスト対象のオブジェクトからテ
スト対象外へのオブジェクトへのメッセージ通信がある
ような場合でもテストプログラムを続行可能とすること
ができる。
【0209】これらによってプロセス配置の変更に伴う
プログラムの変更量を軽減するとともに、システム開発
途上時のオブジェクトのテストを効率的に行い、システ
ムを効率的に開発することができる。
【0210】(発明の第3の実施の形態)本実施形態に
おいては、第1の実施形態の計算機システムに用いられ
るオブジェクト指向プログラムをテストするためのオブ
ジェクト指向メッセージ通信テスト装置について説明す
る。また、第2の実施形態ではプロセス21が2つの場
合について説明したが、本実施形態ではプロセス21が
3つの場合を説明する。
【0211】図28は本発明の第3の実施の形態に係る
オブジェクト指向メッセージ通信テスト装置の一例を示
す構成図であり、図11〜図27と同一部分には同一符
号を付して説明を省略し、ここでは異なる部分について
のみ述べる。
【0212】同図に示すオブジェクト指向メッセージ通
信テスト装置20”は、第1及び第2の実施形態と同様
な計算機上に構成されるものであり、オブジェクト29
−3(オブジェクトC)を含むプロセス21−3(#
3)が設けられる他、第2の実施形態と同様に構成され
ている。
【0213】このシステムにおいては、第2の実施形態
でテスト対象外であったオブジェクトCがオブジェクト
29−3として新たに別のプロセス#3に配置されてい
る。
【0214】プロセス21−3は、メッセージ通信制御
部23及びプロセスCを含むアクタ部24を備えるとと
もに、共有メモリ37−3,37−4を介してプロセス
21−1と通信できるようになっている。
【0215】また、図29は本実施形態のオブジェクト
指向メッセージ通信テスト装置におけるメッセージ通信
制御部の詳細構成例を示すブロック図であり、図11〜
図28と同一部分には同一符号を付して説明を省略す
る。
【0216】さらに、図30は本実施形態のオブジェク
ト指向メッセージ通信テスト装置におけるテスト制御部
並びにアクタ部の詳細構成例を示すブロック図であり、
図11〜図29と同一部分には同一符号を付して説明を
省略する。
【0217】図30には、メッセージキュー28−3
(C)及びメッセージマップ29−3(C)が示される
が、これらは第2実施形態のメッセージキュー28−1
(A),28−2(B)及びメッセージマップ29−1
(A),29−2(B)と同様なものである。
【0218】本実施形態においても、第2の実施形態と
同様に、テストハンドラ25からオブジェクト49−1
(オブジェクトA)に向けてメッセージAが送信される
場合を考える。つまり本実施形態は、第2の実施形態に
示された状況からプログラム開発が進み、オブジェクト
Cを含むプロセス21−3(#3)が完成し、このプロ
セス#3も含めてテストをしようとする場合である。
【0219】本実施形態の場合においては、テストハン
ドラ25→オブジェクトA→オブジェクトB→オブジェ
クトC→オブジェクトXという順でメッセージ送信が進
行することになる。
【0220】図31は本実施形態のテストハンドラある
いはオブジェクトに対応する各メゾット内容例を示す図
である。
【0221】同図には図25の場合に比べてオブジェク
トCのメゾットCが加えられており(図31(d))、
同メゾットCではオブジェクトXに対してメッセージX
を送信するようになっている。
【0222】本実施形態において、オブジェクトCが存
在するプロセスを追加したことによる修正の必要が生じ
るのは図32に示すプロセス対応マップ31のみであ
り、テストプログラム自体を修正する必要はない。した
がって、テスト対象のオブジェクトが増えて、オブジェ
クトのプロセス配置が変更されても、オブジェクトのプ
ロセス配置を意識する必要はない。第2の実施形態に説
明したように、オブジェクト対応マップは、プロセス対
応マップ31等の情報からテスト環境に適合するように
自動生成されるためであり、メッセージマップ39はそ
もそも変更する必要がないためである。
【0223】図32は本実施形態におけるプロセス対応
マップの構成を示す図である。
【0224】図33は本実施形態におけるオブジェクト
対応マップの構成を示す図であり、同図(a)はオブジ
ェクト対応マップ32−1、同図(b)はオブジェクト
対応マップ32−2、同図(c)はオブジェクト対応マ
ップ32−3、の構成を示している。
【0225】図34は本実施形態におけるメッセージマ
ップの構成を示す図であり、同図(a)はメッセージマ
ップ39−1、同図(b)はメッセージマップ39−
2、同図(c)はメッセージマップ39−3の構成を示
している。
【0226】なお、第1、第2の実施形態で説明したよ
うに、本システムではオブジェクト対応マップ32は、
オブジェクトが生成される際の立ち上げ処理時に登録さ
れるため、これらのマップを事前に修正する必要はな
い。ただし、オブジェクト49−3(オブジェクトC)
を追加する際には、先の実施形態と同様に図34に示す
ようなメッセージマップをオブジェクトCに用意する。
【0227】次に、以上のように構成された本実施形態
におけるオブジェクト指向メッセージ通信テスト装置の
動作について説明する。
【0228】本実施形態においてもまず、図24に示す
メッセージ送受表示GUI28からテスト者が連続送信
ボタン114をクリックすることで開始される。
【0229】これにより、まず図31のテストハンドラ
25からプロセス#2のオブジェクトAにメッセージが
送信される。なお、メッセージ制御部24やアクタ部2
3等における処理は図32,図33及び図34に示すプ
ロセス対応マップ31、オブジェクト対応マップ32及
び39に従い、第1,第2の実施形態と同様にして行わ
れる。
【0230】次に、テストハンドラ25からのメッセー
ジを受け取ったオブジェクトAからは、図31(b)に
示すメソッドAに従い、同一プロセス#2内のオブジェ
クトBに対してメッセージBが出力される。ここまで
は、第2の実施形態と同様である。
【0231】さらに、オブジェクトAからのメッセージ
Bを受け取ったオブジェクトBからは、図31(c)に
示すメソッドBに従い、プロセス#3のオブジェクトC
に対してメッセージCが出力される。第2の実施形態で
はプロセス#3が存在しなかったため、このメッセージ
Cはプロセス#1のテストハンドラ25に戻されたが、
本実施形態ではプロセス対応マップ31に従い、現実に
存在するプロセス#3に送信される。
【0232】次に、オブジェクトBからのメッセージC
を受け取ったオブジェクトCからは、図31(d)に示
すメソッドCに従い、オブジェクトXに対してメッセー
ジXが出力される。本実施形態においては、オブジェク
トXは未だ存在しないので、オブジェクトXは、図3
2,図33のプロセス対応マップ31及びオブジェクト
対応マップ32−1からわかるようにプロセス#1のテ
ストハンドラ25に割り付けられている。
【0233】したがって、このメッセージXは、テスト
ハンドラ25に送信され、これを受け取ったテストハン
ドラ25からの通知により、その通信結果がメッセージ
送受表示GUI28のメッセージ送受状況115に表示
される。
【0234】上述したように、本発明の実施の形態に係
るオブジェクト指向メッセージ通信テスト装置は、第2
の実施形態と同様な構成を設けた他、新たなオブジェク
トCを含むプロセス#3を設けたが、オブジェクト対応
マップ32はプロセス対応マップ31等の情報からテス
ト環境に適合するように自動生成されるので、オブジェ
クトCが存在するプロセスを追加したことによる修正の
必要が生じるのは図32に示すプロセス対応マップ31
のみとすることができる。
【0235】したがって、テスト対象のオブジェクトが
増えて、オブジェクトのプロセス配置が変更されても、
オブジェクトのプロセス配置を意識する必要はなく、適
宜の段階毎の繰り返しテストを容易に実行することがで
きる。
【0236】なお、本実施形態では、プロセス数を3つ
に増やした場合を説明したが、例えばオブジェクトBを
オブジェクトAとは別プロセスに配置してテストするこ
とも容易に実現できる。すなわち、図28でオブジェク
ト49−2(オブジェクトB)を別のプロセス#4に再
配置し、プロセス間にオブジェクト49−1(オブジェ
クトA)とのメッセージ通信を可能にするための共有メ
モリを設け、プロセス対応マップ31を修正すればよ
い。
【0237】第2,第3の実施形態をさらに一般化した
構成を図35〜図41に示す。
【0238】なお、図35〜図41において、プロセス
1は、本実施形態のプロセス21に対応し、同様に、テ
スト制御部2,メッセージ通信制御部3,アクタ部4,
テストハンドラ5,テストシナリオ6,テストアイテム
リスト7,メッセージ送受表示GUI8,オブジェクト
9,メッセージハンドラ10,プロセス対応マップ1
1,オブジェクト対応マップ12,メッセージハンドラ
キュー13,プロセスメッセージハンドラ14,プロセ
ス送信用メッセージキュー15,プロセス受信用メッセ
ージキュー16,共有メモリ17,メッセージキュー1
8,メッセージマップ19は、それぞれ本実施形態のテ
スト制御部22,メッセージ通信制御部23,アクタ部
24,テストハンドラ25,テストシナリオ26,テス
トアイテムリスト27,メッセージ送受表示GUI2
8,オブジェクト29,メッセージハンドラ30,プロ
セス対応マップ31,オブジェクト対応マップ32,メ
ッセージハンドラキュー33,プロセスメッセージハン
ドラ34,プロセス送信用メッセージキュー35,プロ
セス受信用メッセージキュー36,共有メモリ37,メ
ッセージキュー38,メッセージマップ39に対応す
る。
【0239】この一般化構成の場合も、上記と同様なメ
ッセージ通信テストを実現させることができる。
【0240】(発明の第4の実施の形態)第2の実施形
態では、本発明に係るオブジェクト指向メッセージ通信
テスト装置においては、テストシナリオ26に従う場合
と、テストアイテムリスト27を利用しメッセージ送受
表示GUI28から直接指示入力する場合とについてテ
ストが可能である旨説明している。このうち、第2,第
3実施形態においては、テストシナリオ26に従う場合
を説明した。本実施形態では、第3の実施形態と同様な
構成において、テストアイテムリスト27を利用しメッ
セージ送受表示GUI28から直接テスト指示入力する
場合について説明する。
【0241】本実施形態では、図28で示した第2の実
施実施形態のテスト環境を含むマルチプロセス/マルチ
スレッドシステムの構造を示す計算機システムを利用す
る。
【0242】このような構成を備えたオブジェクト指向
メッセージ通信テスト装置においては、まずシステム生
成時の処理により、テストシナリオ26からオブジェク
トおよびメッセージを抽出したテストアイテムリスト2
7が作成される。さらに、本実施形態では、このテスト
アイテムリスト27より任意のオブジェクトおよびメッ
セージが選択されてテストが実行されるようになってい
る。
【0243】図42は本発明の第4の実施形態のオブジ
ェクト指向メッセージ通信テスト装置におけるテストシ
ナリオを示す図である。ここで、図42(a)はテスト
シナリオ26の一般フォーマットであり、同図(b)は
本実施例における具体例としてのテストシナリオ26で
ある。
【0244】システム生成時に、テストハンドラ25が
生成されると、同テストハンドラ25の処理によりテス
トシナリオ26の[オブジェクト名対応]の欄から送信
元オブジェクトおよび送信先オブジェクトが、[メッセ
ージ名対応]の欄からメッセージの候補が抽出される。
【0245】本実施形態の状況では、図42(b)に示
すように、オブジェクトの候補として“テストハンド
ラ”、“オブジェクトA”、“オブジェクトB”、“オ
ブジェクトC”が、メッセージの候補として“メッセー
ジA”、“メッセージB”、“メッセージC”、“メッ
セージX”が抽出される。
【0246】次に、テストシナリオ26の[オブジェク
ト名対応]の欄からオブジェクトIDとオブジェクト名
の対応が、[メッセージ名対応]の欄からメッセージI
Dとメッセージ名の対応が識別される。これらの情報に
基づき、テストハンドラ25によって、テストシナリオ
26からテストアイテムリスト27が作成される。な
お、テストアイテムリスト27とは、送信元オブジェク
トおよび送信先オブジェクトの候補となるオブジェクト
を列挙したオブジェクトリストと、送信メッセージの候
補となるメッセージを列挙したメッセージリストとから
なる。
【0247】図43は本実施形態におけるオブジェクト
リストの構成例を示す図である。ここで、オブジェクト
リストは、図43(a)に示すフォーマットの情報であ
り、同図(b)は本実施例における具体例を示す。
【0248】図44は本実施形態におけるメッセージリ
ストの構成例を示す図である。メッセージリストは、図
44(a)に示すフォーマットの情報であり、同図
(b)は本実施例における具体例を示す。
【0249】また、図45はメッセージ送受表示GUI
によって表示されるメッセージ通信テスト環境画面を示
す図であり、図24と同一部分には同一符号を付して詳
細説明を省略する。
【0250】オブジェクトリスト及びメッセージリスト
が上記のようになっている結果、メッセージ送受表示G
UI28によって、図45に示すメッセージ通信テスト
環境のオブジェクトおよびメッセージ一覧113に、送
信元オブジェクト121、送信先オブジェクト122、
およびメッセージ123が表示されることになる。
【0251】ここで、図45に示されるメッセージ通信
テスト環境を用い、開発者が任意選択モードでテストを
行う場合を考える。
【0252】この場合、図45における送信元オブジェ
クト121を“テストハンドラ”とし、送信先オブジェ
クト122を“オブジェクトA”とし、送信メッセージ
123を“メッセージB”として選び送信ボタン124
を押して、テストを開始したことを想定する。
【0253】まず、図46(a)に示すテストハンドラ
25の送信メソッドにより、オブジェクトAにメッセー
ジBが送信される。この後、メッセージBがオブジェク
トAに到達するまでの動作は、既に示した実施形態と同
様であるので省略する。
【0254】図46は本実施形態における各メゾットの
例を示す図である。
【0255】また、図47は本実施形態のオブジェクト
A,Bのメッセージマップを示す図である。なお、メッ
セージマップの一般形は先の実施形態と同様であるので
省略する。
【0256】一方、テストハンドラ25から送信された
送信先であるオブジェクトAには、図47(a)に示す
ようなメッセージマップが用意されている。ここでオブ
ジェクトAには、メッセージBに対応するメソッドBが
存在する。
【0257】したがって、図46(b)に示すメソッド
が実行されることになる。図46(b)のメソッドによ
り、オブジェクトAからオブジェクトBにメッセージX
が送信される。
【0258】以降、オブジェクトBのメッセージマップ
に基づき、オブジェクトBのメゾットX(図46
(c))が実行され、テストが継続されていくことにな
る。
【0259】上述したように、本発明の実施の形態に係
るオブジェクト指向メッセージ通信テスト装置は、第
2,第3の実施形態と同様な構成を設け、テストシナリ
オ26のシナリオ情報からテストアイテムリスト27を
抽出し、これを用いて任意の組み合わせでテストを行い
得るようにしたので、テスト開始段階において開発者が
動的にシナリオを組み立てることができ、より効率的な
メッセージ通信テストを実施することができる。
【0260】すなわちオブジェクトおよびメッセージ一
覧113に示される各要素を、テストシステム立ち上げ
後に自在に組み替えてテストを実行することが可能にな
る。
【0261】以上の第2〜第4実施形態に説明したオブ
ジェクト指向メッセージ通信テスト装置を利用すること
により、オブジェクトに割り当てられるプロセスが変更
されても柔軟に対応することが可能であり、テストプロ
グラムを変更することなしにテストシナリオを柔軟に修
正・追加することが可能であり、シナリオに沿ってテス
トを行うだけでなく任意のオブジェクトに任意のメッセ
ージを送信することも可能となる。
【0262】なお、本発明は、上記各実施の形態に限定
されるものでなく、その要旨を逸脱しない範囲で種々に
変形することが可能である。
【0263】第2〜第4の実施形態は、第1の実施形態
のシステムをテストする場合に対応して本発明を適用し
たが、本発明の適用範囲はこれに限られるものではな
い。板発明は、第1の実施形態のシステム以外のオブジ
ェクト指向プログラムに対しても適宜変形して適用させ
ることができる。
【0264】また、実施形態では、同一計算機内に各プ
ロセスを生成する場合について説明したが、本発明は同
一計算機内にてメッセージ送信テストを実行する場合に
限られるものではない。例えばLAN等のネットワーク
上の複数計算機に跨って各プロセスを設け、データ伝送
路を介するメッセージ送信テストを実行するようにして
もよい。
【0265】なお、実施形態に説明した装置は、記憶媒
体に格納したプログラムをコンピュータに読み込ませる
ことで実現させることができる。
【0266】ここで本発明における記憶媒体としては、
磁気ディスク、フロッピーディスク、ハードディスク、
光ディスク(CD−ROM、CD−R、DVD等)、光
磁気ディスク(MO等)、半導体メモリ等、プログラム
を記憶でき、かつコンピュータが読み取り可能な記憶媒
体であれば、その記憶形式は何れの形態であってもよ
い。
【0267】また、記憶媒体からコンピュータにインス
トールされたプログラムの指示に基づきコンピュータ上
で稼働しているOS(オペレーティングシステム)や、
データベース管理ソフト、ネットワークソフト等のMW
(ミドルウェア)等が本実施形態を実現するための各処
理の一部を実行してもよい。
【0268】さらに、本発明における記憶媒体は、コン
ピュータと独立した媒体に限らず、LANやインターネ
ット等により伝送されたプログラムをダウンロードして
記憶又は一時記憶した記憶媒体も含まれる。
【0269】また、記憶媒体は1つに限らず、複数の媒
体から本実施形態における処理が実行される場合も本発
明における記憶媒体に含まれ、媒体構成は何らの構成で
あってもよい。
【0270】なお、本発明におけるコンピュータは、記
憶媒体に記憶されたプログラムに基づき、本実施形態に
おける各処理を実行するものであって、パソコン等の1
つからなる装置、複数の装置がネットワーク接続された
システム等の何れの構成であってもよい。
【0271】また、本発明におけるコンピュータとは、
パソコンに限らず、情報処理機器に含まれる演算処理装
置、マイコン等も含み、プログラムによって本発明の機
能を実現することが可能な機器、装置を総称している。
【0272】
【発明の効果】以上詳記したように本発明によれば、テ
ストシナリオから情報を抽出し任意選択モード用のテス
ト情報を作成するようにしたので、開発したオブジェク
トをテストするためのテストシナリオを柔軟に選択・変
更でき、ひいてはシステム開発途上時のオブジェクトの
テストを効率的に行い、システムを効率的に開発できる
オブジェクト指向メッセージ通信テスト装置及び記憶媒
体を提供することができる。
【0273】また、本発明によれば、未作成のオブジェ
クトの通信先をテストハンドラに割り当てるようにした
ので、テスト対象のオブジェクトからテスト対象外のオ
ブジェクトへのメッセージ通信があるような場合でもテ
ストプログラムを続行可能とし、ひいてはシステム開発
途上時のオブジェクトのテストを効率的に行い、システ
ムを効率的に開発できるオブジェクト指向メッセージ通
信テスト装置及び記憶媒体を提供することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態における計算機シス
テムの一例を示す構成図。
【図2】プロセス対応マップの構成例を示す図。
【図3】オブジェクト対応マップの構成例を示す図。
【図4】各プロセスにおけるアクタ部の詳細構成例を示
すブロック図。
【図5】メッセージマップの構成例を示す図。
【図6】各プロセスにおけるメッセージ通信部の詳細構
成例を示すブロック図。
【図7】メッセージハンドラスレッドによるメッセージ
通信処理の様子を示す流れ図。
【図8】オブジェクト29−1のメソッドm1の内容例
を示す図。
【図9】アクタ部のオブジェクトスレッドによるメッセ
ージ通信処理を示す図。
【図10】他のプロセスから受信したメッセージがプロ
セスメッセージハンドラにより処理される様子を示す流
れ図。
【図11】本発明の第2の実施の形態に係るオブジェク
ト指向メッセージ通信テスト装置の一例を示す構成図。
【図12】同実施形態のオブジェクト指向メッセージ通
信テスト装置におけるメッセージ通信制御部の詳細構成
例を示すブロック図。
【図13】同実施形態のオブジェクト指向メッセージ通
信テスト装置におけるテスト制御部並びにアクタ部の詳
細構成例を示すブロック図。
【図14】テストシナリオの内容例を示す図。
【図15】同実施形態におけるプロセス対応マップの構
成を示す図。
【図16】同実施形態におけるオブジェクト対応マップ
の構成を示す図。
【図17】同実施形態におけるメッセージマップの構成
を示す図。
【図18】同実施形態におけるシステム起動の際の立ち
上げ処理を説明する第1の図。
【図19】同実施形態におけるシステム起動の際の立ち
上げ処理を説明する第2の図。
【図20】同実施形態におけるメッセージハンドラスレ
ッドメッセージ通信の動作を示す流れ図。
【図21】同実施形態におけるプロセスメッセージハン
ドラスレッドメッセージ通信の動作を示す流れ図。
【図22】同実施形態におけるテストハンドラスレッド
メッセージ通信の動作を示す流れ図。
【図23】同実施形態におけるオブジェクトスレッドメ
ッセージ通信の動作を示す流れ図。
【図24】メッセージ送受表示GUIによって表示され
るメッセージ通信テスト環境画面を示す図。
【図25】同実施形態のテストハンドラあるいはオブジ
ェクトに対応する各メゾット内容例を示す図。
【図26】システム停止時の処理を示す第1の流れ図。
【図27】システム停止時の処理を示す第2の流れ図。
【図28】本発明の第3の実施の形態に係るオブジェク
ト指向メッセージ通信テスト装置の一例を示す構成図。
【図29】同実施形態のオブジェクト指向メッセージ通
信テスト装置におけるメッセージ通信制御部の詳細構成
例を示すブロック図。
【図30】同実施形態のオブジェクト指向メッセージ通
信テスト装置におけるテスト制御部並びにアクタ部の詳
細構成例を示すブロック図。
【図31】同実施形態のテストハンドラあるいはオブジ
ェクトに対応する各メゾット内容例を示す図。
【図32】同実施形態におけるプロセス対応マップの構
成を示す図。
【図33】同実施形態におけるオブジェクト対応マップ
の構成を示す図。
【図34】同実施形態におけるメッセージマップの構成
を示す図。
【図35】オブジェクト指向メッセージ通信テスト装置
の一般的な構成例を示すブロック図。
【図36】図35のオブジェクト指向メッセージ通信テ
スト装置におけるプロセス#1のメッセージ通信制御部
の詳細構成例を示すブロック図。
【図37】図35のオブジェクト指向メッセージ通信テ
スト装置におけるプロセス#2のメッセージ通信制御部
の詳細構成例を示すブロック図。
【図38】図35のオブジェクト指向メッセージ通信テ
スト装置におけるプロセス#nのメッセージ通信制御部
の詳細構成例を示すブロック図。
【図39】図35のオブジェクト指向メッセージ通信テ
スト装置におけるプロセス#1のテスト制御部の詳細構
成例を示すブロック図。
【図40】図35のオブジェクト指向メッセージ通信テ
スト装置におけるプロセス#2のアクタ部の詳細構成例
を示すブロック図。
【図41】図35のオブジェクト指向メッセージ通信テ
スト装置におけるプロセス#nのアクタ部の詳細構成例
を示すブロック図。
【図42】本発明の第4の実施形態のオブジェクト指向
メッセージ通信テスト装置におけるテストシナリオを示
す図。
【図43】同実施形態におけるオブジェクトリストの構
成例を示す図。
【図44】同実施形態におけるメッセージリストの構成
例を示す図。
【図45】メッセージ送受表示GUIによって表示され
るメッセージ通信テスト環境画面を示す図。
【図46】同実施形態における各メゾットの例を示す
図。
【図47】同実施形態のオブジェクトA,Bのメッセー
ジマップを示す図。
【図48】メッセージ通信を行う場合における従来のプ
ログラム記述方法の例を示す図。
【図49】開発途中におけるオブジェクト間通信テスト
の様子を示す図。
【図50】実行されたテストプログラムが途中で異常終
了してしまう場合を示す図。
【符号の説明】
1−1〜1−3…プロセス#1〜#n 2…テスト制御部 3…メッセージ通信制御部 4…アクタ部 5…テストハンドラ 6…テストシナリオ 7…テストアイテムリスト 8…メッセージ送受表示GUI 9−1〜9−4…オブジェクトA〜F 10−1〜10−3…メッセージハンドラP1〜Pn 11…プロセス対応マップ 12−1〜12−3…オブジェクト対応マップP1〜P
n 13−1〜13−3…メッセージハンドラキューP1〜
P3 14−1〜14−6…プロセスメッセージハンドラP1
−P2〜Pn−Pn−1 15−1〜15−6…プロセス送信用メッセージキュー
P1−P2〜Pn−Pn−1 16−1〜16−6…プロセス受信用メッセージキュー
P2−P1〜Pn−1−Pn 17−1〜17−12…共有メモリP1−P2〜Pn−
Pn−1−Pn 18−0〜18−4…メッセージキューA〜F 19−1〜19−4…メッセージマップA〜F 20…計算機システム 20′,20”…オブジェクト指向メッセージ通信テス
ト装置 21−1〜21−2…プロセス#1〜#2 22…テスト制御部 23…メッセージ通信制御部 24…アクタ部 25…テストハンドラ 26…テストシナリオ 27…テストアイテムリスト 28…メッセージ送受表示GUI 29−1〜29−2…オブジェクトA〜B 30−1〜30−2…メッセージハンドラP1〜P2 31…プロセス対応マップ 32−1〜32−2…オブジェクト対応マップP1〜P
2 33−1〜33−2…メッセージハンドラキューP1〜
P2 34−1〜34−2…プロセスメッセージハンドラP1
−P2〜P2−P1 35−1〜35−2…プロセス送信用メッセージキュー
P1−P2〜P2−P1 36−1〜36−2…プロセス受信用メッセージキュー
P2−P1〜P1−P2 37−1〜37−2…共有メモリP1−P2〜P2−P
1 38−0〜38−2…メッセージキューA〜B 39−1〜39−2…メッセージマップA〜B 101…論理オブジェクトID 102…動作時オブジェクトID

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 マルチプロセス機能を有するオペレーテ
    ィングシステムにて実行される一以上のプロセスを生成
    させ、かつ、データと手続きとをカプセル化した一以上
    のオブジェクトをプロセスが有するように、当該プロセ
    スを生成させるためのプログラムに対し、前記オブジェ
    クト間のメッセージ通信をテストするオブジェクト指向
    メッセージ通信テスト装置にあって、 テスト対象となる最初のオブジェクトにメッセージを送
    出するとともに、このテストにより何れかのオブジェク
    トから出力された送信メッセージの受取先が非生成状態
    である場合には、当該受取先に代えて前記送信メッセー
    ジを受信するメッセージ代理受信手段を備えたことを特
    徴とするオブジェクト指向メッセージ通信テスト装置。
  2. 【請求項2】 マルチプロセス機能を有するオペレーテ
    ィングシステムにて実行される一以上のプロセスを生成
    させ、かつ、データと手続きとをカプセル化した一以上
    のオブジェクトをプロセスが有するように、当該プロセ
    スを生成させるためのプログラムに対し、前記オブジェ
    クト間のメッセージ通信をテストするオブジェクト指向
    メッセージ通信テスト装置にあって、 送信元オブジェクト、送信先オブジェクト及びメッセー
    ジ種類の各情報を含む少なくとも一つのシナリオからな
    るテストシナリオを格納するテストシナリオ格納手段
    と、 前記テストシナリオから送信元オブジェクト、送信先オ
    ブジェクト及びメッセージ種類をテストアイテムとして
    抽出するテストアイテム抽出手段と、 前記シナリオの何れか若しくは前記テストアイテムの指
    定された組み合わせに基づき、メッセージ通信テストを
    実行するテスト実行手段とを備えたことを特徴とするオ
    ブジェクト指向メッセージ通信テスト装置。
  3. 【請求項3】 マルチプロセス機能を有するオペレーテ
    ィングシステムにて実行される一以上のプロセスを生成
    させ、かつ、データと手続きとをカプセル化した一以上
    のオブジェクトをプロセスが有するように、当該プロセ
    スを生成させるためのプログラムに対し、前記オブジェ
    クト間のメッセージ通信をテストするオブジェクト指向
    メッセージ通信テスト装置にあって、 送信元オブジェクト、送信先オブジェクト及びメッセー
    ジ種類の各情報を含む少なくとも一つのシナリオからな
    るテストシナリオを表示し、前記テストシナリオから抽
    出される送信元オブジェクト、送信先オブジェクト及び
    メッセージ種類を前記テストシナリオの表示とは別途に
    表示し、さらに、前記シナリオの何れか若しくは前記テ
    ストアイテムの指定された組み合わせを、メッセージ通
    信テストの内容として実行するよう入力させる実行ボタ
    ンを表示するとともに、前記テストアイテムの指定並び
    に前記実行ボタンからの入力を受け付けるメッセージ送
    受表示入力手段を備えたことを特徴とするオブジェクト
    指向メッセージ通信テスト装置。
  4. 【請求項4】 テスト対象となる最初のオブジェクトに
    メッセージを送出するとともに、このテストにより何れ
    かのオブジェクトから出力された送信メッセージの受取
    先が非生成状態である場合には、当該受取先に代えて前
    記送信メッセージを受信するメッセージ代理受信手段を
    備えたことを特徴とする請求項2又は3記載のオブジェ
    クト指向メッセージ通信テスト装置。
  5. 【請求項5】 前記プロセスは、自プロセス又は他プロ
    セスのオブジェクトが出力するオブジェクト宛のメッセ
    ージを受け取るとともに、そのメッセージの宛先が自プ
    ロセス内であるときはその宛先オブジェクトに前記メッ
    セージを引き渡し、前記宛先が他のプロセス内となると
    きは、当該他のプロセスに前記メッセージを引き渡すメ
    ッセージ通信制御手段を備えたことを特徴とする請求項
    1乃至4のうち何れか1項に記載のオブジェクト指向メ
    ッセージ通信テスト装置。
  6. 【請求項6】 前記メッセージ通信制御手段は、各オブ
    ジェクトがどのプロセスに属するかの情報を記録するプ
    ロセス対応記録手段と、前記プロセス対応記録手段を検
    索し、受け取ったメッセージの宛先オブジェクトがどの
    プロセスに属するを判定する判定手段とを備えたことを
    特徴とする請求項5記載のオブジェクト指向メッセージ
    通信テスト装置。
  7. 【請求項7】 前記メッセージ通信制御手段は、各オブ
    ジェクトが元々有する論理的なオブジェクト識別情報
    と、前記オペレーティングシステムに生成されたときに
    各オブジェクトに付された動作時オブジェクト識別情報
    との対応情報を記録するオブジェクト対応記録手段を備
    えるとともに、前記メッセージの宛先情報として前記論
    理的なオブジェクト情報のみが付されているときであっ
    ても、前記オブジェクト対応記録手段を検索して動作時
    オブジェクト識別情報を取得することにより、宛先オブ
    ジェクトに前記メッセージを引き渡し可能とすることを
    特徴とする請求項5又は6記載のオブジェクト指向メッ
    セージ通信テスト装置。
  8. 【請求項8】 マルチプロセス機能を有するオペレーテ
    ィングシステムにて実行される一以上のプロセスを生成
    させ、かつ、データと手続きとをカプセル化した一以上
    のオブジェクトをプロセスが有するように、当該プロセ
    スを生成させるためのプログラムに対し、前記オブジェ
    クト間のメッセージ通信をテストさせるテストプログラ
    ムであって、 テスト対象となる最初のオブジェクトにメッセージを送
    出させるとともに、このテストにより何れかのオブジェ
    クトから出力された送信メッセージの受取先が非生成状
    態である場合には、当該受取先に代えて前記送信メッセ
    ージを受信させるメッセージ代理受信手段として機能す
    るテストプログラムを記憶したコンピュータ読み取り可
    能な記憶媒体。
  9. 【請求項9】 マルチプロセス機能を有するオペレーテ
    ィングシステムにて実行される一以上のプロセスを生成
    させ、かつ、データと手続きとをカプセル化した一以上
    のオブジェクトをプロセスが有するように、当該プロセ
    スを生成させるためのプログラムに対し、前記オブジェ
    クト間のメッセージ通信をテストさせるテストプログラ
    ムであって、 送信元オブジェクト、送信先オブジェクト及びメッセー
    ジ種類の各情報を含む少なくとも一つのシナリオからな
    るテストシナリオから送信元オブジェクト、送信先オブ
    ジェクト及びメッセージ種類をテストアイテムとして抽
    出させるテストアイテム抽出手段と、 前記シナリオの何れか若しくは前記テストアイテムの指
    定された組み合わせに基づき、メッセージ通信テストを
    実行させるテスト実行手段として機能するテストプログ
    ラムを記憶したコンピュータ読み取り可能な記憶媒体。
  10. 【請求項10】 マルチプロセス機能を有するオペレー
    ティングシステムにて実行される一以上のプロセスを生
    成させ、かつ、データと手続きとをカプセル化した一以
    上のオブジェクトをプロセスが有するように、当該プロ
    セスを生成させるためのプログラムに対し、前記オブジ
    ェクト間のメッセージ通信をテストさせるテストプログ
    ラムであって、 送信元オブジェクト、送信先オブジェクト及びメッセー
    ジ種類の各情報を含む少なくとも一つのシナリオからな
    るテストシナリオを表示させ、前記テストシナリオから
    抽出される送信元オブジェクト、送信先オブジェクト及
    びメッセージ種類を前記テストシナリオの表示とは別途
    に表示させ、さらに、前記シナリオの何れか若しくは前
    記テストアイテムの指定された組み合わせを、メッセー
    ジ通信テストの内容として実行させるよう入力させる実
    行ボタンを表示させるとともに、前記テストアイテムの
    指定並びに前記実行ボタンからの入力を受け付けさせる
    メッセージ送受表示入力手段として機能するテストプロ
    グラムを記憶したコンピュータ読み取り可能な記憶媒
    体。
JP06144899A 1999-03-09 1999-03-09 オブジェクト指向メッセージ通信テスト装置及び記憶媒体 Expired - Fee Related JP3791876B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP06144899A JP3791876B2 (ja) 1999-03-09 1999-03-09 オブジェクト指向メッセージ通信テスト装置及び記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP06144899A JP3791876B2 (ja) 1999-03-09 1999-03-09 オブジェクト指向メッセージ通信テスト装置及び記憶媒体

Publications (2)

Publication Number Publication Date
JP2000259450A true JP2000259450A (ja) 2000-09-22
JP3791876B2 JP3791876B2 (ja) 2006-06-28

Family

ID=13171363

Family Applications (1)

Application Number Title Priority Date Filing Date
JP06144899A Expired - Fee Related JP3791876B2 (ja) 1999-03-09 1999-03-09 オブジェクト指向メッセージ通信テスト装置及び記憶媒体

Country Status (1)

Country Link
JP (1) JP3791876B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006331023A (ja) * 2005-05-25 2006-12-07 Mitsubishi Electric Corp オブジェクト再構成試験装置
JP2007026306A (ja) * 2005-07-20 2007-02-01 Nec Corp プログラムテスト装置、方法、及び、プログラム
JP2021118961A (ja) * 2021-05-19 2021-08-12 株式会社ユニバーサルエンターテインメント 遊技機
JP2022177959A (ja) * 2021-05-19 2022-12-02 株式会社ユニバーサルエンターテインメント 遊技機
JP2022177956A (ja) * 2021-05-19 2022-12-02 株式会社ユニバーサルエンターテインメント 遊技機
JP2022177957A (ja) * 2021-05-19 2022-12-02 株式会社ユニバーサルエンターテインメント 遊技機

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006331023A (ja) * 2005-05-25 2006-12-07 Mitsubishi Electric Corp オブジェクト再構成試験装置
JP2007026306A (ja) * 2005-07-20 2007-02-01 Nec Corp プログラムテスト装置、方法、及び、プログラム
JP4696744B2 (ja) * 2005-07-20 2011-06-08 日本電気株式会社 プログラムテスト装置、方法、及び、プログラム
JP2021118961A (ja) * 2021-05-19 2021-08-12 株式会社ユニバーサルエンターテインメント 遊技機
JP7049509B2 (ja) 2021-05-19 2022-04-06 株式会社ユニバーサルエンターテインメント 遊技機
JP2022177959A (ja) * 2021-05-19 2022-12-02 株式会社ユニバーサルエンターテインメント 遊技機
JP2022177956A (ja) * 2021-05-19 2022-12-02 株式会社ユニバーサルエンターテインメント 遊技機
JP2022177957A (ja) * 2021-05-19 2022-12-02 株式会社ユニバーサルエンターテインメント 遊技機
JP7360193B2 (ja) 2021-05-19 2023-10-12 株式会社ユニバーサルエンターテインメント 遊技機
JP7360194B2 (ja) 2021-05-19 2023-10-12 株式会社ユニバーサルエンターテインメント 遊技機
JP7360195B2 (ja) 2021-05-19 2023-10-12 株式会社ユニバーサルエンターテインメント 遊技機

Also Published As

Publication number Publication date
JP3791876B2 (ja) 2006-06-28

Similar Documents

Publication Publication Date Title
Hunter et al. Java servlet programming: Help for server side Java developers
Kim APIs for real-time distributed object programming
US7650397B2 (en) Plug-in configuration manager
US6640255B1 (en) Method and apparatus for generation and installation of distributed objects on a distributed object system
US8521359B1 (en) Application-independent and component-isolated system and system of systems framework
KR100301274B1 (ko) 컴퓨터시스템및프로그램제품전송방법
CA2539433C (en) Systems and methods for dynamically linking application software into a running operating system kernel
EP0859314A2 (en) Distributed make methods, apparatus, and computer program products
JPH08286926A (ja) 一般フロントエンド、及び動的にロード可能なバックエンドを有するコンパイラ
US20040138847A1 (en) Stress testing at low cost through parallel execution of unit tests
CN114756357B (zh) 一种基于jvm的非阻塞分布式计划任务调度方法
Cicirelli et al. Seamless development in Java of distributed real-time systems using actors
JP3791876B2 (ja) オブジェクト指向メッセージ通信テスト装置及び記憶媒体
JPH09114693A (ja) プログラム開発支援装置及びプログラム実行装置
Karlsen An Adaptive Transactional System–Framework and Service Synchronization
US7167894B1 (en) Self-contained tasks
Bardaro et al. From models to software through automatic transformations: An AADL to ROS end-to-end toolchain
Wood et al. Triton: a domain specific language for cyber-physical systems
Tauber et al. Compiling IOA without global synchronization
CN110716748B (zh) 业务处理方法、装置、计算机可读介质及电子设备
JP2000155692A (ja) 計算機システム及びネットワークシステム並びに記録媒体
WO2007144891A1 (en) A method for the distribution of software processes to a plurality of computers
Hendrickx A generic way to production machinery context of CIMOSA
JPH0749819A (ja) サーバ/クライアント方式の通信方法
Yilmaz Scheduling Extensions

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20050428

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20050620

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051025

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051227

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060313

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060403

LAPS Cancellation because of no payment of annual fees