JPS6380338A - 対話的シンボリツクデバツグ機構をベ−スとしたプログラムモジユ−ルの単体テスト支援システム - Google Patents

対話的シンボリツクデバツグ機構をベ−スとしたプログラムモジユ−ルの単体テスト支援システム

Info

Publication number
JPS6380338A
JPS6380338A JP61226475A JP22647586A JPS6380338A JP S6380338 A JPS6380338 A JP S6380338A JP 61226475 A JP61226475 A JP 61226475A JP 22647586 A JP22647586 A JP 22647586A JP S6380338 A JPS6380338 A JP S6380338A
Authority
JP
Japan
Prior art keywords
variable
undefined
statement
debugging
module
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
JP61226475A
Other languages
English (en)
Inventor
Naoto Ishikura
石倉 直人
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP61226475A priority Critical patent/JPS6380338A/ja
Publication of JPS6380338A publication Critical patent/JPS6380338A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、プログラムのテスト支援システムに関し、特
にプログラムモジュールの単体テストを簡便に行なうた
めの支援システムに関する。
〔従来の技iネi〕
通常、プログラムは複数のモジュールより構成され、各
モジュールが互いにデータや制御の授受を行なうことに
より、所定の機能を果たしている。
プログラムの開発に当たっては、プログラムの全体をテ
ストする前に、個々のモジュール毎に、そのモジュール
が所定の機能を果たしているか否かを確認する単体テス
トが行なわれる。この際、従来は、テスト対象となって
いるモジュールとインタフェイスを持つ他のモジュール
については、それを擬似するテスト用モジュールを、本
来のモジエールと別に作成していた。
(発明が解決しようとする問題点〕 上述した従来の単体テスト方式は、開発するプログラム
に組込まれる本来のモジュールの外に、テストの目的の
ため擬似モジュールを作ることを必要としているので、
生産性を低下させるという欠点がある。
擬似モジュールは、本来のモジュールと比べると、他モ
ジュールとのインタフェイスのみをシミュレートすれば
良いので、比較的簡単に作れるものであるが、大規模な
プログラムでそれを構成するモジュール数が多い場合は
、それらを準備する工数は無視できない。
また、擬似モジュールを簡箪に作ろうとすると、それが
シミュレートする動作は型にはまってしまい、単体テス
トにおけるテストパターンが制限されてしまう、逆に、
様々なテストパターンをシミュレートしようとすると、
擬似モジュールの作成に多大の工数を必要とし、生産性
を著しく低下させてしまう。
本発明の目的は、擬似モジュールの作成を行なうことな
く、多様性に富んだテストゲースを用いてモジュール単
体テストを行なうことができるテスト支援システムを提
供することにある。
C問題点を解決するための手段〕 本発明は上記目的を達成するために、ブレークポイント
と変数値との設定が可能な対話的シンボリックデバッグ
機構を有するテスト支援システムにおいて、 デバッグ対象プログラムに、シンボリックデバッグを可
能とするデバッギングデータベースを付加することを基
本とし、前記デバッギングデータベース内に各ステート
メント毎の参照変数リストと、未定義変数に対し変数値
を与えるための未定義変数割付領域とを追加し、且つ、
外部参照を行なうステートメントにブレークポイントを
設定するための外部参照箇所検索手段と、ブレークポイ
ントに到達したときに当該ステートメントが参照してい
る変数名をその値と共に表示]iZに表示する参照変数
自動表示手段と、未定義変数に変数値が与えられた時点
で、デバッギングデータベース内の前記未定義変数割付
領域に変数値を設定する未定義変数割付手段とを有する
〔作用〕
デバッギングデータベースに基づいて外部参照箇所検索
手段によりデバッグ対象プログラム中における外部参照
を行なうステートメントが検索され、対話的シンボリッ
クデバッグ機構によりそのステートメントにブレークポ
イントを設定すると、設定されたブレークポイントに実
行の制御が進んだ時点で、参照変数自動表示手段によっ
てそのステートメントが参照している変数名とその値と
がデバッギングデータベースに基づいて求められて表示
装置に表示され、対話的シンポリンクデバソグ機構によ
り未定義変数に変数値を与えると、未定義変数割付手段
によりデバッギングデータベース内の未定義変数割付領
域にその変数値が設定される。
〔実施例〕
次に本発明の実施例について図面を参照して説明する。
第1図は本発明の実施例の全体構成を示す図であり、端
末装置1と、ブレークポイントと変数値との設定が可能
な対話的シンボリックデバッグ機構2と、外部参照箇所
検索手段3と、テスト対象モジュール4と、デバソギン
グデータヘース5と、参照変数自動表示手段6と、未定
義変数割付手段7とで構成されている。
第2図は第1図のデバソギングデータヘース5の実施例
の構成図であり、8はデハフグ対象モジュールとステー
トメントリンクされ、アドレス。
行番号、ステートメントタイプおよび参照変数チェイン
の各情報を保持するステートメント表、9はステートメ
ント表8の参照変数チェインによって関連付けられ、変
数ポインタおよび参照タイプの各情報を保持する参照変
数リスト、10はテスト対象モジュール4と変数リンク
される変数表であり、参照変数リスト9の変数ポインタ
によって指示されたアドレス、変数名、属性情報および
未定義フラグを格納する。また、11は未定義変数割付
領域である。
デバッグ対象となるテスト対象モジュール4は、ソース
プログラムからコンパイラやリンカにより実行可能形式
に翻訳され、その際に本発明を実施する上で必要な各種
情報がソースプログラムより抽出され、デバッギングデ
ータベース5に納められる。
端末装置1より単体テストの開始が指示されると、対話
的シンボリックデバッグ機構2は、テスト対象モジュー
ル4とデバッギングデータベース5を内部のメモリ上に
ロードする。次に、外部参照箇所検索手段3を用いて、
テスト対象モジュール4中における他モジュールを呼出
すステートメントや、他モジュールで定義されるべき外
部変数を参照しているステートメントを探し出し、そこ
にブレークポイントを設定する。
外部参照箇所の検索は例えば次のように行なわれる。
デバッギングデータベース5の中のステートメント表8
を検索し、コンパイラで設定されたステートメントタイ
プが、他モジュールを呼出すものであるとき、その表に
よって示されるアドレスにブレークポイントを設定する
。また、そのステートメントが参照する変数を参照変数
リスト9により知り、変数表10でその変数の属性を調
べ、それが他のモジュールで定義されるべき変数である
場合に、そのステートメントに対しブレークポイントを
設定する。
さて、ブレークポイントの設定の後、対話的シンボリッ
クデバッグ機構2は、通常のデバッグモードでテスト対
象モジュール4を実行し、上記で設定したブレークポイ
ントに到達すると、次のように処置する。
(1)未定義変数に対する値の代入を行なうときステー
トメント表8のステートメントタイプと参照変数リスト
9より、未定義変数に対して、その時点で定まったある
値を設定すれば良いことが示されている場合は、未定義
変数割付手段7により、未定義変数割付領域11にその
変数の領域を確保し、変数表10の未定義フラグをOF
Fにすると共に、そのアドレスを金側付けた領域を指す
ように変更する。
(2)外部モジュールを呼出すとき ステートメント表8のステートメントタイプにより、他
のモジュールの呼出しステートメントであることが示さ
れている場合は、参照変数リスト9には、モジュール名
とパラメータ変数が記録されている。このモジュール名
およびパラメータ変数の変数名と、その時点での変数値
を参照変数自動表示手段6により端末装置1の画面に表
示し、当該端末装置1からのデバッグコマンドの投入を
間合せる。これに対し、端末利用者は、対話的シンボリ
ックデバッグ機構2が有する変数値設定機能により、パ
ラメータ変数値を設定することができる。未定義のパラ
メータ変数に値が設定されるときは、未定義変数割付手
段7により、(1)の場合と同様、変数領域が割付けら
れる。
(3)  その他の場合(例;代人文の右辺に未定義変
数がある場合) (2)の場合と同様にして、そのステートメントで参照
している全ての変数名とその時点の変数値を端末装置1
の画面に表示し、デバッグコマンドによる変数値の設定
の機会を端末利用者に対して与える。これにより、未定
義変数に値を設定することができる。
〔発明の効果〕
以上説明したように、本発明は、モジュール単体テスト
において通常使用される。ブレークポイントと変数値と
の設定が可能な対話的シンポリソクデバノグ機構に、他
のモジュールを呼出したり、他のモジュールで定義され
るべき変数を参照する時点で、端末に問合せを行なわせ
、これに応答して当該モジュールの実行の結果テスト対
象モジエールに返却される変数の値や未定義変数の値を
端末より適宜入力することにより、 fil擬似モジュールの作成を行なうことなく、(2)
多様性に富んだテストケースを用いて、モジュール単体
テストが行なえる効果がある。
【図面の簡単な説明】
第1図は本発明の実施例の全体構成図および、第2図は
デバッギングデータベースの実施例の構成図である。 図において、1・・・端末装置、2・・・対話的シンボ
リックデバッグ機構、3・・・外部参照箇所検索手段、
4・・・テスト対象モジュール、5・・・デバッギング
データベース、6・・・参照変数自動表示手段、7・・
・未定義変数割付手段、8・・・ステートメント表、9
・・・参照変数リスト、10・・・変数表、11・・・
未定義変数割付領域。

