JP3271682B2 - 入力イベント記録/再生装置 - Google Patents
入力イベント記録/再生装置Info
- Publication number
- JP3271682B2 JP3271682B2 JP04771994A JP4771994A JP3271682B2 JP 3271682 B2 JP3271682 B2 JP 3271682B2 JP 04771994 A JP04771994 A JP 04771994A JP 4771994 A JP4771994 A JP 4771994A JP 3271682 B2 JP3271682 B2 JP 3271682B2
- Authority
- JP
- Japan
- Prior art keywords
- event
- input
- message
- input event
- recording
- 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.)
- Expired - Fee Related
Links
Landscapes
- Debugging And Monitoring (AREA)
Description
【0001】
【産業上の利用分野】本発明は入力イベント記録/再生
装置に関し、特に、マウスやキーボード等の入力デバイ
スの操作を人間に代わって計算機が行なうようにしたも
のであり、GUIを有するアプリケーション・プログラ
ムの自動テストや自動デモンストレーション等に用いて
好適なものである。
装置に関し、特に、マウスやキーボード等の入力デバイ
スの操作を人間に代わって計算機が行なうようにしたも
のであり、GUIを有するアプリケーション・プログラ
ムの自動テストや自動デモンストレーション等に用いて
好適なものである。
【0002】
【従来の技術】近年におけるCPUの性能の飛躍的な向
上や、高精度なビット・マップ・ディスプレイの登場に
伴い、アプリケーション・プログラムと人間との間の対
話を取り扱うユーザ・インタフェースが、キャラクタベ
ースのものからより操作性に優れたグラフィックベース
のもの(GUI)に移行しつつある。
上や、高精度なビット・マップ・ディスプレイの登場に
伴い、アプリケーション・プログラムと人間との間の対
話を取り扱うユーザ・インタフェースが、キャラクタベ
ースのものからより操作性に優れたグラフィックベース
のもの(GUI)に移行しつつある。
【0003】特に、Xウィンドウ・システムに代表され
る標準的なウィンドウ・システムが普及するに従い、ア
プリケーション・プログラムにおけるGUIの占める重
要性はますます高くなってきている。このため、アプリ
ケーション・プログラム全体に対するユーザの評価もそ
のGUIの評価によって左右されるところが少なくな
い。
る標準的なウィンドウ・システムが普及するに従い、ア
プリケーション・プログラムにおけるGUIの占める重
要性はますます高くなってきている。このため、アプリ
ケーション・プログラム全体に対するユーザの評価もそ
のGUIの評価によって左右されるところが少なくな
い。
【0004】ところが、最近では、GUIの機能がより
高度になるに伴って、GUIそのもののテストや、GU
Iを介して行なうアプリケーション・プログラムのテス
トなどが複雑になってしまう傾向にある。
高度になるに伴って、GUIそのもののテストや、GU
Iを介して行なうアプリケーション・プログラムのテス
トなどが複雑になってしまう傾向にある。
【0005】すなわち、アプリケーション・プログラム
のテスト中に何らかのエラーが発生した場合には、その
原因を特定するために、そのときのGUIの状態と、エ
ラーを引き起こした入力イベント列(キーボードやマウ
ス等の入力デバイスの操作)との詳細な内容を知る必要
がある。しかし、オペレータの記憶が曖昧であると、エ
ラーが発生するまでの入力イベントの履歴やエラーを引
き起こした入力イベントの詳細な内容が分からないの
で、エラーの原因を究明することが非常に困難なことが
多かった。
のテスト中に何らかのエラーが発生した場合には、その
原因を特定するために、そのときのGUIの状態と、エ
ラーを引き起こした入力イベント列(キーボードやマウ
ス等の入力デバイスの操作)との詳細な内容を知る必要
がある。しかし、オペレータの記憶が曖昧であると、エ
ラーが発生するまでの入力イベントの履歴やエラーを引
き起こした入力イベントの詳細な内容が分からないの
で、エラーの原因を究明することが非常に困難なことが
多かった。
【0006】例えば、前回行なったイベント入力操作を
そのまま同じように再現して行なうリグレッション・テ
ストを行なう際には、そのテストの趣旨から、前回のイ
ベント入力操作を正確に再現する必要があるが、オペレ
ータがキーボードやマウス等を操作することによってこ
れを正確に再現することは非常に困難であった。
そのまま同じように再現して行なうリグレッション・テ
ストを行なう際には、そのテストの趣旨から、前回のイ
ベント入力操作を正確に再現する必要があるが、オペレ
ータがキーボードやマウス等を操作することによってこ
れを正確に再現することは非常に困難であった。
【0007】つまり、オペレータがキーボードやマウス
等を操作することによって前回と同じイベント入力操作
を再現しようとすると、カーソルの位置が前回の位置と
は微妙にずれたり、入力イベントの発生タイミングが微
妙にずれたりしてしまうことがある。このような場合に
は、複数のウィンドウの重なり具合やアプリケーション
・プログラムの挙動が前回とは異なってしまい、テスト
の結果に大きく影響を与えてしまうことがあった。
等を操作することによって前回と同じイベント入力操作
を再現しようとすると、カーソルの位置が前回の位置と
は微妙にずれたり、入力イベントの発生タイミングが微
妙にずれたりしてしまうことがある。このような場合に
は、複数のウィンドウの重なり具合やアプリケーション
・プログラムの挙動が前回とは異なってしまい、テスト
の結果に大きく影響を与えてしまうことがあった。
【0008】そこで、以上のような問題を解決するため
に、キーボードやマウス等の操作時に、その操作によっ
て発生する入力イベント情報をファイルに記憶してお
く。その後、この入力イベント情報を上記ファイルから
必要な時点で読み出し、入力イベント・メッセージを生
成する。
に、キーボードやマウス等の操作時に、その操作によっ
て発生する入力イベント情報をファイルに記憶してお
く。その後、この入力イベント情報を上記ファイルから
必要な時点で読み出し、入力イベント・メッセージを生
成する。
【0009】そして、前回入力デバイスから与えられた
のと同じように入力イベント・メッセージをアプリケー
ション・プログラムに与えることにより、オペレータに
よるキーボードやマウスの操作に代わって計算機が正確
にイベント入力操作を実現できるようにした入力イベン
ト記録/再生装置が考案されている。
のと同じように入力イベント・メッセージをアプリケー
ション・プログラムに与えることにより、オペレータに
よるキーボードやマウスの操作に代わって計算機が正確
にイベント入力操作を実現できるようにした入力イベン
ト記録/再生装置が考案されている。
【0010】ここで、上述の入力イベント記録/再生装
置における入力イベントの記録および再生の動作の様子
を、図5および図6に示す。これらの図中に示した構成
のうち、Xサーバ21と第1〜第nのXクライアント2
2、23、24とによりXウィンドウ・システムが構築
されている。
置における入力イベントの記録および再生の動作の様子
を、図5および図6に示す。これらの図中に示した構成
のうち、Xサーバ21と第1〜第nのXクライアント2
2、23、24とによりXウィンドウ・システムが構築
されている。
【0011】上記Xサーバ21は、マウス27やキーボ
ード28などの入力デバイスの操作によって発生される
入力イベント・メッセージに従って、各Xクライアント
22、23、24の制御を行なう他、ディスプレイ装置
などの表示手段29におけるウィンドウの表示制御を行
なう制御手段である。なお、これらの制御は、基本手段
21a により行なわれるようになされている。
ード28などの入力デバイスの操作によって発生される
入力イベント・メッセージに従って、各Xクライアント
22、23、24の制御を行なう他、ディスプレイ装置
などの表示手段29におけるウィンドウの表示制御を行
なう制御手段である。なお、これらの制御は、基本手段
21a により行なわれるようになされている。
【0012】また、上記第1〜第nのXクライアント2
2、23、24は、Xサーバ21から与えられる上記入
力イベント・メッセージに従って、例えば、時計機能、
カレンダ機能などの様々な機能を実行するための各種ア
プリケーション・プログラムである。
2、23、24は、Xサーバ21から与えられる上記入
力イベント・メッセージに従って、例えば、時計機能、
カレンダ機能などの様々な機能を実行するための各種ア
プリケーション・プログラムである。
【0013】図5に示したように、このようなXウィン
ドウ・システムでは、まず、オペレータがマウス27や
キーボード28を操作して、表示手段29にそのGUI
が表示されている時計、カレンダ等のアプリケーション
・プログラムに対して入力イベントを発生させると、そ
の操作に対応した入力イベント・メッセージがXサーバ
を介して対象となるXクライアント22、23、24に
与えられる。そして、各Xクライアント22、23、2
4では機能を実行し、必要に応じてその結果をXサーバ
21を介して表示手段29に表示する。
ドウ・システムでは、まず、オペレータがマウス27や
キーボード28を操作して、表示手段29にそのGUI
が表示されている時計、カレンダ等のアプリケーション
・プログラムに対して入力イベントを発生させると、そ
の操作に対応した入力イベント・メッセージがXサーバ
を介して対象となるXクライアント22、23、24に
与えられる。そして、各Xクライアント22、23、2
4では機能を実行し、必要に応じてその結果をXサーバ
21を介して表示手段29に表示する。
【0014】また、上記マウス27やキーボード28の
操作によりXサーバ21から発生された入力イベント・
メッセージは、イベント・メッセージ記録手段25に与
えられ、イベント・スクリプト・ファイル記憶部26に
格納される。これにより、マウス27やキーボード28
をオペレータが繰り返して操作すると、その繰り返し操
作に対応する一連の入力イベント・メッセージが、イベ
ント・スクリプト・ファイル記憶部26に1つのファイ
ルとして格納される。
操作によりXサーバ21から発生された入力イベント・
メッセージは、イベント・メッセージ記録手段25に与
えられ、イベント・スクリプト・ファイル記憶部26に
格納される。これにより、マウス27やキーボード28
をオペレータが繰り返して操作すると、その繰り返し操
作に対応する一連の入力イベント・メッセージが、イベ
ント・スクリプト・ファイル記憶部26に1つのファイ
ルとして格納される。
【0015】一方、図6に示したように、上述のように
してイベント・スクリプト・ファイル記憶部26に格納
された入力イベント・メッセージの再生時には、まず、
イベント・スクリプト・ファイル記憶部26に格納され
ている一連の入力イベント情報が、イベント・メッセー
ジ再生手段30により順次読み出される。
してイベント・スクリプト・ファイル記憶部26に格納
された入力イベント・メッセージの再生時には、まず、
イベント・スクリプト・ファイル記憶部26に格納され
ている一連の入力イベント情報が、イベント・メッセー
ジ再生手段30により順次読み出される。
【0016】そして、イベント・メッセージ再生手段3
0では、読み出された入力イベント情報から入力イベン
ト・メッセージが生成され、特別な依頼方法により、X
サーバ21の基本手段21aに与えられる。Xサーバ2
1の基本手段21aでは依頼方法が通常形式でないこと
を判断し、拡張手段21bに上記入力イベント・メッセ
ージを引き渡す。
0では、読み出された入力イベント情報から入力イベン
ト・メッセージが生成され、特別な依頼方法により、X
サーバ21の基本手段21aに与えられる。Xサーバ2
1の基本手段21aでは依頼方法が通常形式でないこと
を判断し、拡張手段21bに上記入力イベント・メッセ
ージを引き渡す。
【0017】拡張手段21bでは、上記依頼方法に従っ
て上記入力イベント・メッセージを物理デバイスから直
接発生したのと同じ形式の入力イベント・メッセージと
して対応するXクライアント22、23、24に与え
る。上記特別な依頼方法が必要な理由は、通常の依頼方
法では、同一内容の入力イベント・メッセージであって
も、実際の物理デバイスから発生したものとそうでない
ものとをアプリケーション・プログラム側で区別できる
ように、Xサーバ21が所定の情報を入力イベント・メ
ッセージに付加するので、これを行なわせないようにX
サーバ21に指示するためである。上記付加情報は、例
えば、ネットワーク環境において、あるアプリケーショ
ン・プログラムが他のアプリケーション・プログラムか
ら送られてくる入力イベント・メッセージによって不本
意な制御をされてしまう不都合を防止するために利用す
ることを目的として用意されている。
て上記入力イベント・メッセージを物理デバイスから直
接発生したのと同じ形式の入力イベント・メッセージと
して対応するXクライアント22、23、24に与え
る。上記特別な依頼方法が必要な理由は、通常の依頼方
法では、同一内容の入力イベント・メッセージであって
も、実際の物理デバイスから発生したものとそうでない
ものとをアプリケーション・プログラム側で区別できる
ように、Xサーバ21が所定の情報を入力イベント・メ
ッセージに付加するので、これを行なわせないようにX
サーバ21に指示するためである。上記付加情報は、例
えば、ネットワーク環境において、あるアプリケーショ
ン・プログラムが他のアプリケーション・プログラムか
ら送られてくる入力イベント・メッセージによって不本
意な制御をされてしまう不都合を防止するために利用す
ることを目的として用意されている。
【0018】上記拡張手段21bにより変換された入力
イベント・メッセージは、各Xクライアント22、2
3、24に与えられる。そして、その入力イベント・メ
ッセージに従ってそれぞれのXクライアント22、2
3、24が処理を行ない、その機能が実行される。これ
により、入力イベント・メッセージの記録動作中にオペ
レータがマウス27やキーボード28等の入力デバイス
を操作して入力した命令が正確に再現される。
イベント・メッセージは、各Xクライアント22、2
3、24に与えられる。そして、その入力イベント・メ
ッセージに従ってそれぞれのXクライアント22、2
3、24が処理を行ない、その機能が実行される。これ
により、入力イベント・メッセージの記録動作中にオペ
レータがマウス27やキーボード28等の入力デバイス
を操作して入力した命令が正確に再現される。
【0019】
【発明が解決しようとする課題】上述したように、Xウ
ィンドウ・システムにおいて従来より利用されてきた入
力イベント記録/再生装置においては、Xサーバが特別
な拡張機能を備えていることが必要であった。このた
め、拡張機能を備えていない標準仕様のXサーバを用い
たXウィンドウ・システム環境では、入力イベント記録
/再生装置を利用することができなかった。
ィンドウ・システムにおいて従来より利用されてきた入
力イベント記録/再生装置においては、Xサーバが特別
な拡張機能を備えていることが必要であった。このた
め、拡張機能を備えていない標準仕様のXサーバを用い
たXウィンドウ・システム環境では、入力イベント記録
/再生装置を利用することができなかった。
【0020】また、上述の通り、Xウィンドウ・システ
ム環境で従来の入力イベント記録/再生装置を利用する
場合、Xサーバには特別な拡張機能を組み込む必要があ
るが、Xサーバにこの拡張機能を組み込むには多大の労
力と時間が必要であるため、作業効率が低下してしまう
という問題があった。特に、異なる複数のXウィンドウ
・システム環境を持つ組織では、入力イベント記録/再
生装置を広範囲で利用するためには、多数のXサーバに
対して拡張機能を組み込む作業が発生した。
ム環境で従来の入力イベント記録/再生装置を利用する
場合、Xサーバには特別な拡張機能を組み込む必要があ
るが、Xサーバにこの拡張機能を組み込むには多大の労
力と時間が必要であるため、作業効率が低下してしまう
という問題があった。特に、異なる複数のXウィンドウ
・システム環境を持つ組織では、入力イベント記録/再
生装置を広範囲で利用するためには、多数のXサーバに
対して拡張機能を組み込む作業が発生した。
【0021】さらに、従来の入力イベント記録/再生装
置では、入力イベントの記録や再生は、ディスプレイ装
置に表示されている全てのXクライアントを対象にして
行なわれ、個別のXクライアント毎の指定をすることが
できなかった。このため、不必要なイベント・メッセー
ジまで記録や再生の対象とされてしまい、そのための処
理時間が長くなったり、必要とされる記憶容量が多くな
ってしまうという問題があった。
置では、入力イベントの記録や再生は、ディスプレイ装
置に表示されている全てのXクライアントを対象にして
行なわれ、個別のXクライアント毎の指定をすることが
できなかった。このため、不必要なイベント・メッセー
ジまで記録や再生の対象とされてしまい、そのための処
理時間が長くなったり、必要とされる記憶容量が多くな
ってしまうという問題があった。
【0022】本発明は、このような問題を解決するため
になされたものであり、既存のシステム環境に手を加え
ることなく、特別な拡張機能が組み込まれていないシス
テムについても、入力イベントの記録や再生を行なえる
ようにするとともに、その記録や再生の処理を効率的に
行なえるようにすることを目的としている。
になされたものであり、既存のシステム環境に手を加え
ることなく、特別な拡張機能が組み込まれていないシス
テムについても、入力イベントの記録や再生を行なえる
ようにするとともに、その記録や再生の処理を効率的に
行なえるようにすることを目的としている。
【0023】
【課題を解決するための手段】本発明のイベント記録/
再生装置は、コンピュータのグラフィカル・ユーザ・イ
ンタフェース(GUI)上で動作するアプリケーション
・プログラムヘのイベント入力操作を人間に代わって実
行するようにした入力イベント記録/再生装置におい
て、上記GUIの操作を行うためのイベントメッセージ
を入力する入力手段と、上記入力手段から入力された入
力イベントメッセージを出力制御するサーバ手段と、上
記サーバ手段から出力された入力イベントメッセージを
アプリケーション・プログラムヘ受け渡し、入力イベン
ト列を出力するイベントメッセージ交換手段と、上記イ
ベントメッセージ交換手段から出力された入力イベント
列を記憶するイベント列記憶手段と、上記イベント列記
憶手段に記憶された入力イベント列を基にして再現イベ
ントメッセージを作成し、上記サーバ手段へ出力するイ
ベントメッセージ再生手段と、上記イベント列記憶手段
で記憶するべき入力イベントメッセージを選択する選択
手段とを備え、上記入力手段から入力された入力イベン
トメッセージのうち、上記選択手段は、上記アプリケー
ション・プログラムが複数存在する場合に、上記イベン
ト列記憶手段で入力イベントメッセージを記憶するべき
対象とするための少なくとも1つ以上のアプリケーショ
ン・プログラムを選択指定する機能、ユーザが指定した
開始点から終了点までの間の入力イベントメッセージを
選択する機能、或いはユーザが指定したメッセージの種
類を選択する機能のうち、少なくとも何れか1つの機能
で入力イベントメッセージを選択し、上記選択手段で選
択された入力イベントメッセージに対する入力イベント
列のみを上記イベント列記憶手段で記憶し、上記イベン
トメッセージ交換手段は、上記イベントメッセージ再生
手段で作成された再現イベントメッセージを上記サーバ
手段を介して受けた場合は、上記再現イベントメッセー
ジを上記アプリケーション・プログラムへ受け渡すこと
を特徴としている。
再生装置は、コンピュータのグラフィカル・ユーザ・イ
ンタフェース(GUI)上で動作するアプリケーション
・プログラムヘのイベント入力操作を人間に代わって実
行するようにした入力イベント記録/再生装置におい
て、上記GUIの操作を行うためのイベントメッセージ
を入力する入力手段と、上記入力手段から入力された入
力イベントメッセージを出力制御するサーバ手段と、上
記サーバ手段から出力された入力イベントメッセージを
アプリケーション・プログラムヘ受け渡し、入力イベン
ト列を出力するイベントメッセージ交換手段と、上記イ
ベントメッセージ交換手段から出力された入力イベント
列を記憶するイベント列記憶手段と、上記イベント列記
憶手段に記憶された入力イベント列を基にして再現イベ
ントメッセージを作成し、上記サーバ手段へ出力するイ
ベントメッセージ再生手段と、上記イベント列記憶手段
で記憶するべき入力イベントメッセージを選択する選択
手段とを備え、上記入力手段から入力された入力イベン
トメッセージのうち、上記選択手段は、上記アプリケー
ション・プログラムが複数存在する場合に、上記イベン
ト列記憶手段で入力イベントメッセージを記憶するべき
対象とするための少なくとも1つ以上のアプリケーショ
ン・プログラムを選択指定する機能、ユーザが指定した
開始点から終了点までの間の入力イベントメッセージを
選択する機能、或いはユーザが指定したメッセージの種
類を選択する機能のうち、少なくとも何れか1つの機能
で入力イベントメッセージを選択し、上記選択手段で選
択された入力イベントメッセージに対する入力イベント
列のみを上記イベント列記憶手段で記憶し、上記イベン
トメッセージ交換手段は、上記イベントメッセージ再生
手段で作成された再現イベントメッセージを上記サーバ
手段を介して受けた場合は、上記再現イベントメッセー
ジを上記アプリケーション・プログラムへ受け渡すこと
を特徴としている。
【0024】また、本発明の他の特徴とするところは、
上記イベントメッセージ再生手段で作成されたイベント
メッセージを上記入力デバイスの操作によって実際に再
生する入力イベントメッセージと同じ形式に変換する変
換手段を更に備え、上記イベントメッセージ交換手段
は、上記サーバ手段を介して再現イベントメッセージを
受けた場合は、上記変換手段で入力イベントメッセージ
に変換してから上記アプリケーション・プログラム受け
渡すことを特徴としている。
上記イベントメッセージ再生手段で作成されたイベント
メッセージを上記入力デバイスの操作によって実際に再
生する入力イベントメッセージと同じ形式に変換する変
換手段を更に備え、上記イベントメッセージ交換手段
は、上記サーバ手段を介して再現イベントメッセージを
受けた場合は、上記変換手段で入力イベントメッセージ
に変換してから上記アプリケーション・プログラム受け
渡すことを特徴としている。
【0025】また、本発明のその他の特徴とするところ
は、上記選択手段は、上記アプリケーション・プログラ
ムが複数存在するときには、上記複数のアプリケーショ
ン・プログラムの中から任意のアプリケーション・プロ
グラムを選択する機能を更に備えたことを特徴としてい
る。また、本発明のその他の特徴とするところは、上記
入力デバイスの操作により上記アプリケーション・プロ
グラムに対して発生する入力イベント列を、テキスト形
式のファイルとして少なくともイベント名、イベント座
標情報、イベント時間情報を含んで上記イベント列記憶
手段に格納するようにしたことを特徴としている。
は、上記選択手段は、上記アプリケーション・プログラ
ムが複数存在するときには、上記複数のアプリケーショ
ン・プログラムの中から任意のアプリケーション・プロ
グラムを選択する機能を更に備えたことを特徴としてい
る。また、本発明のその他の特徴とするところは、上記
入力デバイスの操作により上記アプリケーション・プロ
グラムに対して発生する入力イベント列を、テキスト形
式のファイルとして少なくともイベント名、イベント座
標情報、イベント時間情報を含んで上記イベント列記憶
手段に格納するようにしたことを特徴としている。
【0026】
【作用】上記のように構成した本発明によれば、記録動
作時に記憶しておいた入力イベント列が再生されるとき
には、その入力イベント列が入力デバイスの操作によっ
て実際に発生する入力イベント列と同じ形式に変換され
るので、再生手段により再生された入力イベント列を受
け付けることができるような形式に変換するための特別
な拡張機能が組み込まれていないシステムにも適用する
ことができるようになる。また、例えば、Xサーバとア
プリケーション・プログラムとの間におけるメッセージ
交換の際に、交換手段を経由させるか否かで、イベント
入力操作の記録/再生の対象となるアプリケーション・
プログラムを任意に選択することができるようになる。
作時に記憶しておいた入力イベント列が再生されるとき
には、その入力イベント列が入力デバイスの操作によっ
て実際に発生する入力イベント列と同じ形式に変換され
るので、再生手段により再生された入力イベント列を受
け付けることができるような形式に変換するための特別
な拡張機能が組み込まれていないシステムにも適用する
ことができるようになる。また、例えば、Xサーバとア
プリケーション・プログラムとの間におけるメッセージ
交換の際に、交換手段を経由させるか否かで、イベント
入力操作の記録/再生の対象となるアプリケーション・
プログラムを任意に選択することができるようになる。
【0027】本発明の他の特徴によれば、記録対象のア
プリケーション・プログラムに対する入力デバイスの操
作により発生する入力イベント列の中から、ユーザが必
要とする入力イベント列を任意に選択して記憶すること
が可能となる。
プリケーション・プログラムに対する入力デバイスの操
作により発生する入力イベント列の中から、ユーザが必
要とする入力イベント列を任意に選択して記憶すること
が可能となる。
【0028】本発明の更に他の特徴によれば、入力デバ
イスの操作により発生する入力イベント列が、人間が容
易に理解できるテキスト形式のファイルとして記憶され
るので、ユーザがそのイベント列の編集を行なうことが
容易になり、記録動作時における実際の操作を組み合わ
せたものや、類似した操作を実行することが容易にな
る。
イスの操作により発生する入力イベント列が、人間が容
易に理解できるテキスト形式のファイルとして記憶され
るので、ユーザがそのイベント列の編集を行なうことが
容易になり、記録動作時における実際の操作を組み合わ
せたものや、類似した操作を実行することが容易にな
る。
【0029】
【実施例】以下、本発明の一実施例を図面に基づいて説
明する。まず最初に、本実施例による入力イベント記録
/再生装置の構成を、図1を用いて説明する。なお、図
1は、本実施例による入力イベント記録/再生装置を適
用したシステム全体の要部構成を示すブロック図であ
る。
明する。まず最初に、本実施例による入力イベント記録
/再生装置の構成を、図1を用いて説明する。なお、図
1は、本実施例による入力イベント記録/再生装置を適
用したシステム全体の要部構成を示すブロック図であ
る。
【0030】図1において、本実施例の入力イベント記
録/再生装置13は、メッセージ交換手段1、メッセー
ジ変換手段1a、イベント・メッセージ記録手段2、イ
ベント・スクリプト・ファイル記憶部3、イベント・メ
ッセージ再生手段4および操作手段5により構成されて
いる。また、上記入力イベント記録/再生装置13が適
用されるXウィンドウ・システムは、Xサーバ6および
第1〜第nのXクライアント7、8、9により構成され
ている。
録/再生装置13は、メッセージ交換手段1、メッセー
ジ変換手段1a、イベント・メッセージ記録手段2、イ
ベント・スクリプト・ファイル記憶部3、イベント・メ
ッセージ再生手段4および操作手段5により構成されて
いる。また、上記入力イベント記録/再生装置13が適
用されるXウィンドウ・システムは、Xサーバ6および
第1〜第nのXクライアント7、8、9により構成され
ている。
【0031】上記メッセージ交換手段1は、Xサーバ6
と第1〜第nのXクライアント7、8、9との間に設け
られ、Xウィンドウ・システムのプロトコルであるXプ
ロトコルに基づく種々のメッセージの受渡しを行なうよ
うにされている。また、メッセージ交換手段1は、標
準、記録、再生の3つのモードを有しており、Xプロト
コル・メッセージの受渡しを各モードに応じて行なうよ
うにされている。
と第1〜第nのXクライアント7、8、9との間に設け
られ、Xウィンドウ・システムのプロトコルであるXプ
ロトコルに基づく種々のメッセージの受渡しを行なうよ
うにされている。また、メッセージ交換手段1は、標
準、記録、再生の3つのモードを有しており、Xプロト
コル・メッセージの受渡しを各モードに応じて行なうよ
うにされている。
【0032】まず、標準モードでは、メッセージ交換手
段1は、Xサーバ6と各Xクライアント7、8、9との
間の中間バッファとして機能し、その他の機能を有しな
い。すなわち、この標準モードでは、マウス11やキー
ボード12の操作により発生した入力イベント・メッセ
ージの記録、再生は行なわれず、Xウィンドウ・システ
ムが通常通り使用される。
段1は、Xサーバ6と各Xクライアント7、8、9との
間の中間バッファとして機能し、その他の機能を有しな
い。すなわち、この標準モードでは、マウス11やキー
ボード12の操作により発生した入力イベント・メッセ
ージの記録、再生は行なわれず、Xウィンドウ・システ
ムが通常通り使用される。
【0033】また、記録モードでは、メッセージ交換手
段1は、マウス11やキーボード12の操作により発生
してXサーバ6から送られてくる入力イベント・メッセ
ージを対応するXクライアント7、8、9に供給すると
ともに、イベント・メッセージ記録手段2に供給する。
この記録モードでは、メッセージ交換手段1は、その他
のXプロトコル・メッセージについては、中間バッファ
以外の機能を有しない。
段1は、マウス11やキーボード12の操作により発生
してXサーバ6から送られてくる入力イベント・メッセ
ージを対応するXクライアント7、8、9に供給すると
ともに、イベント・メッセージ記録手段2に供給する。
この記録モードでは、メッセージ交換手段1は、その他
のXプロトコル・メッセージについては、中間バッファ
以外の機能を有しない。
【0034】さらに、再生モードでは、メッセージ交換
手段1は、イベント・メッセージ再生手段4の要求によ
り、イベント・スクリプト・ファイル記憶部3から読み
出された内容に従ってXサーバ6から送られてくる入力
イベント・メッセージを、メッセージ変換手段1a に
供給する。そして、メッセージ変換手段1a から必要
に応じてその内容を修正された入力イベント・メッセー
ジを受け取り、対応するXクライアント7、8、9に供
給する。
手段1は、イベント・メッセージ再生手段4の要求によ
り、イベント・スクリプト・ファイル記憶部3から読み
出された内容に従ってXサーバ6から送られてくる入力
イベント・メッセージを、メッセージ変換手段1a に
供給する。そして、メッセージ変換手段1a から必要
に応じてその内容を修正された入力イベント・メッセー
ジを受け取り、対応するXクライアント7、8、9に供
給する。
【0035】これにより、上記イベント・スクリプト・
ファイル記憶部3から読み出される入力イベント・メッ
セージが、あたかもマウス11やキーボード12の操作
によって発生したもののように各Xクライアント7、
8、9に供給される。このため、各Xクライアント7、
8、9は、特別な拡張機能手段がXサーバに組み込まれ
ていなくても再生された入力イベント・メッセージを受
け付けることができるようになる。この再生モードで
は、メッセージ交換手段1は、その他のXプロトコル・
メッセージについては、中間バッファ以外の機能を有し
ない。
ファイル記憶部3から読み出される入力イベント・メッ
セージが、あたかもマウス11やキーボード12の操作
によって発生したもののように各Xクライアント7、
8、9に供給される。このため、各Xクライアント7、
8、9は、特別な拡張機能手段がXサーバに組み込まれ
ていなくても再生された入力イベント・メッセージを受
け付けることができるようになる。この再生モードで
は、メッセージ交換手段1は、その他のXプロトコル・
メッセージについては、中間バッファ以外の機能を有し
ない。
【0036】上記イベント・メッセージ記録手段2は、
メッセージ交換手段1から送られてくる入力イベント・
メッセージの内容にイベント間隔時間等の制御情報を加
える。そして、この制御情報を加えた一連の入力イベン
ト情報を、テキスト形式のファイルとしてイベント・ス
クリプト・ファイル記憶部3に格納する。なお、上記制
御情報は、イベント・スクリプト・ファイル記憶部3に
格納しておいたイベント情報をイベント・メッセージ再
生手段4が読み出し、入力イベント・メッセージを再生
する際に使用するものである。
メッセージ交換手段1から送られてくる入力イベント・
メッセージの内容にイベント間隔時間等の制御情報を加
える。そして、この制御情報を加えた一連の入力イベン
ト情報を、テキスト形式のファイルとしてイベント・ス
クリプト・ファイル記憶部3に格納する。なお、上記制
御情報は、イベント・スクリプト・ファイル記憶部3に
格納しておいたイベント情報をイベント・メッセージ再
生手段4が読み出し、入力イベント・メッセージを再生
する際に使用するものである。
【0037】上記イベント・スクリプト・ファイル記憶
部3に保存される一連の入力イベント情報は、ユーザが
その編集を容易に行なうことができるように、テキスト
形式のファイルとなっている。また、上述したように、
この入力イベント情報には、イベント・メッセージ再生
手段4により用いられる制御情報が付け加えられてい
る。
部3に保存される一連の入力イベント情報は、ユーザが
その編集を容易に行なうことができるように、テキスト
形式のファイルとなっている。また、上述したように、
この入力イベント情報には、イベント・メッセージ再生
手段4により用いられる制御情報が付け加えられてい
る。
【0038】次いで、上記イベント・メッセージ再生手
段4は、イベント・スクリプト・ファイル記憶部3に格
納されているイベント・スクリプト・ファイルを読み出
す。そして、読み出したイベント・スクリプト・ファイ
ルの内容を基に、個々の入力イベント・メッセージを作
成する。
段4は、イベント・スクリプト・ファイル記憶部3に格
納されているイベント・スクリプト・ファイルを読み出
す。そして、読み出したイベント・スクリプト・ファイ
ルの内容を基に、個々の入力イベント・メッセージを作
成する。
【0039】次いで、操作手段5は、本実施例の入力イ
ベント記録/再生装置について、種々の動作を指示する
ための操作手段である。この操作手段5は、表示手段1
0に表示された種々のボタン等で構成されている。
ベント記録/再生装置について、種々の動作を指示する
ための操作手段である。この操作手段5は、表示手段1
0に表示された種々のボタン等で構成されている。
【0040】例えば、入力イベント・メッセージの記録
を行なう際に、その動作の開始や終了を指示するための
記録ボタン5aおよび終了ボタン5bの他、記録動作時
に記憶しておいた入力イベント・メッセージの再生を指
示するための再生ボタン5cを有している。
を行なう際に、その動作の開始や終了を指示するための
記録ボタン5aおよび終了ボタン5bの他、記録動作時
に記憶しておいた入力イベント・メッセージの再生を指
示するための再生ボタン5cを有している。
【0041】マウス11やキーボード12の操作により
上記操作手段5の或るボタンが押されると、その操作内
容が内部コマンドに変換されてメッセージ交換手段1に
供給される。そして、入力イベント・メッセージの記録
や再生が上記内部コマンドに従って行なわれる。
上記操作手段5の或るボタンが押されると、その操作内
容が内部コマンドに変換されてメッセージ交換手段1に
供給される。そして、入力イベント・メッセージの記録
や再生が上記内部コマンドに従って行なわれる。
【0042】次いで、Xサーバ6は、マウス11やキー
ボード12の操作に従い適当な入力イベントメッセージ
を生成して、各Xクライアント7,8,9の制御を行う
他、表示手段10におけるウィンドウの表示制御等を行
う制御手段である。
ボード12の操作に従い適当な入力イベントメッセージ
を生成して、各Xクライアント7,8,9の制御を行う
他、表示手段10におけるウィンドウの表示制御等を行
う制御手段である。
【0043】また、第1〜第nのXクライアント7、
8、9は、Xサーバ6からメッセージ交換手段1を介し
て送られてくる入力イベント・メッセージに従って、例
えば、時計機能、カレンダ機能などの様々な機能を実行
するための各種アプリケーション・プログラムである。
なお、Xクライアント7、8、9のGUIは、表示手段
10に表示されるようになっている。
8、9は、Xサーバ6からメッセージ交換手段1を介し
て送られてくる入力イベント・メッセージに従って、例
えば、時計機能、カレンダ機能などの様々な機能を実行
するための各種アプリケーション・プログラムである。
なお、Xクライアント7、8、9のGUIは、表示手段
10に表示されるようになっている。
【0044】次に、以上のように構成した入力イベント
記録/再生装置における入力イベント・メッセージの記
録および再生の動作を、図2〜図4を参照しながら説明
する。まず最初に、上記操作手段5のボタン操作により
記録モードが指定されたときの動作を、図2を用いて説
明する。
記録/再生装置における入力イベント・メッセージの記
録および再生の動作を、図2〜図4を参照しながら説明
する。まず最初に、上記操作手段5のボタン操作により
記録モードが指定されたときの動作を、図2を用いて説
明する。
【0045】本実施例の入力イベント記録/再生装置に
おいては、ユーザが指定したXクライアントに対しての
み入力イベント・メッセージを記録することができるよ
うにしている。このことは、例えば、以下に述べるよう
な方法によって実現することができる。
おいては、ユーザが指定したXクライアントに対しての
み入力イベント・メッセージを記録することができるよ
うにしている。このことは、例えば、以下に述べるよう
な方法によって実現することができる。
【0046】Xクライアントは、利用できるXサーバが
複数存在する場合、どのXサーバと接続するかを明示的
あるいは暗黙的に指定することができる。本実施例の入
力イベント記録/再生装置は、Xクライアントに対して
Xサーバと同じ形式のインタフェースを有しており、X
クライアントからは、1つのXサーバとしてみなすこと
ができる。
複数存在する場合、どのXサーバと接続するかを明示的
あるいは暗黙的に指定することができる。本実施例の入
力イベント記録/再生装置は、Xクライアントに対して
Xサーバと同じ形式のインタフェースを有しており、X
クライアントからは、1つのXサーバとしてみなすこと
ができる。
【0047】そこで、記録の対象となるXクライアント
は、その起動時に本実施例の入力イベント記録/再生装
置に対して接続するように指定し、その他のXクライア
ントについては、本来のXサーバに対して接続するよう
に指定する。これにより、前者のクライアントは、本実
施例の入力イベント記録/再生装置を介して間接的にX
サーバと通信するため入力イベントの記録を行なうこと
ができ、後者のクライアントは、直接的にXサーバと通
信するため記録を行なうことができない。
は、その起動時に本実施例の入力イベント記録/再生装
置に対して接続するように指定し、その他のXクライア
ントについては、本来のXサーバに対して接続するよう
に指定する。これにより、前者のクライアントは、本実
施例の入力イベント記録/再生装置を介して間接的にX
サーバと通信するため入力イベントの記録を行なうこと
ができ、後者のクライアントは、直接的にXサーバと通
信するため記録を行なうことができない。
【0048】例えば、図2に示すように、第1のXクラ
イアント7を起動する際に直接Xサーバと接続するよう
に指定すると、第1のXクライアント7に対してマウス
11やキーボード12を操作した際に発生する入力イベ
ント・メッセージはメッセージ交換手段1に供給される
ことがない。
イアント7を起動する際に直接Xサーバと接続するよう
に指定すると、第1のXクライアント7に対してマウス
11やキーボード12を操作した際に発生する入力イベ
ント・メッセージはメッセージ交換手段1に供給される
ことがない。
【0049】一方、第2〜第nのXクライアント8、9
を起動する際に、本実施例の入力イベント記録/再生装
置と接続するように指定すると、第2〜第nのクライア
ント8、9に対してマウス11やキーボード12を操作
した際に発生する入力イベント・メッセージは、メッセ
ージ交換手段1に供給される。
を起動する際に、本実施例の入力イベント記録/再生装
置と接続するように指定すると、第2〜第nのクライア
ント8、9に対してマウス11やキーボード12を操作
した際に発生する入力イベント・メッセージは、メッセ
ージ交換手段1に供給される。
【0050】これにより、第2〜第nのXクライアント
8、9に対してマウス11やキーボード12を操作した
際に発生した入力イベント・メッセージのみを、イベン
ト・メッセージ記録手段2の作用によりイベント・スク
リプト・ファイル記憶部3に格納することができる。す
なわち、この場合には、Xクライアント8、9に関する
マウス11やキーボード12の操作のみを記録すること
ができる。
8、9に対してマウス11やキーボード12を操作した
際に発生した入力イベント・メッセージのみを、イベン
ト・メッセージ記録手段2の作用によりイベント・スク
リプト・ファイル記憶部3に格納することができる。す
なわち、この場合には、Xクライアント8、9に関する
マウス11やキーボード12の操作のみを記録すること
ができる。
【0051】また、本実施例の入力イベント記録/再生
装置においては、上記のように、本実施例の入力イベン
ト記録/再生装置と接続したXクライアントに関して
は、ユーザが必要とする入力イベント・メッセージのみ
を選択して記録することができるようにしている。この
ことは、例えば、以下に述べるような方法によって実現
することができる。
装置においては、上記のように、本実施例の入力イベン
ト記録/再生装置と接続したXクライアントに関して
は、ユーザが必要とする入力イベント・メッセージのみ
を選択して記録することができるようにしている。この
ことは、例えば、以下に述べるような方法によって実現
することができる。
【0052】すなわち、マウス11やキーボード12の
操作により発生する入力イベント・メッセージについて
は、操作手段5に備えられている各種ボタンの操作に応
じて記録の開始、中断、再開、終了等を行ない、種々の
形で記録を行なえるようにしている。
操作により発生する入力イベント・メッセージについて
は、操作手段5に備えられている各種ボタンの操作に応
じて記録の開始、中断、再開、終了等を行ない、種々の
形で記録を行なえるようにしている。
【0053】例えば、上記のように本実施例の入力イベ
ント記録/再生装置と接続された第2〜第nのXクライ
アントを、標準モードにおいてマウス11やキーボード
12で操作中に入力イベント・メッセージを記録する必
要が生じたら、記録ボタン5aをクリックし、メッセー
ジ交換手段1を記録モードに変更する。そして、記録対
象の操作をマウス11やキーボード12を用いて行なっ
た後、終了ボタン5bをクリックし、メッセージ交換手
段1を標準モードに変更する。
ント記録/再生装置と接続された第2〜第nのXクライ
アントを、標準モードにおいてマウス11やキーボード
12で操作中に入力イベント・メッセージを記録する必
要が生じたら、記録ボタン5aをクリックし、メッセー
ジ交換手段1を記録モードに変更する。そして、記録対
象の操作をマウス11やキーボード12を用いて行なっ
た後、終了ボタン5bをクリックし、メッセージ交換手
段1を標準モードに変更する。
【0054】これにより、記録ボタン5aがクリックさ
れてから終了ボタン5bがクリックされるまでの間に、
第2〜第nのXクライアント8、9に対してマウス11
やキーボード12の操作で発生した入力イベント・メッ
セージを、記録手段2の作用によりイベント・スクリプ
ト・ファイル記憶部3に格納することができる。
れてから終了ボタン5bがクリックされるまでの間に、
第2〜第nのXクライアント8、9に対してマウス11
やキーボード12の操作で発生した入力イベント・メッ
セージを、記録手段2の作用によりイベント・スクリプ
ト・ファイル記憶部3に格納することができる。
【0055】なお、記録対象となるXクライアントの指
定方法は、上述のように接続するXサーバの指定によっ
て実現する方法の他に、全てのXクライアントを入力イ
ベント記録/再生装置に接続し、メッセージ交換手段1
内で各Xクライアント毎に個別の設定ができるようにし
てもよい。
定方法は、上述のように接続するXサーバの指定によっ
て実現する方法の他に、全てのXクライアントを入力イ
ベント記録/再生装置に接続し、メッセージ交換手段1
内で各Xクライアント毎に個別の設定ができるようにし
てもよい。
【0056】また、記録の対象となるメッセージは、上
述のようにマウスやキーボード等の入力デバイス操作に
より発生する入力イベント・メッセージだけでなく、そ
の他のメッセージ、例えば、Xサーバから送られてくる
エラー・メッセージであってもよく、メッセージ交換手
段1にメッセージを選択するための選択手段を別に設け
て、記録するメッセージの種類をユーザが設定すること
ができるようにしてもよい。
述のようにマウスやキーボード等の入力デバイス操作に
より発生する入力イベント・メッセージだけでなく、そ
の他のメッセージ、例えば、Xサーバから送られてくる
エラー・メッセージであってもよく、メッセージ交換手
段1にメッセージを選択するための選択手段を別に設け
て、記録するメッセージの種類をユーザが設定すること
ができるようにしてもよい。
【0057】ここで、上述のようにしてイベント・スク
リプト・ファイル記憶部3に格納されるイベント・スク
リプト・ファイルの一例を、図4に示す。図4から明ら
かなように、イベント・スクリプト・ファイルとして格
納される各入力イベント・メッセージのレコードは、マ
ウス11やキーボード12の操作状態を表すイベント名
と、表示手段10におけるポインタの位置を表すx−y
座標と、前イベント発生から現イベント発生までの時間
を表すイベント間隔等からなっている。
リプト・ファイル記憶部3に格納されるイベント・スク
リプト・ファイルの一例を、図4に示す。図4から明ら
かなように、イベント・スクリプト・ファイルとして格
納される各入力イベント・メッセージのレコードは、マ
ウス11やキーボード12の操作状態を表すイベント名
と、表示手段10におけるポインタの位置を表すx−y
座標と、前イベント発生から現イベント発生までの時間
を表すイベント間隔等からなっている。
【0058】図4の例では、表示手段10上においてマ
ウス11の第1ボタンで操作手段5の記録ボタン5aを
クリックし、メッセージ交換手段1を記録モードにして
から1854msec後に、表示手段10上の座標(758,170) に
おいて、まずキーボード12の<c>キーを押し、その
174msec後に<l>キーを押す。さらにその 147msec後
に<e>キーを押すといったような一連のイベント入力
操作によって発生した入力イベント・メッセージが格納
されていることが示されている。
ウス11の第1ボタンで操作手段5の記録ボタン5aを
クリックし、メッセージ交換手段1を記録モードにして
から1854msec後に、表示手段10上の座標(758,170) に
おいて、まずキーボード12の<c>キーを押し、その
174msec後に<l>キーを押す。さらにその 147msec後
に<e>キーを押すといったような一連のイベント入力
操作によって発生した入力イベント・メッセージが格納
されていることが示されている。
【0059】その後、上述のような記録モード時に行な
ったマウス11やキーボード12の一連の操作を再現し
ようとするときは、操作手段5に備えられている再生ボ
タン5cをクリックして再生モードを指定することによ
って行なう。すなわち、イベント・メッセージの再生動
作を示す図3において、再生ボタン5cがユーザにより
クリックされると、記録モード時にイベント・スクリプ
ト・ファイル記憶部3に格納しておいた図4に示したよ
うなイベント・スクリプト・ファイルが、イベント・メ
ッセージ再生手段4により読み出される。
ったマウス11やキーボード12の一連の操作を再現し
ようとするときは、操作手段5に備えられている再生ボ
タン5cをクリックして再生モードを指定することによ
って行なう。すなわち、イベント・メッセージの再生動
作を示す図3において、再生ボタン5cがユーザにより
クリックされると、記録モード時にイベント・スクリプ
ト・ファイル記憶部3に格納しておいた図4に示したよ
うなイベント・スクリプト・ファイルが、イベント・メ
ッセージ再生手段4により読み出される。
【0060】このイベント・メッセージ再生手段4は、
上記読み出したイベント・スクリプト・ファイルの内容
を基に、個々の入力イベント・メッセージを作成する。
イベント・メッセージ再生手段は、こうして作成された
入力イベント・メッセージを、Xサーバ6に受渡し、入
力イベント・メッセージの再配送を要求する。これによ
り、上記入力イベント・メッセージは、イベント・メッ
セージ再生手段4の要求に応じて、Xサーバ6からメッ
セージ交換手段1に供給される。
上記読み出したイベント・スクリプト・ファイルの内容
を基に、個々の入力イベント・メッセージを作成する。
イベント・メッセージ再生手段は、こうして作成された
入力イベント・メッセージを、Xサーバ6に受渡し、入
力イベント・メッセージの再配送を要求する。これによ
り、上記入力イベント・メッセージは、イベント・メッ
セージ再生手段4の要求に応じて、Xサーバ6からメッ
セージ交換手段1に供給される。
【0061】メッセージ交換手段1は、上記のようにX
サーバから再配送されてきた入力イベント・メッセージ
をメッセージ変換手段1aに供給する。そして、メッセ
ージ変換手段1aは、イベント・メッセージ再生手段4
からXサーバ6を介して与えられる入力イベント・メッ
セージを、あたかもマウス11やキーボード12の操作
により実際に発生したものとしてXクライアント8、9
が受け取ることができるように、そのメッセージの内容
を修正する。
サーバから再配送されてきた入力イベント・メッセージ
をメッセージ変換手段1aに供給する。そして、メッセ
ージ変換手段1aは、イベント・メッセージ再生手段4
からXサーバ6を介して与えられる入力イベント・メッ
セージを、あたかもマウス11やキーボード12の操作
により実際に発生したものとしてXクライアント8、9
が受け取ることができるように、そのメッセージの内容
を修正する。
【0062】このような修正が施されることにより、第
2〜第nのXクライアント8、9には、マウス11やキ
ーボード12の操作によって発生する入力イベント・メ
ッセージと同様の入力イベント・メッセージが与えられ
ることになる。この入力イベント・メッセージは、各X
クライアント8、9が受け付けることが可能な適切な形
式を有している。
2〜第nのXクライアント8、9には、マウス11やキ
ーボード12の操作によって発生する入力イベント・メ
ッセージと同様の入力イベント・メッセージが与えられ
ることになる。この入力イベント・メッセージは、各X
クライアント8、9が受け付けることが可能な適切な形
式を有している。
【0063】したがって、従来のように、Xクライアン
ト8、9が受け付けることが可能な適切な形式の入力イ
ベント・メッセージに変換するための拡張手段をXサー
バ6に組み込む必要は無くなり、Xサーバ6は基本手段
6aのみを備えていればよいことになる。すなわち、X
サーバ6に拡張機能が組み込まれているか否かにかかわ
らず、本実施例の入力イベント記録/再生装置を適用す
ることができる。
ト8、9が受け付けることが可能な適切な形式の入力イ
ベント・メッセージに変換するための拡張手段をXサー
バ6に組み込む必要は無くなり、Xサーバ6は基本手段
6aのみを備えていればよいことになる。すなわち、X
サーバ6に拡張機能が組み込まれているか否かにかかわ
らず、本実施例の入力イベント記録/再生装置を適用す
ることができる。
【0064】次いで、各Xクライアント8、9では、メ
ッセージ交換手段1から与えられる入力イベント・メッ
セージに従ってそれぞれの機能が実行される。このよう
にして、上述の記録モード中にユーザがマウス11やキ
ーボード12を操作して入力した命令が、記録モード中
にイベント・スクリプト・ファイル記憶部3に格納して
おいた一連の入力イベント・メッセージに応じて正確に
再現される。
ッセージ交換手段1から与えられる入力イベント・メッ
セージに従ってそれぞれの機能が実行される。このよう
にして、上述の記録モード中にユーザがマウス11やキ
ーボード12を操作して入力した命令が、記録モード中
にイベント・スクリプト・ファイル記憶部3に格納して
おいた一連の入力イベント・メッセージに応じて正確に
再現される。
【0065】以上のように、本実施例によれば、マウス
11やキーボード12の操作により発生する入力イベン
ト・メッセージを保存しておき、必要な時点でこれを正
確に再生することができるので、GUIを介してマウス
11やキーボード12を操作して入力した命令を正確に
再現することができる。
11やキーボード12の操作により発生する入力イベン
ト・メッセージを保存しておき、必要な時点でこれを正
確に再生することができるので、GUIを介してマウス
11やキーボード12を操作して入力した命令を正確に
再現することができる。
【0066】したがって、例えば、GUIそのもののテ
ストや、GUIを介して行なうアプリケーション・プロ
グラムのテストなどにおいて何らかのエラーが発生した
場合に、そのエラーが発生したときと同じ操作を忠実に
再現することができるので、エラーの原因を容易に究明
することができる。
ストや、GUIを介して行なうアプリケーション・プロ
グラムのテストなどにおいて何らかのエラーが発生した
場合に、そのエラーが発生したときと同じ操作を忠実に
再現することができるので、エラーの原因を容易に究明
することができる。
【0067】また、本実施例においては、イベント・ス
クリプト・ファイル記憶部3に格納される一連の入力イ
ベント・メッセージ情報をテキスト形式としているた
め、ユーザがその編集を容易に行なうことができる。し
たがって、エラーが発生したときの一連の操作と類似の
操作を計算機に自動的に行なわせることが容易になり、
エラーの原因をより一層容易に究明することができるよ
うになる。
クリプト・ファイル記憶部3に格納される一連の入力イ
ベント・メッセージ情報をテキスト形式としているた
め、ユーザがその編集を容易に行なうことができる。し
たがって、エラーが発生したときの一連の操作と類似の
操作を計算機に自動的に行なわせることが容易になり、
エラーの原因をより一層容易に究明することができるよ
うになる。
【0068】なお、本実施例の入力イベント記録/再生
装置は、マウス11やキーボード12の操作により入力
した命令を正確に再現できることができるので、GUI
を有するアプリケーション・プログラムの自動デモンス
トレーションを行なう際にも利用することができる。
装置は、マウス11やキーボード12の操作により入力
した命令を正確に再現できることができるので、GUI
を有するアプリケーション・プログラムの自動デモンス
トレーションを行なう際にも利用することができる。
【0069】上述のように、本実施例によれば、特別な
拡張手段をXサーバ6に組み込む必要がないので、拡張
手段を組み込むための労力と時間を全くなくすことがで
きる。しかも、従来では、拡張手段を組み込む際におけ
る作業者の人為的なミスにより、基本手段に対して何ら
かの副作用を及ぼしてしまうことがあったが、本実施例
の入力イベント記録/再生装置によればこのような心配
をもなくすことができる。
拡張手段をXサーバ6に組み込む必要がないので、拡張
手段を組み込むための労力と時間を全くなくすことがで
きる。しかも、従来では、拡張手段を組み込む際におけ
る作業者の人為的なミスにより、基本手段に対して何ら
かの副作用を及ぼしてしまうことがあったが、本実施例
の入力イベント記録/再生装置によればこのような心配
をもなくすことができる。
【0070】さらにまた、本実施例では、入力イベント
・メッセージを記録する際に、第1〜第nのクライアン
ト7、8、9の中から、対象となるXクライアントを任
意に選択することができるようにしたので、不必要な入
力イベント・メッセージは記録しないようにすることが
できる。
・メッセージを記録する際に、第1〜第nのクライアン
ト7、8、9の中から、対象となるXクライアントを任
意に選択することができるようにしたので、不必要な入
力イベント・メッセージは記録しないようにすることが
できる。
【0071】なお、上述した実施例では、入力イベント
・メッセージを発生するための入力デバイスとしてマウ
スやキーボードを用いているが、タッチ・パネル、タッ
チ・ペン等の他の入力デバイスを用いてもよい。
・メッセージを発生するための入力デバイスとしてマウ
スやキーボードを用いているが、タッチ・パネル、タッ
チ・ペン等の他の入力デバイスを用いてもよい。
【0072】
【発明の効果】本発明は上述したように、再生手段によ
り再生されるイベント列を入力デバイスの操作によって
実際に発生するイベント列と同じ形式に変換する変換手
段を設けたので、本発明の入力イベント記録/再生装置
を適用しようとするシステム中に特別な拡張機能を組み
込まなくても上記再生イベント列を実際に発生するイベ
ント列と同様に扱うことがきるようになり、上記システ
ムに拡張機能が組み込まれているか否かにかかわらず、
入力イベント記録/再生装置を汎用的なシステムに適用
することができる。また、上述のように、適用しようと
するシステムに特別な拡張機能を組み込まなくても済む
ので、拡張機能を組み込むための労力と時間とを省略す
ることができ、作業効率を著しく向上させることができ
る。
り再生されるイベント列を入力デバイスの操作によって
実際に発生するイベント列と同じ形式に変換する変換手
段を設けたので、本発明の入力イベント記録/再生装置
を適用しようとするシステム中に特別な拡張機能を組み
込まなくても上記再生イベント列を実際に発生するイベ
ント列と同様に扱うことがきるようになり、上記システ
ムに拡張機能が組み込まれているか否かにかかわらず、
入力イベント記録/再生装置を汎用的なシステムに適用
することができる。また、上述のように、適用しようと
するシステムに特別な拡張機能を組み込まなくても済む
ので、拡張機能を組み込むための労力と時間とを省略す
ることができ、作業効率を著しく向上させることができ
る。
【0073】本発明の他の特徴によれば、入力デバイス
の操作により発生するイベント列の中から、ユーザが必
要とするイベント列を任意に選択して、不必要なイベン
ト列は記録しないようにすることができるので、イベン
ト列の記録や再生の際の処理時間を短縮することがで
き、例えば、アプリケーション・プログラムの自動テス
ト等を効率よく行なうことができる。
の操作により発生するイベント列の中から、ユーザが必
要とするイベント列を任意に選択して、不必要なイベン
ト列は記録しないようにすることができるので、イベン
ト列の記録や再生の際の処理時間を短縮することがで
き、例えば、アプリケーション・プログラムの自動テス
ト等を効率よく行なうことができる。
【0074】本発明の更に他の特徴によれば、入力デバ
イスの操作により発生するイベント列を人間が容易に理
解できるテキスト形式のファイルとして記憶するように
したので、ユーザがそのイベント列の編集を容易に行な
って、記録動作時における実際の操作に類似した操作を
容易に実行することができ、例えば、アプリケーション
・プログラムの自動テスト等をより一層効率よく行なう
ことができる。
イスの操作により発生するイベント列を人間が容易に理
解できるテキスト形式のファイルとして記憶するように
したので、ユーザがそのイベント列の編集を容易に行な
って、記録動作時における実際の操作に類似した操作を
容易に実行することができ、例えば、アプリケーション
・プログラムの自動テスト等をより一層効率よく行なう
ことができる。
【0075】上記の例としては、イベント間隔時間を編
集することにより、再生時に不必要な時間を削除し、再
生に必要とする時間を大幅に短縮し、テスト効率を改善
することができる。
集することにより、再生時に不必要な時間を削除し、再
生に必要とする時間を大幅に短縮し、テスト効率を改善
することができる。
【図1】本発明の一実施例である入力イベント記録/再
生装置を適用したシステム全体の要部構成を示すブロッ
ク図である。
生装置を適用したシステム全体の要部構成を示すブロッ
ク図である。
【図2】本実施例によるイベント・メッセージの記録動
作を示す図である。
作を示す図である。
【図3】本実施例によるイベント・メッセージの再生動
作を示す図である。
作を示す図である。
【図4】イベント・スクリプト・ファイルの一例を示す
図である。
図である。
【図5】従来の入力イベント記録/再生装置におけるイ
ベント・メッセージの記録動作を示す図である。
ベント・メッセージの記録動作を示す図である。
【図6】従来の入力イベント記録/再生装置におけるイ
ベント・メッセージの再生動作を示す図である。
ベント・メッセージの再生動作を示す図である。
1 メッセージ交換手段 1a メッセージ変換手段 2 イベント・メッセージ記録手段 3 イベント・スクリプト・ファイル記憶部 4 イベント・メッセージ再生手段 5 操作手段 5a 記録ボタン 5b 終了ボタン 5c 再生ボタン 6 Xサーバ 6a 基本手段 7、8、9 Xクライアント 10 表示手段 11 マウス 12 キーボード 13 入力イベント/記録再生装置
───────────────────────────────────────────────────── フロントページの続き (72)発明者 北原 直樹 相模原市淵野辺5−10−1 新日本製鐵 株式会社エレクトロニクス研究所内 (56)参考文献 特開 平3−102536(JP,A) 特開 昭64−76130(JP,A) 特開 平2−165351(JP,A) Macintosh DEVELOP ERS JOURNAL,日本,技術評 論社,1993年5月15日,No.3,p. 14−22 (58)調査した分野(Int.Cl.7,DB名) G06F 11/34
Claims (4)
- 【請求項1】 コンピュータのグラフィカル・ユーザ・
インタフェース(GUI)上で動作するアプリケーショ
ン・プログラムヘのイベント入力操作を人間に代わって
実行するようにした入力イベント記録/再生装置におい
て、 上記GUIの操作を行うためのイベントメッセージを入
力する入力手段と、 上記入力手段から入力された入力イベントメッセージを
出力制御するサーバ手段と、 上記サーバ手段から出力された入力イベントメッセージ
をアプリケーション・プログラムヘ受け渡し、入力イベ
ント列を出力するイベントメッセージ交換手段と、 上記イベントメッセージ交換手段から出力された入力イ
ベント列を記憶するイベント列記憶手段と、 上記イベント列記憶手段に記憶された入力イベント列を
基にして再現イベントメッセージを作成し、上記サーバ
手段へ出力するイベントメッセージ再生手段と、 上記イベント列記憶手段で記憶するべき入力イベントメ
ッセージを選択する選択手段とを備え、 上記入力手段から入力された入力イベントメッセージの
うち、上記選択手段は、上記アプリケーション・プログ
ラムが複数存在する場合に、上記イベント列記憶手段で
入力イベントメッセージを記憶するべき対象とするため
の少なくとも1つ以上のアプリケーション・プログラム
を選択指定する機能、ユーザが指定した開始点から終了
点までの間の入力イベントメッセージを選択する機能、
或いはユーザが指定したメッセージの種類を選択する機
能のうち、少なくとも何れか1つの機能で入力イベント
メッセージを選択し、 上記選択手段で選択された入力イベントメッセージに対
する入力イベント列のみを上記イベント列記憶手段で記
憶し、 上記イベントメッセージ交換手段は、上記イベントメッ
セージ再生手段で作成された再現イベントメッセージを
上記サーバ手段を介して受けた場合は、上記再現イベン
トメッセージを上記アプリケーション・プログラムへ受
け渡すことを特徴とする入力イベント記録/再生装置。 - 【請求項2】 上記イベントメッセージ再生手段で作成
されたイベントメッセージを上記入力デバイスの操作に
よって実際に再生する入力イベントメッセージと同じ形
式に変換する変換手段を更に備え、 上記イベントメッセージ交換手段は、上記サーバ手段を
介して再現イベントメッセージを受けた場合は、上記変
換手段で入力イベントメッセージに変換してから上記ア
プリケーション・プログラム受け渡すことを特徴とする
請求項1に記載の入力イベント記録/再生装置。 - 【請求項3】 上記選択手段は、上記アプリケーション
・プログラムが複数存在するときには、上記複数のアプ
リケーション・プログラムの中から任意のアプリケーシ
ョン・プログラムを選択する機能を更に備えたことを特
徴とする請求項1に記載の入力イベント記録/再生装
置。 - 【請求項4】 上記入力デバイスの操作により上記アプ
リケーション・プログラムに対して発生する入力イベン
ト列を、テキスト形式のファイルとして少なくともイベ
ント名、イベント座標情報、イベント時間情報を含んで
上記イベント列記憶手段に格納するようにしたことを特
徴とする請求項1〜3の何れか1項に記載の入力イベン
ト記録/再生装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP04771994A JP3271682B2 (ja) | 1994-02-22 | 1994-02-22 | 入力イベント記録/再生装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP04771994A JP3271682B2 (ja) | 1994-02-22 | 1994-02-22 | 入力イベント記録/再生装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH07234807A JPH07234807A (ja) | 1995-09-05 |
JP3271682B2 true JP3271682B2 (ja) | 2002-04-02 |
Family
ID=12783131
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP04771994A Expired - Fee Related JP3271682B2 (ja) | 1994-02-22 | 1994-02-22 | 入力イベント記録/再生装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3271682B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3169896B2 (ja) | 1998-07-03 | 2001-05-28 | 日本電気株式会社 | プログラム開発装置、プログラム開発方法及びプログラム開発プログラムを記憶した記憶媒体 |
JP4268174B2 (ja) * | 2001-09-28 | 2009-05-27 | 株式会社リコー | キー操作再生方法、この方法をコンピュータに実行させるプログラムおよび画像形成装置 |
JP4985627B2 (ja) * | 2008-12-08 | 2012-07-25 | 三菱電機株式会社 | マンマシンシステム、及び操作ログ収集用計算機 |
-
1994
- 1994-02-22 JP JP04771994A patent/JP3271682B2/ja not_active Expired - Fee Related
Non-Patent Citations (1)
Title |
---|
Macintosh DEVELOPERS JOURNAL,日本,技術評論社,1993年5月15日,No.3,p.14−22 |
Also Published As
Publication number | Publication date |
---|---|
JPH07234807A (ja) | 1995-09-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3857380B2 (ja) | 編集制御装置及び編集制御方法 | |
JP2584361B2 (ja) | 同期ジャーナリングシステム | |
US6034679A (en) | Method and apparatus for controlling editing of recorded audio and/or video material | |
JP4295775B2 (ja) | Guiテスト支援システム及びテスト支援用アプリケーションプログラム | |
US7516398B2 (en) | Apparatus and method of executing multi-clipboard | |
JP2002288125A (ja) | 作業状態再現システム、作業状態再現方法 | |
JPH1031878A (ja) | ビデオ及び/又はオーディオの再生制御装置及び再生制御方法 | |
JP2000076266A (ja) | ブラウザ操作自動実行システムおよびその方法 | |
US5542069A (en) | Method and apparatus for simulating input events in a windowed environment | |
JP3271682B2 (ja) | 入力イベント記録/再生装置 | |
US6324562B1 (en) | Information processing apparatus, multitask control method, and program recording medium | |
JPH10143397A (ja) | 複数ウィンドウ履歴管理システム | |
JPH05120398A (ja) | プレゼンテーシヨン装置 | |
KR0175060B1 (ko) | 멀티미디어 문서의 편집 및 프리젠테이션 저작 방법 | |
JP3300156B2 (ja) | Cadシステムの障害時における復旧方法 | |
JP4113106B2 (ja) | 性能測定装置および性能測定方法 | |
JP2565049B2 (ja) | 動的シナリオ提示方法 | |
JP3614091B2 (ja) | ジョブスケジュール運用管理装置及びジョブスケジュール運用管理方法並びにプログラム記録媒体 | |
KR20010053430A (ko) | 미팅 시스템 및 정보 기억 매체 | |
JP2005293248A (ja) | アノテーションルールデータ作成装置、及びアノテーションシステム | |
US6308180B1 (en) | Computer process data transferring with automatic clipping of pictures | |
JP2002024055A (ja) | コンピュータシステムおよびアプリケーションプログラムの動作再現方法 | |
JP3149744B2 (ja) | 個別ソフトウェアの連携制御方法 | |
JP2668052B2 (ja) | 複数種のプロッタ装置への出力制御方法 | |
JP2996294B2 (ja) | ジョブ制御言語作成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20011211 |
|
LAPS | Cancellation because of no payment of annual fees |