JPH02226441A - ソフトウェアテスト装置 - Google Patents

ソフトウェアテスト装置

Info

Publication number
JPH02226441A
JPH02226441A JP1047143A JP4714389A JPH02226441A JP H02226441 A JPH02226441 A JP H02226441A JP 1047143 A JP1047143 A JP 1047143A JP 4714389 A JP4714389 A JP 4714389A JP H02226441 A JPH02226441 A JP H02226441A
Authority
JP
Japan
Prior art keywords
execution
mode
program
test
contents
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
JP1047143A
Other languages
English (en)
Inventor
Shigeharu Hirao
平尾 繁晴
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 JP1047143A priority Critical patent/JPH02226441A/ja
Publication of JPH02226441A publication Critical patent/JPH02226441A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

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

Description

【発明の詳細な説明】 [発明の目的コ (産業上の利用分野) 本発明は、ソフトウェアのテストを行うソフトウェアテ
スト装置に関する。
(従来の技術) 従来より、ソフトウェアのテストを行う場合、端末から
の指令によりデバッグモードを指定して被テストプログ
ラムを実行し、その状態を確認している。
デバッグモードには、ノーマルランモード、シングルス
テップモードの2f!I類があり、特にシングルステッ
プモードは、■命令実行毎にCPUの内部状態を端末に
表示する 1命令実行モードと、 ■命令毎にCPUの
内部状態を内部状態バッファに格納しておき、披テスト
プログラムの実行終了後、内部状態バッファに格納され
ている一連の情報を端末に表示するn命令実行モードと
を有している。
第2図は、このようなソフトウェアテストの際に用いら
れるソフトウェアテスト装置の一例を示すものである。
まず、端末1からノーマルランモードの指令が与えられ
ると、内部状態バッファ2およびタイマ3を有する制御
装置4がCPU 5の実行モードをノーマルランモード
に設定した後、スタート信号を発生ずる。
スタート信号を受信したCPIJ 5は、披テストプロ
グラムのテストを通常の速度で実行する。
次に、端末1から実行停止の指令が与えられると、制御
装置4がCPU 5の実行を停止させるためのストップ
信号を発生し、ストップ信号を受信したCPU 5は、
ノーマルランモードでの実行を停止する。この後、制御
装置4は、端末1からの指令に応じてCPU 5の内部
状態を読取ったり、タイマ3により実行時間を求めたり
し、これらの結果を端末1に表示する。
また、シングルステップモードの 1命令実行モードの
場合は、上記同様に端末1からの指令に基づき、制御装
置4がCPU 5の実行モードをシングルステップモー
ドに設定した後スタート信号を発生することにより、C
PU 5が1命令実行後、自動的に停止し、この後制御
装置4はCPU 5の内部状態を端末1に表示する。
さらに、シングルステップモードのn命令実行モードの
場合は、制御装置4が1命令実行毎にCPU 5の内部
状態を内部状態バッファ2に格納し、これをn回繰返し
た後、内部状態バッファ2の内容を端末1に表示する。
従って、ノーマルランモードでは被テストプログラムを
通常の実行速度で動作させるので、リアルタイム性が保
証される。またシングルステップモードは、被テストプ
ログラムの 1命令実行毎のCPU内部状態が分るので
、被テストプログラム中の不具合箇所の特定が容易であ
る。
(発明が解決しようとする課題) しかしながら、上述したノーマルランモードでは、披テ
ストプログラム実行中のCPU 5の内部状態の分解能
が劣る。つまり、実行開始から停止までの途中の段階で
のCPU 5の内部状態を確認することが不可能である
ため、不具合箇所の特定が困難となる。
またシングルステップモードては、 1命令毎に実行を
停止したり、■命令毎にCPU 5の内部状態の表示等
のだめの処理を行うため、リアルタイム性が大幅に低下
する。つまり、通常の実行速度よりかなり遅い速度で披
テストプログラムが実行されることによるものであり、
これは、機器組込みマイコンのプログラム等のように、
微妙なタイミングによる入出力処理が要求されるプログ
ラムのテストにおいては致命的な欠陥になる。
本発明は、このような事情により成されたもので、被テ
ストプログラムの実行におけるリアルタイム性およびテ
スト実行手段の内部状態の分解能のトレードオフの選択
範囲を向上させることができ′るソフトウェアテスト装
置を提供することを目的とする。
[発明のtlが成コ (課題を解決するための手段) 本発明のソフトウェアテスト装置は、上記l」的を達成
するために、デバッグモードを有し選択されたモードに
基づき被テストプログラムの実行を行うテスト実行手段
を具備したソフトウェアテスト装置において、テスト実
行手段が、プログラムカウンタの内容が不連続に変化し
た場合に停止する機能であるブランチストップモードお
よびスタックポインタの内容が変化した場合に停止−す
る機能であるスタック操作ストップモードをA IQ 
シているものである。
(作 用) 本発明のソフトウェアテスト装置では、テスト実行手段
が、被テストプログラムを通常の実行速度で動作させる
ノーマルランモードおよび1命令毎にその実行を停止さ
せるシングルステップモードに加え、プログラムカウン
タの内容が不連続に変化した場合に停止する機能である
ブランチストップモードおよびスタックポインタの内容
が変化した場合に停止する機能であるスタック操作スト
ップモードを具備している。
すなわち、ブランチストップモードは、ブランチ命令、
サブルーチンのコール命令、リターン命令、割込みから
のリターン命令等の実行時および割込発生時に停止1−
するため、これを利用すれば披テストプログラムの命令
の実行順序を完全に把握することができるので、被テス
トプログラムのテスト網羅率の測定等を行う場合に有効
である。
またスタック操作ストップモードは、サブルチンのコー
ル命令、リターン命令、割込みからのリターン命令等の
実行時および割込発生時に停止するため、これを利用す
れば彼テストプログラムの命令の実行中のサブルーチン
の呼出しや割込みの発生を完全に把握することができる
ので、例えばタイマとの組合せによりルーチン毎の実行
時間の測定等を行う場合に有効である。
(実施例) 以下、本発明の実施例の詳細を図面に基づいて説明する
第1図は、本発明のソフトウェアテスト装置の一実施例
を示すものである。
なお、端末1および制御装置4に関しては、第2図のも
のと同じ構成をとるため、ここでは図示を省略する。
同図に示すように、CPII 6には、プログラムカウ
ンタ(PC)不連続点検出回路7およびPC用バッファ
8を有したプログラムカウンタ(PC) 9と、スタッ
クポインタ(sp)変化検出回路1oおよびSP用バッ
ファ11を有したスタックポインタ(SP)12と、レ
ジスタ13とがiえられている。
PC不連続点検出回路7は、PC9が不連続に変化した
ことを検出する。
PC用バッファ8は、PC9の変化の直前と直後のPC
9の内容を格納する。
PC9は、次に実行される命令のアドレスを指定する。
SP変化検出回路10は、5P12の内容が変化したこ
とを検出する。
SP用バッファ11は、5P12の変化の直前と直後の
SP]2の内容を格納する。
5P12は、最後にスタックに格納されたデータのアド
レスに関する情報を保持する。
このような構成のソフトウェアテスト装置は、次のよう
な動作を行う。
ます、ブランチストップモードによってソフトウェアテ
ストの網羅率のΔIIJ定を行う場合について説明する
まず、端末1から網羅率の測定の指令が与えられると、
制御装置4かCPU 6の実行モードをブランチストッ
プモードに設定した後スタート信号を発生する。
スタート信号を受信したCPU 6は、披テストプログ
ラムのテストを実行し、PC9の内容が不連続に変化し
たとき、PC不連続点検出回路7がその不連続を検出す
ることによってその実行を停止する。
つまり、被テストプログラムのブランチ命令、サブルー
チンのコール命令、リターン命令、割込みからのリター
ン命令等の実行時や割込発生時に停止する。
171 脚装置4は、CPLI 6の実行が停止すると
、CPU 6の停止直前と直後のPC9の内容を読出し
、内部状態バッファ2に格納する。
このように、CPU 6は、彼テストプログラムの実行
をPC9の内容が不連続に変化する毎に停止し、制御装
置4がCPU 6の停止直前と直後のPC9の内容を読
出し、内部状態バッファ2に格納する。
被テストプログラムの実行が終了したとき、制御装置4
の内部状態バッファ2の内容を読み出すと、被テストプ
ログラムの実行経路が完全に分るので、この情報から網
羅率を求め端末1に表示する。
次に、スタック操作ストップモードによってルーチン毎
の実行時間のΔIIJ定を行う場合について説明する。
まず、端末1からルーチン毎の実行時間の表示の指令が
与えられると、制御装置4がCPU 6の実行モードを
スタック操作ストップモードに設定した後、スタート信
号を発生する。
スタート信号を受信したCPU 6は、披テストプログ
ラムのテストを実行し、5P12の内容が変化したとき
、SP変化検出回路10がその変化を検出することによ
ってその実行を停止する。
つまり、被テストプログラムのサブルーチンのコール命
令、リターン命令、割込みからのリターン命令等の実行
時や割込発生時に停止する。
制御装置4は、CPU 6の実行が停止すると、その停
止直前と直後のPO2の内容と、CPU 6の停止後の
5P12の内容およびタイマ3の内容を読出し、それぞ
れを内部状態バッファ2に格納する。
このように、CPU 6は、披テストプログラムの実行
を5P12の内容が変化する毎に停止し、制御装置4が
停止直前と直後のPO2の内容と、CPIJ 6の停止
後の5P12の内容およびタイマ3の内容を読出し、内
部状態バッファ2に格納する。
被テストプログラムの実行が終了したとき、制御装置4
の内部状態バッファ2の内容を読み出すと被テストプロ
グラム内の各ルーチンのコール時とリターン時の時刻が
分るので、この情報からルーチン毎の実行時間を求め端
末1に表示する。
具体的には、以下のようにしてルーチン毎の実行時間を
求める。
すなわち例えば、5P12が増加方向に変化したとき、
ルーチンのコールが行われるCPU 6の場合には、5
P12が減少方向に変化したときルーチンからのリター
ンが行われていることが分る。それラノトキに、PO2
の内容を調べればどのルーチンをコールしたか、あるい
はどのルーチンへリターンしたかが分る。また必ずしも
一段ずつリターンするとは限らないプログラムの場合で
あってもリターン先のアドレスが分っているので、各ル
ーチンの呼出し関係は完全に把握できる。またコール、
リターン時のタイマ3の内容が保存されているので、各
ルーチンの実行時間の測定が可能である。
このように、本実施例でのブランチストップモードは、
PO2の内容が不連続に変化した場合に停止するモード
であり、このモードにより披テストプログラムの命令の
実行順序は完全にトレースできるため、特に披テストプ
ログラムのテストの網羅率のill定を行う場合等には
有効である。
また本実施例でのスタック操作ストップモードは、5P
12の内容が変化した場合に停止するモードであり、こ
のモードにより彼テストプログラムの実行中のサシルー
チンの呼出しや割込み発生は完全にトレースできるため
、このモードをタイマ3と組合せることにより、特に披
テストプログラムのルーチン毎の実行時間のAl11定
等を行う場合に有効である。
[発明の効果] 以上説明したように、本発明のソフトウェアテスト装置
によれば、被テストプログラムの実行におけるリアルタ
イム性およびテスト実行手段の内部状態の分解能のトレ
ードオフの選択範囲を向上させることができる。
【図面の簡単な説明】
第1図は本発明のソフトウェアテスト装置の一実施例を
示すブロック図、第2図は従来のソフトウェアテスト装
置を示すブロック図である。 1・・・端末、2・・・内部状態バッファ、3・・・タ
イマ、4・・・制御装置、5,6・・・CPU 、7・
・・PC不連続点検出回路、8・・・PC用バッファ、
9・・・プログラムカウンタ、10・・・SP変化検出
回路、11・・・SP用バッファ、12・・・スタック
ポインタ、]3・・・レジスタ出願人      株式
会社 東芝