Claims (1)

  1. 【特許請求の範囲】 ブレークポイントと変数値との設定が可能な対話的シン
    ボリックデバッグ機構を有するテスト支援システムにお
    いて、 デバッグ対象プログラムに、シンボリックデバッグを可
    能とするデバッギングデータベースを付加することを基
    本とし、前記デバッギングデータベース内に各ステート
    メント毎の参照変数リストと、未定義変数に対し変数値
    を与えるための未定義変数割付領域とを追加し、且つ、
    外部参照を行なうステートメントにブレークポイントを
    設定するための外部参照箇所検索手段と、ブレークポイ
    ントに到達したときに当該ステートメントが参照してい
    る変数名をその値と共に表示装置に表示する参照変数自
    動表示手段と、未定義変数に変数値が与えられた時点で
    、デバッギングデータベース内の前記未定義変数割付領
    域に変数値を設定する未定義変数割付手段とを有するこ
    とを特徴とする対話的シンボリックデバッグ機構をベー
    スとしたプログラムモジュールの単体テスト支援システ
    ム。
JP61226475A 1986-09-25 1986-09-25 対話的シンボリツクデバツグ機構をベ−スとしたプログラムモジユ−ルの単体テスト支援システム Pending JPS6380338A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61226475A JPS6380338A (ja) 1986-09-25 1986-09-25 対話的シンボリツクデバツグ機構をベ−スとしたプログラムモジユ−ルの単体テスト支援システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61226475A JPS6380338A (ja) 1986-09-25 1986-09-25 対話的シンボリツクデバツグ機構をベ−スとしたプログラムモジユ−ルの単体テスト支援システム

