JPH0471042A - 実行トレースに基づくテスト支援システム - Google Patents

実行トレースに基づくテスト支援システム

Info

Publication number
JPH0471042A
JPH0471042A JP2182616A JP18261690A JPH0471042A JP H0471042 A JPH0471042 A JP H0471042A JP 2182616 A JP2182616 A JP 2182616A JP 18261690 A JP18261690 A JP 18261690A JP H0471042 A JPH0471042 A JP H0471042A
Authority
JP
Japan
Prior art keywords
trace
information
file
system call
mode
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.)
Pending
Application number
JP2182616A
Other languages
English (en)
Inventor
Masao Ochiai
落合 正雄
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 JP2182616A priority Critical patent/JPH0471042A/ja
Publication of JPH0471042A publication Critical patent/JPH0471042A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [発明の目的コ (産業上の利用分野) この発明は、大規模なソフトウェアシステムのテスト支
援に用いて好適な実行トレースに基づくテスト支援シス
テムに関する。
(従来の技術) 1つのプロセス(プログラム実行単位)についてのデバ
ッグ手段としては、従来から対話型デバッガが一般的で
ある。これに対し、複数プロセスが絡み合う複雑なソフ
トウェアシステムのためのテスト手段としては確立した
方式はない。比較的−船釣であるのは、各種の実行トレ
ースを採り、それを見て動作解析を行う方式である。ま
た、複数プロセスを扱う対話型デバッガも無いわけでは
ない。
(発明が解決しようとする課題) 上記した従来の実行トレースによる方式(以下、第1の
方式と呼ぶ)では、実行トレースの結果が膨大な量とな
る。したがって第1の方式では、実行トレースの結果を
見てのシステム動作解析が困難なものとなる問題があっ
た。一方、複数プロセスを扱う対話型デバッガによる方
式(以下、第2の方式と呼ぶ)では、実際の動作タイミ
ングとデバッグ時のそれとが異なる。したかって第2の
方式は、リアルタイムシステムでの本格的なテストには
使用することができないという問題かあった。
この発明は上記事情に鑑みてなされたものでその目的は
、実行トレース方式を適用しながら、選択的トレースに
より実質的な実行トレース量を減らすと共に、トレース
結果の対話的検索・表示を行うことにより、複数プロセ
スによる複雑なソフトウェアシステムのテストが効率よ
く行える実行トレースに基づくテスト支援システムを提
供することにある。
[発明の構成] (課題を解決するための手段) この発明は、各プロセスのトレースを採るか否かの状態
を示すトレースモードを各プロセス毎に設定するトレー
スモード設定手段と、各種実行トレースのうち実際にト
レースを採る範囲を指定した条件情報が記述されたトレ
ースパラメータファイルと、上記プロセスから呼ばれて
固有の処理ヲ行う手段であって、プロセスからの呼出し
時に同プロセスのトレースモードを調べ、少なくともこ
のトレースモードに応じてトレースを採ってそのトレー
ス情報を得る複数のシステムコール時処理手段と、この
トレース情報のうち上記トレースパラメータファイルに
記述された条件に合致した情報だけを選択してトレース
ファイルに保存するトレース情報選択手段と、このトレ
ースファイルに保存されているトレース情報を用いた表
示に必要な指示を与えるための入力手段と、この入力手
段から与えられた指示を解析し、その解析結果に応じて
上記トレースファイルを検索して指示された範囲のトレ
ース情報を指示された形態で画面表示する解析・表示手
段とを設けたことを特徴とするものである。
(作 用) この発明によれば、トレースモード設定手段は、テスト
対象となるプロセス群の起動時に、または既に起動され
ている場合はそれに割込んで、トレースモード(トレー
スを採るか否かのプロセスの状態)のオン/オフを行う
。さて、システムコール時処理手段は、各プロセスから
呼ばれて使用される共通機能手段てあり、固有の処理機
能の他にトレース採取機能を持つ。即ちシステムコル時
処理手段は、プロセスから呼出されると、そのプロセス
のトレースモードを調べ、同モードがオン状態にあり、
そのプロセスのトレース採取が指示されている場合には
、必要なトレース情報(例えば時刻、プロセスの識別子
、システムコールの識別子、引数、結果の値など)を採
る。この際、トレースパラメータファイルに記述された
条件のうち、判定が簡単な条件(例えば該当システムコ
ールはトレース採取を行うべきものか否かなど)につい
ては、その条件を用いた判定をシステムコール時処理手
段にて行い、その条件に合致した場合だけトレース採取
を行うようにすることも可能である。一方、複雑な条件
判定を必要とするものについては、対象プロセスの実行
時間に影響を及はすことから、次に述べるトレース選択
手段に行わせる。
システムコール時処理手段によって採られたトレース情
報は中間バッファ(トレース用中間バッファ)に格納さ
れる。トレース情報選択手段は、各システムコール時処
理手段によって中間バッファに格納されたトレース情報
の中から、トレースパラメータファイルに記述された条
件に合致するものだけを選択してトレースファイルに保
存する。
したがって、トレースファイルには、トレースモードで
トレース採取が指定されているプロセスのトレース情報
のうち、トレースパラメータファイルに記述された条件
に合致するトレース情報だけが保存される。
さて、テスト対象プロセス群の実行が終了し、必要なト
レース情報だけがトレースファイルに保存されると、解
析・表示手段が起動される。解析・起動手段は、入力手
段から与えられた指示により、トレース情報の画面表示
を行う。この指示(コマンド)には、表示の開始・終了
を指示するコマンドの他に、表示すべきトレース情報の
範囲(例えば時刻範囲、プロセス種別など)を指定する
コマンド、タイムスケールを指定するコマンドなとがあ
り、これらのコマンドにより、指示された範囲のトレー
ス情報を指示された形態で表示(実行履歴の早送り表示
、スローモーション表示等)することが可能となる。
(実施例) 第1図はこの発明の一実施例に係る実行トレースに基づ
くテスト支援システムのブロック構成図である。同図に
おいて、10は実行トレースの採取を行うトレース採取
機構、20はトレース採取機構10によって採取された
実行トレースの情報をシステム動作解析に適合する形態
で画面表示するトレース情報解析・表示機構である。
トレース採取機構10において、11はテスト対象とな
るプロセス12−1〜12−n (プロセス#]〜#n
)の起動時、または既に起動されている場合はそれに割
込んで、該当プロセス12−1〜12−nのプロセスコ
ントロールブロック(以下、PCBと称する)にトレー
スモード(トレースを採るか否かのプロセスの状態)の
onloff(オン/オフ)設定を行うトレースモード
設定部、13は各種実行トレースのうち実際にトレース
を採る範囲を指定した条件情報(以下、トレースパラメ
ータと称する)が記述されたトレースパラメータファイ
ルである。上記のトレースパラメータは、■トレースを
採るべきシステムコールの種別、■トレースを採るべき
時間範囲、■トレースを採るべきプロセスの種別、■そ
の他トレースを採るべき条件を含む。なお、トレースパ
ラメータをメモリに格納して用いることも可能である。
14はトレースパラメータファイル13の作成を司るト
レースパラメータファイル作成部、15はトレース機能
付きシステムコール群である。このシステムコール群1
5は、プロセス12−1 (i −1〜n)から呼出さ
れて使用される共通機能群であり、そのプロセス12−
1のプロセス状態(トレースモード)等に応じて、その
プロセス12−工のトレース情報を採取するトレース機
能の他に、O8(オペレーティングシステム)の提供す
るサービスの機能、およびプログラミング言語の実行時
サブルーチンを含ンでイる。16はトレース機能付きシ
ステムコール群15によって採取されたトレース情報を
一時格納するための、例えば主記憶領域に確保されたバ
ッファ(以下、トレース用中間バッファと称する)であ
る。なお、システムコール群15によっテ採取されたト
レース情報をファイルに格納して用いることも可能であ
る。
17はトレース用中間バッファ16に格納されているト
レース情報の中がら、トレースパラメータファイル13
に記述されているトレースパラメータの示す条件に合致
したものを、最終的な実行トレース情報として選択する
トレース情報選択部、18は最終的に作成されたトレー
スファイルである。
このトレースファイル18には、トレース情報選択部1
7によって選択されたトレース情報が格納される。
一方、トレース情報解析・表示機構20において、21
はトレースファイル18に格納されているトレース情報
の表示等に供される表示装置、22はトレース情報表示
に必要な指示等を与えるための入力装置、23は入力装
置22から与えられる指示(コマンド)を解析し、その
解析結果に応じて表示装置21へのトレース情報表示を
行う解析・表示部である。なお、表示装置21から解析
・表示部23に与えられる指示(コマンド)の代表的な
ものは次の通りである。
(a)表示の開始・終了を指示するコマンド(b)表示
すべきトレース情報の範囲(例えば時刻範囲、プロセス
種別など)を指定するコマンド (C)タイムスケールを指定するコマンド。
このコマンドにより、通常はトレースファイル18に記
録されている時刻順に実時間で表示が行われるのに対し
、その表示を早くしたり(早送り)、遅くしたり(スロ
ーモーション)、或いは指示によって1つずつ時刻順に
表示させることも可能となる。
(d)−時停止している状態から表示を再開させること
を指示するコマンド <e>表示に割込んで一時停止させるコマンド 第2図は第1図に示す解析・表示部23のブロック構成
図である。同図において、31は入力装置22から与え
られたコマンドの解析を行うコマンド解析部、32はコ
マンド解析部31の解析結果に応じて解析・表示部23
全体を制御する制御部である。
35は制御部32からの入力指示33に応じてトレース
ファイル18からのトレース情報入力を行うトレースフ
ァイル入力部、3Bは制御部32からの表示指示34に
応じて表示装置21へのトレース情報示等を行う表示部
である。
第3図は第1図に示すトレースモード設定部11の動作
を説明するためのフローチャートである。
第4図は第1図に示すトレース機能付きシステムコール
群15(の各システムコール)の動作を説明するための
フローチャートである。
第5図は第1図に示すトレース情報選択部17の動作を
説明するためのフローチャートである。
第6図は表示装置21に表示される画面例を示す図であ
る。
次に、この発明の一実施例の動作を、上記第1図乃至第
6図を適宜参照して説明する。
まず、トレースモード設定部11は、テスト対象となる
プロセス12−i (i = 1〜n)の起動指示があ
ると同プロセス12−1を起動し、この起動指示中の例
えば引数で示される指定トレースモードをそのプロセス
12−1のPCB (プロセスコントロールブロック)
に設定する(第3図ステップ1)。
またトレースモード設定部11は、テスト対象となるプ
ロセス12−1が既に起動されている場合には、同プロ
セス12−1への割込み指示を発生し、この割込み指示
中の例えば引数で示される指定トレースモードを同プロ
セス12−1のPCBに設定する(第3図ステップS2
)。
さて、トレース機能付きシステムコール群15の中のシ
ステムコールは、起動されているプロセス12−j (
j −1〜n)から呼出されると、まず自身を呼出した
プロセス12−jのPCBのトレースモードを調べ(第
4図ステップ511)、トレースモードOnの場合、即
ちプロセス状態がトレース採取を行うことを示している
場合、必要なトレース情報(例えば、時刻、プロセス1
2−jの識別子、自システムコールの識別子、引数、結
果の値など)を採取し、その情報レコード(トレース情
報レコード)をトレース用中間バッファ16に出力する
(第4図ステップ512)。そしてシステムコールは、
自身に固有の本来の処理を実行する(第4図ステップ8
13)。
なお、上記したステップS12の実行に際にトレースパ
ラメータファイル13に記述されたトレースパラメータ
を参照し、トレース用中間バッファ16へのトレース情
報レコード出力を行うか否かを判定し、その判定結果に
応じて同ステップS12を実行するようにすることも可
能である。
但し、この種の判定、特に複雑な判定をシステムコール
で多数行うと、トレースのためのオーバヘッドが大きく
なる。このため、パラメータファイル13に記述された
トレースパラメータをシステムコールにおいて利用する
ならば、前記■の条件、即ち自身がトレース採取を行う
べきか否か、および■の条件、即ち対象プロセスがトレ
ースを採るべきものであるか否かの判定を行う程度にと
どめ、最終的に使用するトレース情報レコードの選択に
ついては、後述するトレース情報選択部17に委ねるこ
とが好ましい。もし、システムコールにおいて■、■の
条件の判定を適用するならば、不要なトレース採取を行
うことが効率的に防止できる。
特に、階層的なつながりを持つプロセス群が順に起動さ
れるような場合、そのルートのプロセスのトレースモー
ドは後続のプロセスに伝わるため、必要のないプロセス
に対してもトレース採取を実行してしまう不都合がある
が、■の条件の判定を行うことで、このような不都合を
防くことが可能となる。
次に、トレース情報選択部17によるトレース情報レコ
ード選択動作を説明する。トレース情報選択部17は、
トレース用中間バッファ16からルーコード(トレース
情報レコード)をその記録順に取出しく第5図ステップ
521)、この取出したレコードをトレースパラメータ
ファイル13に記述されたトレースパラメータの示す条
件と照合し、この条件に合致するか否かを判定する(第
5図ステップ522)。もし、トレースパラメータの示
ス条件に合致しないレコードであれば、トレース情報選
択部17はステップS21に戻ってトレース用中間バッ
ファ16から次のルーコードを取出し、再びステップS
22の判定を行う。これに対してトレースパラメータの
示す条件に合致するレコードの場合には、トレース情報
選択部17は、該当レコードが実際に行うべき実行トレ
ースの情報レコードであるものとして、そのレコードを
最終的なトレースファイル18に選択出力する(第5図
ステップ823)。トレース情報選択部17はこのステ
ップ82Bを実行すると、ステップS21に戻ってトレ
ース用中間バッファ16から次のルーコードを取出し、
ステップS22の判定を行う。トレース情報選択部17
は以上の動作を、レコード終了まで繰返す。このように
してトレースファイル18には、トレース用中間バッフ
ァ16に格納されている多数のトレース情報レコードの
うち、トレースパラメータファイル13に記述されたト
レースパラメータの示す条件に合致するトレース情報レ
コードだけが選択的に格納される。
やがて、テスト対象のプロセス12−1〜12−nの実
行か終了し、トレースファイル18に必要なトレース情
報レコードが保存されると、トレース情報解析・表示機
構20(内の解析・表示部23)により、以下に述べる
トレース情報表示が行われる。
まず、システム動作解析者(テスト者)は、トレース情
報解析・表示機構20内の入力装置22を操作して、前
記した(a)〜(e)で代表される各種コマンドのうち
から必要なコマンドを入力する。
このコマンドは入力装置22から解析・表示部23内の
コマンド解析部31に与えられる。コマンド解析部31
は入力装置22から与えられたコマンドの解析を行い、
同コマンドの示す指示内容を制御部32に通知する。コ
マンド解析部31はコマンド解析部31からの指示内容
通知を受取ると、その指示内容に応じトレースファイル
入力部35に対してトレース情報レコードの入力指示3
3を与える。これにより、トレースファイル入力部35
は入力指示33で示される範囲のトレース情報レコード
をトレースファイル18から入力し、制御部32に渡す
制御部32は、トレースファイル入力部35から渡され
たトレース情報レコードを受けて画面イメージを作成し
、表示部36に対して表示指示34を与える。これによ
り表示部36は表示装置21への画面表示を行う。ここ
では表示装置21の表示画面には、第6図に示すように
、各プロセスで生じたイベントの表示のためにそれぞれ
専用のウィンドウ(プロセス#1用ウィンドウ、プロセ
ス#n用ウィンドウなど)が開かれる。また、各プロセ
ス用のウィンドウの他にシステム用のウィンドウも開か
れ、ここには入力されたコマンドの内容や、解析・表示
部23からのメツセージが表示される。システム動作解
析者は、コマンド入力を適宜行いながら必要なトレース
情報を所望の形態で表示装置21に表示させ、その表示
内容から複数プロセスが絡み合うソフトウェアシステム
のシステム動作解析を行り〇 以上の説明から明らかなように、この実施例では、次に
列挙する効果を得ることができる。
■ 各プロセス毎にトレースを取るか否かのプロセス状
態(トレースモード)が設定できるため、トレースモー
ドoffのときには、プロセスの実行時間に殆ど影響を
与えないで済む。
■ トレースモードがonであっても、必要なトレース
情報のみ採取できるので、実行時間への影響を最小限に
でき、またトレースファイル量も必要最小限にできる。
■ 必要なトレース情報のみを採取するトレース情報選
択部17の動作が、被テストプロセスの動作とはと独立
に行えるため、被テストプロセスの実行時間への影響を
最小限にとどめて複雑な選択条件の判定が行える。
■ 入力装置22からの前記(e)に示すようなスケー
ル指定コマンドの入力により、被テストプロセスの実行
履歴の詳細を、後から任意のスピードで何回でも再現で
き、効率的な動作解析が可能となる。
なお、前記実施例では、トレースファイル18が1つで
ある場合について説明したが、これに限るものではない
。例えば、−度採取したトレースファイル18を別のフ
ァイル(旧トレースファイル)として保存する手段と、
このトレースファイル保存の後にソフトウェアの一部を
修正して同様のトレース採取を行って新たなトレースフ
ァイル18を得た場合に、この新たなトレースファイル
18と保存しておいた旧トレースファイルの内容を比較
する手段を設けることにより、リグレッションテスト(
修正による劣化のないことの検査)を行うことも可能で
ある。
[発明の効果] 以上詳述したようにこの発明によれば、プロセス毎に設
定するトレースモードにより必要なプロセスだけを対象
にトレースが採れ、しかも必要なトレース情報だけが選
択的に採取できるので、実行時のオーバヘッドを最小に
し、トレースファイル量も最小にすることかでき、効率
的な実行トレースが行える。
また、この発明によれば、トレース結果の対話時検索・
表示により、複数プロセスから成る複雑なソフトウェア
システムのテストが効率よく行える。
【図面の簡単な説明】
第1図はこの発明の一実施例に係る実行トレースに基づ
くテスト支援システムのブロック構成図、第2図は第1
図に示す解析・表示部23のブロック構成図、第3図は
第1図に示すトレースモード設定部11の動作を説明す
るためのフローチャート、第4図は第1図に示すトレー
ス機能付きシステムコール群15の動作を説明するため
のフローチャート、第5図は第1図に示すトレース情報
選択部17の動作を説明するためのフローチャート、第
6図は表示画面例を示す図である。 10・・・トレース採取機構、11・・・トレースモー
ド設定部、12−1〜12−n・・・プロセス、13・
・・トレースパラメータファイル、15・・・トレース
機能付きシステムコール群、16・・・トレース用中間
バッファ、17・・・トレース情報選択部、18・・・
トレースファイル、20・・・トレース情報解析・表示
機構、21・・・表示装置、22・・・入力装置、23
・・・解析・表示部、31・・・コマンド解析部、32
・・・制御部、35・・・トレースファイル入力部。 出願人代理人 弁理士 鈴江武彦 第1 図 第4 図 第 図 第2 図

Claims (2)

    【特許請求の範囲】
  1. (1)各プロセスのトレースを採るか否かの状態を示す
    トレースモードを各プロセス毎に設定するトレースモー
    ド設定手段と、 各種実行トレースのうち実際にトレースを採る範囲を指
    定した条件情報が記述されたトレースパラメータファイ
    ルと、 上記プロセスから呼ばれて固有の処理を行う手段であっ
    て、上記プロセスから呼出された際に同プロセスのトレ
    ースモードを調べ、少なくともこのトレースモードの状
    態に応じてトレースを採ってそのトレース情報を得る複
    数のシステムコール時処理手段と、 このシステムコール時処理手段によって得られたトレー
    ス情報のうち上記トレースパラメータファイルに記述さ
    れた条件に合致した情報だけを選択するトレース情報選
    択手段と、このトレース情報選択手段によって選択され
    たトレース情報が保存されるトレースファイルと、この
    トレースファイルに保存されているトレース情報を用い
    た表示に必要な指示を与えるための入力手段と、 この入力手段から与えられた指示を解析し、その解析結
    果に応じて上記トレースファイルを検索して指示された
    範囲のトレース情報を指示された形態で画面表示する解
    析・表示手段と、 を具備することを特徴とする実行トレースに基づくテス
    ト支援システム。
  2. (2)上記システムコール時処理手段は、上記トレース
    モードおよび上記トレースパラメータファイルに記述さ
    れた条件の一部に従ってトレース採取を行うことを特徴
    とする第1請求項記載の実行トレースに基づくテスト支
    援システム。
JP2182616A 1990-07-12 1990-07-12 実行トレースに基づくテスト支援システム Pending JPH0471042A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2182616A JPH0471042A (ja) 1990-07-12 1990-07-12 実行トレースに基づくテスト支援システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2182616A JPH0471042A (ja) 1990-07-12 1990-07-12 実行トレースに基づくテスト支援システム

Publications (1)

Publication Number Publication Date
JPH0471042A true JPH0471042A (ja) 1992-03-05

Family

ID=16121405

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2182616A Pending JPH0471042A (ja) 1990-07-12 1990-07-12 実行トレースに基づくテスト支援システム

Country Status (1)

Country Link
JP (1) JPH0471042A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6351847B1 (en) 1998-04-22 2002-02-26 Nippon Telegraph And Telephone Corp. Method and device for acquiring usage data of application
JP2010146457A (ja) * 2008-12-22 2010-07-01 Kddi Corp 情報処理システムおよびプログラム
US9325964B2 (en) 2010-02-09 2016-04-26 Koninklijke Philips N.V. 3D video format detection

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6351847B1 (en) 1998-04-22 2002-02-26 Nippon Telegraph And Telephone Corp. Method and device for acquiring usage data of application
JP2010146457A (ja) * 2008-12-22 2010-07-01 Kddi Corp 情報処理システムおよびプログラム
US9325964B2 (en) 2010-02-09 2016-04-26 Koninklijke Philips N.V. 3D video format detection

Similar Documents

Publication Publication Date Title
JP3472026B2 (ja) ログ情報採取解析装置
JP2519009B2 (ja) マルチメディアコンピュ―タ診断システム
US7178135B2 (en) Scope-based breakpoint selection and operation
JPH0833845B2 (ja) ソフトウエア動作解析装置
AU2005200513B2 (en) Data processing system
JPH0471042A (ja) 実行トレースに基づくテスト支援システム
US20050022170A1 (en) Visual debugging interface
JPH02275539A (ja) デバッグ処理方式
US20050015677A1 (en) Method of executing a computer program
JPH05274180A (ja) ソフトウェアトレース装置
JPH07319730A (ja) テスト・デバッグ方法
JPH08286710A (ja) シーケンス制御モニタ
JPH0816432A (ja) テストプログラムの実行方法および装置
JP2812289B2 (ja) デバッグ装置およびそのデバッグ方法
JPH05257741A (ja) プログラムの実行性能計測システム
JPH02139644A (ja) 計算機システム
JPH0218617A (ja) プログラムソース最適化方式
JPH06250876A (ja) 対話型デバック支援システム
JPS59161736A (ja) プログラムアナライザ
JPH10207737A (ja) エミュレータ及びエミュレーションシステム
JPH0264747A (ja) 関数トレース・ステップトレース切り替え制御方式
JPH07114485A (ja) シミュレーションテストシステム実行方法
JPH05210469A (ja) ラッチデータ外部記憶方式
JPH02108135A (ja) プログラムトレース制御方式
JPH0822312A (ja) プログラマブルコントローラのプログラミング装置