Claims (2)

    【特許請求の範囲】
  1. (1)デバッグモードを有し選択されたモードに基づき
    被テストプログラムの実行を行うテスト実行手段を具備
    したソフトウェアテスト装置において、 前記テスト実行手段が、プログラムカウンタの内容が不
    連続に変化した場合に停止する機能であるブランチスト
    ップモードおよびスタックポインタの内容が変化した場
    合に停止する機能であるスタック操作ストップモードを
    具備している ことを特徴とするソフトウェアテスト展開装置。
  2. (2)前記テスト実行手段が、前記ブランチストップモ
    ードによる被テストプログラムの実行停止直前および直
    後のプログラムカウンタの内容を保存しておく機能と、
    前記スタック操作ストップモードによる被テストプログ
    ラムの実行停止直前および直後のスタックポインタの内
    容および停止直後のプログラムカウンタの内容を保存し
    ておく機能とを具備していることを特徴とする請求項1
    記載のソフトウェアテスト展開装置。
JP1047143A 1989-02-28 1989-02-28 ソフトウェアテスト装置 Pending JPH02226441A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1047143A JPH02226441A (ja) 1989-02-28 1989-02-28 ソフトウェアテスト装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1047143A JPH02226441A (ja) 1989-02-28 1989-02-28 ソフトウェアテスト装置