Publications (1)

Publication Number Publication Date
JPS6380338A true JPS6380338A (ja) 1988-04-11

Family

ID=16845680

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61226475A Pending JPS6380338A (ja) 1986-09-25 1986-09-25 対話的シンボリツクデバツグ機構をベ−スとしたプログラムモジユ−ルの単体テスト支援システム

Country Status (1)

Country Link
JP (1) JPS6380338A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01266636A (ja) * 1988-04-18 1989-10-24 Nec Corp 例外データ表示方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01266636A (ja) * 1988-04-18 1989-10-24 Nec Corp 例外データ表示方式

Similar Documents

Publication Publication Date Title
CN104461898B (zh) 应用测试的方法、中控服务器、测试终端及系统
US5926638A (en) Program debugging system for debugging a program having graphical user interface
US5347649A (en) System for dynamically generating, correlating and reading multiprocessing trace data in a shared memory
US7178135B2 (en) Scope-based breakpoint selection and operation
JPH02272645A (ja) プログラム・デバツグ支援方法
JP2009002950A (ja) 少なくとも1つの電子的な制御システムをテストするためのテスト装置並びにテスト装置を作動するための方法
CN112380800B (zh) 自动评测的在线fpga实验平台及相关方法
JP3349057B2 (ja) マルチタスク処理装置、マルチタスク処理方法およびマルチタスク処理表示方法
KR960009118A (ko) 집적회로 시뮬레이터 및 집적회로 시뮬레이션방법
JPS6380338A (ja) 対話的シンボリツクデバツグ機構をベ−スとしたプログラムモジユ−ルの単体テスト支援システム
CN106126430A (zh) 一种代码覆盖率的测试方法及装置
RU2729210C1 (ru) Комплекс тестирования программного обеспечения электронных устройств
JPH01307837A (ja) Mpuシミュレーション方法及びmpuシミュレータ
JPH02220145A (ja) プログラムトレース方式
JP2001166966A (ja) デバッガにおける被テストプログラムの実行環境管理方法
JPS63182752A (ja) 結果保存可能な単体テスト支援システム
JPH06274567A (ja) 論理シミュレーション装置
JPS63131238A (ja) 論理シミユレ−タ
JPH0327452A (ja) プログラムデバッグ方式
JPS63228239A (ja) マクロ展開のテスト方式
JPH06242943A (ja) ソースコードレベルデバッグ装置
JPS63234325A (ja) テスト用ソ−スフアイルの一元化方式
JPH04192043A (ja) プログラムの機能テスト装置
JPH09160806A (ja) デバッグ支援方法および装置
JPS63257845A (ja) プログラムモジユ−ルの単体テスト支援システム