Publications (1)

Publication Number Publication Date
JPH02226441A true JPH02226441A (ja) 1990-09-10

Family

ID=12766884

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1047143A Pending JPH02226441A (ja) 1989-02-28 1989-02-28 ソフトウェアテスト装置

Country Status (1)

Country Link
JP (1) JPH02226441A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11203166A (ja) * 1998-01-19 1999-07-30 Nec Corp スタックポインタトレース装置、スタックポインタトレース方法及び記録媒体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11203166A (ja) * 1998-01-19 1999-07-30 Nec Corp スタックポインタトレース装置、スタックポインタトレース方法及び記録媒体

Similar Documents

Publication Publication Date Title
JPH02226441A (ja) ソフトウェアテスト装置
JPH0283749A (ja) マイクロプロセッサの内部割込み制御方式
JPH02118733A (ja) タスクの実行制御方式
JP2595718B2 (ja) インサーキットエミュレータ
JPH0362136A (ja) サブルーチン呼び出し回数測定方式
JPH03294934A (ja) 高級プログラム言語用デバッガ
JPH04181336A (ja) 計算機システム
JPS62139050A (ja) 保守診断処理装置管理による命令試験方式
JPS63282539A (ja) プログラム任意区間のcpu時間測定方式
JP2775830B2 (ja) 命令頻度測定方式
JPH0225939A (ja) テストカバレージ計測ツール
JPH02230436A (ja) プログラム実行時間計測方法とその装置
JPH0354645A (ja) プログラム実行時間測定装置
JPH05324402A (ja) プログラムのテスト状態計測方式
JPS63289654A (ja) プログラム分岐命令モニタ方式
JPS63170739A (ja) 分岐予測試験方式
JPH0410139A (ja) 知識ベースを利用した動的バグ検出方式
JPH0254319A (ja) 時間間隔計測方法
JPH04131937A (ja) デバッグ例外におけるステップトレース機能試験方法
JPH0378051A (ja) キャッシュメモリーのヒット率測定装置
JPH02216546A (ja) 情報処理システムのプログラムデバグ支援方式
JPH03119435A (ja) プログラムトレース方式
JPS58186856A (ja) プログラム実行履歴収集方式
JPH05313941A (ja) コンピュータプログラムのデバッグ方法
JPS63193235A (ja) 条件コ−ド検査方法