JP2003271415A - 実行履歴記録装置、ブレーク命令設定装置、及びプログラム - Google Patents

実行履歴記録装置、ブレーク命令設定装置、及びプログラム

Info

Publication number
JP2003271415A
JP2003271415A JP2002068703A JP2002068703A JP2003271415A JP 2003271415 A JP2003271415 A JP 2003271415A JP 2002068703 A JP2002068703 A JP 2002068703A JP 2002068703 A JP2002068703 A JP 2002068703A JP 2003271415 A JP2003271415 A JP 2003271415A
Authority
JP
Japan
Prior art keywords
inspection
execution
function
script
history 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.)
Granted
Application number
JP2002068703A
Other languages
English (en)
Other versions
JP4061931B2 (ja
Inventor
Yuko Hayashi
祐子 林
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.)
Denso Corp
Original Assignee
Denso 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 Denso Corp filed Critical Denso Corp
Priority to JP2002068703A priority Critical patent/JP4061931B2/ja
Publication of JP2003271415A publication Critical patent/JP2003271415A/ja
Application granted granted Critical
Publication of JP4061931B2 publication Critical patent/JP4061931B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Testing And Monitoring For Control Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【課題】 検査スクリプトに基づいて検査開始位置を自
動的に判断できる実行履歴記録装置を提供し、検査スク
リプトに基づく結合検査の自動化を実現する。 【解決手段】 検査開始関数の名称及び当該検査開始関
数をコールする親関数の名称が記述された検査スクリプ
トを取得し(S100)、検査スクリプトに記述された
関数名を取得する(S110)。そして、ソースプログ
ラムの記述ファイルをオープンし(S120)、実行部
分より対象関数を検索し(S130,S140)、検査
開始関数をコールする親関数の行番号を抽出して(S1
60)、検査開始位置を示すブレーク命令を検査スクリ
プトに追加する(S170)。実行履歴記録装置は、検
査スクリプトに追加されたブレーク命令に基づき、検査
開始位置を判断して、処理実行の履歴を記録する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、検査スクリプトに
基づく結合テストの自動化技術に関する。
【0002】
【従来の技術】近年、自動車等の車両にも多くのコンピ
ュータシステムが採用されており、車両の随所にソフト
ウェアを搭載した電子制御装置が配置されるようになっ
た。そのため、今日では、ソフトウェア開発工数の削減
が重要な課題となっている。特に、車載用のコンピュー
タシステムに搭載される制御ソフトウェアでは、車両側
の部品変更や仕様変更などでソフトウェアの変更を余儀
なくされる。
【0003】そこで、近年のプログラム開発ではオブジ
ェクト指向設計が主流となってきた。その一つの現れ
が、車両部品やその機能に着目し、その単位でプログラ
ムを作成するという手法である。このようにすれば、プ
ログラムの再利用性が高くなるからである。なお、部品
単位や機能単位のプログラムを以下では「部品プログラ
ム」という。
【0004】一方、このようなプログラムの検査では、
部品プログラム個々の単体検査を行い、次に、部品プロ
グラムを結合させた結合検査を行うのが一般的である。
部品検査では部品プログラムの個々の動作を検査するの
に対し、結合検査においては、部品プログラムが検査仕
様書にある通りの順序でコールされているかや、入力デ
ータを与えて得られる演算結果が予め用意される出力デ
ータと同一であるかといった検査が主となる。
【0005】そしてこのような結合検査は、図6(a)
に示すように、部品プログラムを結合したソースプログ
ラム中の検査対象120に対応させてドライバ110を
用意して行うことが考えられる。これによって、ドライ
バ110により、検査対象120を、いわゆるシミュレ
ータと呼ばれる実行履歴記録装置が実行し、検査するこ
とができる。
【0006】しかし、この場合、検査対象120に対し
て個々にドライバ110を用意する必要があり、また、
ドライバ110と検査対象120という単位でコンパイ
ル・リンクする必要がある。特に、車両制御用の大規模
なプログラムであれば、検査対象120が数千といった
オーダーで存在するため、検査対象120に対応するド
ライバ110の準備や、検査対象120とドライバ11
0をセットにしてコンパイル・リンクするのに多大な時
間を要してしまう。
【0007】これを解決するための手法として、図6
(b)に示すように、ソースプログラム81全体を実行
履歴記録装置で実行し、検査対象81aを、検査情報の
記述される検査スクリプト82で特定することが考えら
れる。この場合、検査対象81a毎に検査スクリプト8
2を用意する必要はあるが、ドライバ41をソースプロ
グラム81と共にコンパイル・リンクすれば、後は、検
査スクリプト82を変えるだけで、実行履歴記録装置に
よる複数の検査対象81aに対する検査が可能となる。
つまり、検査対象81aが多くなっても、コンパイル・
リンクが発生しないため、検査工数が削減できるのであ
る。
【0008】本発明は、このような形態の結合検査を前
提とする技術である。
【0009】
【発明が解決しようとする課題】このとき、図7に示す
ように、関数Aからコールされる関数Bを検査開始関数
とする場合、すなわち、関数Aからコールされる関数B
以下が検査対象81aとなる場合を考える。
【0010】このような場合、従来の実行履歴記録装置
では、次のような問題があった。それは、関数Aから関
数Bがコールされる時点を特定できず、関数Bに制御が
移ってからしか関数Bの実行を判断できないことであ
る。つまり、図7中の記号bの時点を判断することはで
きても、記号aの時点を判断することができなかった。
記号bの時点で関数Bの実行が判断できても、関数Aが
コール元であるのか否かを判断できないため、検査開始
位置を特定できない。
【0011】そのため、作業者が、手動で実行履歴記録
装置を操作して検査開始位置を特定したり、あるいは、
関数Bがコールされる関数A中の行番号を検査スクリプ
トに予め書き込んだりする必要があり、この意味で完全
な自動化がなされていなかった。
【0012】本発明は、検査スクリプトに基づいて検査
開始位置を自動的に判断できる実行履歴記録装置を提供
し、検査スクリプトに基づく結合検査の自動化を実現す
ることを目的とする。
【0013】
【課題を解決するための手段及び発明の効果】本発明の
実行履歴記録装置は、単位機能毎に細分化された部品プ
ログラムにて構成される処理プログラムを実行し、検査
情報が記述された検査スクリプトに基づいて処理実行の
履歴を記録する。ここでいう部品プログラムは、オブジ
ェクト指向設計でいうところのオブジェクトに該当す
る。その場合の検査情報は、オブジェクト間メッセージ
通信の順序を示すシナリオ情報であることが一例として
考えられる。
【0014】ここで、実行履歴記録装置は、検査スクリ
プト中に処理プログラムにおける検査開始位置を示すブ
レーク命令があると、当該検査開始位置を判断して履歴
を記録することが可能となっている。このような基本構
成を下に、本発明は特に、スクリプト取得手段、ソース
取得手段、位置特定手段、及びブレーク命令設定手段を
備える。
【0015】スクリプト取得手段は、上述した検査スク
リプトを取得する手段であり、この検査スクリプトに
は、少なくとも、処理プログラム中の検査開始関数及び
当該検査開始関数をコールする親関数が記述されてい
る。ソース取得手段は、処理プログラムのソース記述を
取得する。
【0016】そして、位置特定手段が、取得されたソー
ス記述に基づき、親関数から検査開始関数がコールされ
る位置を検査開始位置として特定し、ブレーク命令設定
手段によって、その特定された位置を示すブレーク命令
が検査スクリプトに追加される。
【0017】これによって、検査スクリプトに基づいて
自動的にブレーク命令が設定されるため、検査開始位置
を自動的に判断でき、検査スクリプトに基づく結合検査
が自動化される。このような自動化により、複数の検査
スクリプトに基づく連続した実行履歴の記録が可能とな
る。
【0018】なお、特に車両制御用の処理プログラム
は、例えば仕向地の違いにより、実行される部分と実行
されない部分とを含む可能性がある。いわゆるコンパイ
ラによる条件コンパイルがなされることがある。そこ
で、さらに、処理プログラムのソース記述の中の実行部
分を特定する実行部分特定手段を備えるようにするとよ
い(請求項2)。この場合、ソース取得手段は、実行部
分特定手段にて実行部分の特定されたソース記述を取得
する。
【0019】これによって、実行部分に検査開始位置を
特定でき、条件コンパイルにも対応できる。ところで、
実行履歴記録装置は、検査開始位置を判断してから、親
関数が再び実行されるまで、履歴を記録する構成とする
ことが考えられる(請求項3)。親関数から検査開始関
数がコールされた後、最終的に検査開始関数の終了で親
関数へ実行が移るため、この期間に履歴を記録すれば、
検査開始関数以下の関数に対し、適切に履歴を記録でき
る。
【0020】また、検査スクリプトには、検査対象の変
数に対する入力データを記述しておき、検査開始位置を
判断すると、入力データの設定を行うようにすることが
考えられる(請求項4)。このようにすれば、検査のた
めの入力データの設定までが自動化される。
【0021】さらに、検査スクリプトには、入力データ
に対応する解である出力データを記述しておいてもよい
(請求項5)。変数値が正しいか否かを簡単に比較チェ
ックできるからである。この意味では、さらに、検査ス
クリプトに記述された出力データを用いて、検査対象の
変数のチェックを行うようにしてもよい(請求項6)。
このようにすれば、演算結果のチェックまでが自動化さ
れることになり、さらに便利である。
【0022】以上は、実行履歴記録装置の発明として説
明してきたが、本発明は、検査スクリプトの情報に基づ
いて、ブレーク命令を追加することに特徴がある。した
がって、ブレーク命令設定装置の発明として実現するこ
ともできる(請求項7)。実行履歴記録装置が上述した
ような基本構成を有することを前提として、このような
ブレーク命令設定装置を用いれば、検査スクリプトに基
づいて検査開始位置を自動的に判断でき、検査スクリプ
トに基づく結合検査が自動化されることになる。
【0023】そしてこのようなブレーク命令設定装置に
おいても、さらに、処理プログラムのソース記述の中の
実行部分を特定する実行部分特定手段を備える構成と
し、ソース取得手段が、実行部分特定手段にて実行部分
の特定されたソース記述を取得するようにしてもよい
(請求項8)。これによって、条件コンパイルに対応で
きる。
【0024】なお、このような実行履歴記録装置又はブ
レーク命令設定装置の各手段をコンピュータにて実現す
る機能は、例えば、コンピュータ側で起動するプログラ
ムとして備えることができる。したがって、本発明はプ
ログラムの発明として実現することもできる(請求項
9)。
【0025】このようなプログラムの場合、例えば、F
D、MO、CD−ROM、DVD−ROM、HD等のコ
ンピュータ読み取り可能な記録媒体に記録し、必要に応
じてコンピュータにロードして起動することにより用い
ることができる。この他、ROMやバックアップRAM
をコンピュータ読み取り可能な記録媒体として本プログ
ラムを記録しておき、このROMあるいはバックアップ
RAMをコンピュータに組み込んで用いてもよい。
【0026】
【発明の実施の形態】以下、本発明を具体化した一実施
例を図面を参照して説明する。図1は、本実施例の実行
履歴記録システムの概略構成を示す説明図である。実行
履歴記録システムは、実行履歴記録装置10と、サーバ
90とを備えている。ここでは実行履歴記録装置10と
サーバ90とを備えるシステムとして構成したが、一つ
のコンピュータシステムとして実現できることは言うま
でもない。
【0027】実行履歴記録装置10は、装置本体11、
表示手段としてのモニタ12、及び、入力手段としての
キーボード13を備える、いわゆるコンピュータシステ
ムである。一方、サーバ90も、コンピュータシステム
であり、装置本体91、表示手段としてのモニタ92を
備えている。
【0028】装置本体91には大容量のハードディスク
装置80が接続されており、このハードディスク装置8
0には、ソースプログラム81、検査スクリプト82、
及びスタブ83が記録されている。ソースプログラム2
1及び検査スクリプト82は、利用者によって作成され
て記憶される。スタブ83は、検査に先だってサーバ9
0によって作成される。
【0029】実行履歴記録装置10は、上述した3つの
情報をサーバ90から読み込み、これら3つの情報に基
づいて実行履歴を記録する。そこでまずソースプログラ
ム81、検査スクリプト82、スタブ83について説明
を加える。
【0030】ソースプログラム81は、部品単位あるい
は機能単位に作成される部品プログラムによって構成さ
れ、複数のファイルからなっている。検査スクリプト8
2は、検査情報を記述したものであり、テキストファイ
ルとして作成されている。この検査スクリプト82は、
検査対象毎に作成される。
【0031】具体的に検査スクリプト82には、検査開
始関数の名称、当該検査開始関数をコールする親関数の
名称がセットになって記述される。これにより、特定の
親関数からコールされた場合の検査開始関数以下の関数
が検査対象として指定する。また、検査スクリプト82
には、検査対象とする変数の名称、変数への入力データ
及び、入力データに対応する解である出力データが予め
記録されている。
【0032】スタブ83は、検査開始関数以下の関数か
らコールされるダミーの関数群である。このスタブ83
は、上述したようにサーバ90により作成される。次
に、本実施例の実行履歴記録装置10の動作を説明す
る。図2は、実行履歴記録装置10の装置本体11の機
能ブロック図である。すなわち、装置本体11の機能
は、プローブ埋め込みブロック31、実行部分特定ブロ
ック32、ブレーク命令設定ブロック33、ラベル定義
抽出ブロック34、ラベル置換ブロック35、コンパイ
ルブロック36、実行履歴記録ブロック37、及び、出
力ブロック38に分けることができる。
【0033】ここで各ブロック31〜38の機能を大ま
かに説明する。プローブ埋め込みブロック31は、ソー
スプログラム81に対して、プローブと呼ばれる履歴記
録のための出力関数を埋め込む。例えば、関数の入口や
出口にこのようなプローブを埋め込むことにより、関数
が実行されることにより、その関数の開始や終了、ある
いは演算結果が実行履歴として記録される。
【0034】実行部分特定ブロック32は、ソースプロ
グラム81の実行行を特定する。例えば、車両制御用の
プログラムを例に挙げると、仕向地の違いなどにより、
ソースプログラム81を部分的にコンパイルすることが
ある。これが条件コンパイルであり、ソースプログラム
81中のプリプロセッサ命令によってコンパイルする部
分が指定される。従って、このようなプリプロセッサ命
令を解析して実行部分を特定するのが、実行部分特定ブ
ロック32である。なお、実行部分の特定機能は、従来
よりコンパイラのプリプロセッサ機能として存在するた
め、このようなコンパイラを利用することにより容易に
実現できる。
【0035】ブレーク命令設定ブロック33は、実行部
分特定ブロック32にて実行行が特定されたソースプロ
グラム81に基づき、検査スクリプト82を参照して、
検査開始位置を示すブレーク命令を、検査スクリプト8
2に追加する。これによって、ソースプログラム81の
中の検査開始位置が実行履歴記録装置10で判断できる
ことになる。
【0036】ラベル定義抽出ブロック34は、ソースプ
ログラム81中のマクロラベル定義を抽出する。検査ス
クリプト82に検査対象の変数名が記述されることは既
に述べたが、この変数名がソースプログラム81で用い
られるマクロラベルで記述されることがある。そのた
め、ラベル置換ブロック35が、検査スクリプト82中
に記述されたマクロラベルを実体情報に置換する。これ
らラベル定義抽出ブロック34及びラベル置換ブロック
35により、検査スクリプト82においても、ソースプ
ログラム81と同様のマクロラベルを用いることが可能
となる。
【0037】コンパイルブロック36は、プローブ埋め
込みブロック31にてプローブが埋め込まれたソースプ
ログラム81及びスタブ83をコンパイル・リンクし、
実行履歴記録ブロック37へ出力する。実行履歴記録ブ
ロック37は、検査スクリプト82中に追加された検査
開始位置を示すブレーク命令により、検査開始位置を判
断すると、検査対象となっている変数に入力データを設
定して、実行履歴の記録を開始する。実行履歴には、関
数コールの順序情報や変数値が含まれる。そして、検査
開始関数が終了し、親関数に実行が移ると、履歴の記録
を終了する。さらに、検査スクリプト82に記述された
出力データと変数値とを比較することにより、検査対象
の変数をチェックし、実行履歴と共にチェック結果を出
力する。
【0038】出力ブロック38は、実行履歴やチェック
結果を、モニタ12や図示しない記憶装置へ出力する。
ここで特に、本実施例の実行履歴記録装置10では、上
述した実行部分特定ブロック32からの出力に基づく、
ブレーク命令設定ブロック33の動作に特徴を有する。
【0039】したがって、これら実行部分特定ブロック
32及びブレーク命令設定ブロック33の動作を以下詳
細に説明する。実行部分特定ブロック32は、上述した
ように、ソースプログラム81中の実行行を特定する。
【0040】例えば、図3にソースプログラム81のソ
ース記述の一部を示した。このソースプログラム81
は、ファイル名「file2.c」というファイルとし
て存在する。このとき、実行部分特定ブロック32は、
8,10行のプリプロセッサ命令を解析し、1〜7,1
2〜15行を実行行として特定する。
【0041】続けて、ブレーク命令設定ブロック33の
ブレーク命令設定処理を、図4のフローチャートに基づ
いて説明する。まず最初のステップ(以下、ステップを
単に記号Sで示す。)100において、検査スクリプト
82を取得する。続くS110では、関数名を取得す
る。この処理は、検査スクリプト82中に記載される検
査開始関数の名称、及び、その検査開始関数をコールす
る親関数の名称を取得するものである。検査開始関数名
「child1」、親関数名「parent1」が取得
されたものとして以下の説明を続ける。
【0042】次のS120では、ファイルのオープンを
行う。このファイルは、実行部分特定ブロック32から
出力されるソースプログラム81のソース記述ファイル
である。続くS130では、実行部分の解析を行い、次
のS140にて、S110で取得した関数を検索する。
【0043】続くS150では、S140での検索結果
に基づき、対象関数を発見したか否かを判断する。検査
開始関数が検索されても、その検査開始関数をコールす
る親関数が検査スクリプト82に指定されたものでなけ
れば、ここで否定判断される。例えば、図5(a)で
は、検査開始関数「child1」が存在するが(記号
b)、コール元の親関数が検査スクリプト82とは異な
る「parent0」であるため(記号a)否定判断さ
れる。一方、図5(b)では、検査スクリプト82に記
載された親関数「parent1」が存在し(記号
c)、その中に検査開始関数「child1」が存在す
るため(記号d)肯定判断される。対象関数を発見した
場合(S150:YES)、S160へ移行する。これ
に対し対象関数が発見されない場合は(S150:N
O)、S120からの処理を繰り返す。
【0044】S160では、行番号を抽出する。例えば
図5(b)では、親関数「parent1」から検査開
始関数「child1」がコールされる行番号「6」が
抽出される。続くS170では、検査スクリプト82
に、検査開始位置を示すブレーク命令を追加する。ここ
では、ファイル名と行番号とが検査開始位置を示す。図
5(b)の例では、ファイル名「file2.c」と行
番号「6」が検査開始位置となる。ただし、ファイル名
と行番号とを直接的に検査スクリプト82に記述する必
要はない。例えば、ファイル名と行番号とをブレーク情
報として別途記憶しておき、検査スクリプト82中のブ
レーク命令と対応させるようにしてもよい。
【0045】次のS180では、未処理の検査スクリプ
トがあるか否かを判断する。ここで未処理の検査スクリ
プトがあると判断された場合(S180:YES)、S
100からの処理を繰り返す。一方、未処理の検査スク
リプトがない場合には(S180:NO)、本ブレーク
命令設定処理を終了する。
【0046】次に、本実施例の実行履歴記録装置10の
発揮する効果を説明する。本実施例では、検査開始関数
の名称及び当該検査開始関数をコールする親関数の名称
が記述された検査スクリプト82を取得し(図4中のS
100)、検査スクリプト82に記述された関数名を取
得する(S110)。そして、ソースプログラム81の
記述ファイルをオープンし(S120)、実行部分より
対象関数を検索し(S130,S140)、検査開始関
数をコールする親関数の行番号を抽出して(S16
0)、検査開始位置を示すブレーク命令を検査スクリプ
ト82に追加する(S170)。実行履歴記録装置10
は、検査スクリプト82に追加されたブレーク命令に基
づき、検査開始位置を判断して、処理実行の履歴を記録
する。
【0047】これによって、検査スクリプト82に基づ
いて自動的にブレーク命令が設定されるため、検査開始
位置を自動的に判断でき、検査スクリプト82に基づく
結合検査が自動化される。複数の検査スクリプト82が
ある場合、未処理の検査スクリプト82があるうちは
(図4中のS180:YES)、一連のブレーク命令設
定処理を繰り返す。したがってここでは、複数の検査ス
クリプト82に基づく連続した実行履歴の記録が可能と
なる。
【0048】また、本実施例では、実行部分特定ブロッ
ク32がソースプログラム81中の実行部分を特定する
ことにより、実行部分を解析して(図4中のS13
0)、対象関数を検索する(S140)。これによっ
て、ソースプログラム81の実行部分に検査開始位置を
特定でき、条件コンパイルにも対応できる。
【0049】さらにまた、本実施例では、検査スクリプ
ト82に、検査対象の変数に対する入力データ及び、当
該入力データの解である出力データが記述されている。
そして、実行履歴記録装置10は、ブレーク命令により
検査開始位置を判断すると、入力データの設定を行う。
これによって、検査のための入力データの設定までが自
動化される。また、実行履歴記録装置10は、出力デー
タを用いて、検査対象の変数値をチェックする。その結
果、演算結果のチェックまでが自動化される。
【0050】なお、本実施例における実行部分特定ブロ
ック32が「実行部分特定手段」に相当し、ブレーク命
令設定ブロック33が「スクリプト取得手段」、「ソー
ス取得手段」、「位置特定手段」及び「ブレーク命令設
定手段」に相当する。そして、図4中のS100が「ス
クリプト取得手段」としての処理に相当し、S120の
処理が「ソース取得手段」としての処理に相当し、S1
30〜S160が「位置特定手段」としての処理に相当
し、S170が「ブレーク命令設定手段」としての処理
に相当する。
【0051】以上本発明はこのような実施形態に何等限
定されるものではなく、本発明の主旨を逸脱しない範囲
において種々なる形態で実施し得ることは言うまでもな
い。
【図面の簡単な説明】
【図1】実施例の実行履歴記録システムの構成を示す説
明図である。
【図2】実行履歴記録装置の機能を示す機能ブロック図
である。
【図3】実行部分の特定を具体的に示す説明図である。
【図4】ブレーク命令設定処理を示す説明図である。
【図5】対象関数の検索を具体的に示す説明図である。
【図6】結合検査の手法を示す説明図である。
【図7】検査開始位置の特定に関する問題を示す説明図
である。
【符号の説明】
10…実行履歴記録装置 11…装置本体 12…モニタ 13…キーボード 31…プローブ埋め込みブロック 32…実行部分特定ブロック 33…ブレーク命令設定ブロック 34…ラベル定義抽出ブロック 35…ラベル置換ブロック 36…コンパイルブロック 37…実行履歴記録ブロック 38…出力ブロック 41…ドライバ 80…ハードディスク装置 81…ソースプログラム 81a…検査対象 82…検査スクリプト 83…スタブ 90…サーバ 91…装置本体 92…モニタ 110…ドライバ 120…検査対象

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】単位機能毎に細分化された部品プログラム
    にて構成される処理プログラムを実行し、検査情報が記
    述された検査スクリプトに基づいて処理実行の履歴を記
    録する実行履歴記録装置であって、 前記検査スクリプト中に前記処理プログラムにおける検
    査開始位置を示すブレーク命令があると、当該検査開始
    位置を判断して前記履歴を記録することが可能であり、 前記処理プログラム中の検査開始関数及び当該検査開始
    関数をコールする親関数が少なくとも記述された検査ス
    クリプトを取得するスクリプト取得手段と、 前記処理プログラムのソース記述を取得するソース取得
    手段と、 前記取得されたソース記述に基づき、前記親関数から前
    記検査開始関数がコールされる位置を前記検査開始位置
    として特定する位置特定手段と、 前記位置特定手段にて特定された位置を示すブレーク命
    令を前記検査スクリプトに追加するブレーク命令設定手
    段とを備えていることを特徴とする実行履歴記録装置。
  2. 【請求項2】請求項1に記載の実行履歴記録装置におい
    て、 さらに、前記処理プログラムのソース記述の中の実行部
    分を特定する実行部分特定手段を備え、 前記ソース取得手段は、前記実行部分特定手段にて実行
    部分の特定されたソース記述を取得することを特徴とす
    る実行履歴記録装置。
  3. 【請求項3】請求項1又は2に記載の実行履歴記録装置
    において、 前記検査開始位置を判断してから、前記親関数が再び実
    行されるまで、前記履歴を記録することを特徴とする実
    行履歴記録装置。
  4. 【請求項4】請求項1〜3のいずれかに記載の実行履歴
    記録装置において、 前記検査スクリプトには、前記検査対象の変数に対する
    入力データが記述されており、 前記検査開始位置を判断すると、前記入力データの設定
    を行うことを特徴とする実行履歴記録装置。
  5. 【請求項5】請求項4に記載の実行履歴記録装置におい
    て、 前記検査スクリプトには、前記入力データに対応する解
    である出力データが記述されていることを特徴とする実
    行履歴記録装置。
  6. 【請求項6】請求項5に記載の実行履歴記録装置におい
    て、 前記出力データを用いて、前記検査対象の変数をチェッ
    クすることを特徴とする実行履歴記録装置。
  7. 【請求項7】単位機能毎に細分化された部品プログラム
    にて構成される処理プログラムを実行し、検査情報が記
    述された検査スクリプトに基づいて処理実行の履歴を記
    録する実行履歴記録装置に対して用いられるブレーク命
    令設定装置であって、 前記実行履歴記録装置は、前記検査スクリプト中に前記
    処理プログラムにおける検査開始位置を示すブレーク命
    令があると、当該検査開始位置を判断して前記履歴を記
    録することが可能であり、 前記処理プログラム中の検査開始関数及び当該検査開始
    関数をコールする親関数が少なくとも記述された検査ス
    クリプトを取得するスクリプト取得手段と、 前記処理プログラムのソース記述を取得するソース取得
    手段と、 前記取得されたソース記述に基づき、前記親関数から前
    記検査開始関数がコールされる位置を前記検査開始位置
    として特定する位置特定手段と、 前記位置特定手段にて特定された位置を示すブレーク命
    令を前記検査スクリプトに追加するブレーク命令設定手
    段とを備えていることを特徴とするブレーク命令設定装
    置。
  8. 【請求項8】請求項7に記載のブレーク命令設定装置に
    おいて、 さらに、前記処理プログラムのソース記述の中の実行部
    分を特定する実行部分特定手段を備え、 前記ソース取得手段は、前記実行部分特定手段にて実行
    部分の特定されたソース記述を取得することを特徴とす
    るブレーク命令設定装置。
  9. 【請求項9】請求項1〜6のいずれかに記載の実行履歴
    記録装置、又は、請求項7若しくは8に記載のブレーク
    命令設定装置の各手段としてコンピュータを機能させる
    プログラム。
JP2002068703A 2002-03-13 2002-03-13 実行履歴記録装置、ブレーク命令設定装置、及びプログラム Expired - Fee Related JP4061931B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002068703A JP4061931B2 (ja) 2002-03-13 2002-03-13 実行履歴記録装置、ブレーク命令設定装置、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002068703A JP4061931B2 (ja) 2002-03-13 2002-03-13 実行履歴記録装置、ブレーク命令設定装置、及びプログラム

Publications (2)

Publication Number Publication Date
JP2003271415A true JP2003271415A (ja) 2003-09-26
JP4061931B2 JP4061931B2 (ja) 2008-03-19

Family

ID=29199735

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002068703A Expired - Fee Related JP4061931B2 (ja) 2002-03-13 2002-03-13 実行履歴記録装置、ブレーク命令設定装置、及びプログラム

Country Status (1)

Country Link
JP (1) JP4061931B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010539576A (ja) * 2007-09-14 2010-12-16 エアバス オペレーションズ (エスアーエス) 航空機搭載システムのオペレーション・ソフトウェアの妥当性をテストするための自動スクリプト生成の方法および同方法を実施するためのデバイス

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0253146A (ja) * 1988-08-17 1990-02-22 Oki Electric Ind Co Ltd プログラム・トレース方法
JPH04367946A (ja) * 1991-06-17 1992-12-21 Nec Corp デバッグ情報出力方式
JPH06290077A (ja) * 1993-04-06 1994-10-18 Hitachi Ltd プログラム実行中断点設定方法
JPH07191876A (ja) * 1993-12-27 1995-07-28 Nec Corp プログラム試験装置とその使用方法
JPH0822401A (ja) * 1994-07-07 1996-01-23 Hitachi Ltd プログラム実行中断方法およびデバッギング装置
JPH09244921A (ja) * 1996-03-08 1997-09-19 Fujitsu Ltd ソフトウエア試験の自動化システム
JPH10312313A (ja) * 1997-05-13 1998-11-24 Nippon Telegr & Teleph Corp <Ntt> C言語の計算機プログラム検査処理方法およびプログラム記憶媒体
JP2000089977A (ja) * 1998-09-10 2000-03-31 Toshiba Corp デバッグシステム
JP2000215037A (ja) * 1999-01-22 2000-08-04 Toshiba Corp ソ―スコ―ド表示装置、ソ―スコ―ド表示方法およびデバック処理装置
JP2000330823A (ja) * 1999-05-24 2000-11-30 Nec Corp プログラムのデバッグ装置およびデバッグ方法
JP2001142684A (ja) * 1999-11-15 2001-05-25 Fujitsu Ltd ソースプログラムを解析するためのプログラムを格納した記録媒体
JP2001290674A (ja) * 2000-04-06 2001-10-19 Matsushita Electric Ind Co Ltd プログラム中断点設定装置および方法

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0253146A (ja) * 1988-08-17 1990-02-22 Oki Electric Ind Co Ltd プログラム・トレース方法
JPH04367946A (ja) * 1991-06-17 1992-12-21 Nec Corp デバッグ情報出力方式
JPH06290077A (ja) * 1993-04-06 1994-10-18 Hitachi Ltd プログラム実行中断点設定方法
JPH07191876A (ja) * 1993-12-27 1995-07-28 Nec Corp プログラム試験装置とその使用方法
JPH0822401A (ja) * 1994-07-07 1996-01-23 Hitachi Ltd プログラム実行中断方法およびデバッギング装置
JPH09244921A (ja) * 1996-03-08 1997-09-19 Fujitsu Ltd ソフトウエア試験の自動化システム
JPH10312313A (ja) * 1997-05-13 1998-11-24 Nippon Telegr & Teleph Corp <Ntt> C言語の計算機プログラム検査処理方法およびプログラム記憶媒体
JP2000089977A (ja) * 1998-09-10 2000-03-31 Toshiba Corp デバッグシステム
JP2000215037A (ja) * 1999-01-22 2000-08-04 Toshiba Corp ソ―スコ―ド表示装置、ソ―スコ―ド表示方法およびデバック処理装置
JP2000330823A (ja) * 1999-05-24 2000-11-30 Nec Corp プログラムのデバッグ装置およびデバッグ方法
JP2001142684A (ja) * 1999-11-15 2001-05-25 Fujitsu Ltd ソースプログラムを解析するためのプログラムを格納した記録媒体
JP2001290674A (ja) * 2000-04-06 2001-10-19 Matsushita Electric Ind Co Ltd プログラム中断点設定装置および方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010539576A (ja) * 2007-09-14 2010-12-16 エアバス オペレーションズ (エスアーエス) 航空機搭載システムのオペレーション・ソフトウェアの妥当性をテストするための自動スクリプト生成の方法および同方法を実施するためのデバイス

Also Published As

Publication number Publication date
JP4061931B2 (ja) 2008-03-19

Similar Documents

Publication Publication Date Title
US8875105B2 (en) Efficiently developing software using test cases to check the conformity of the software to the requirements
CN106776334B (zh) 基于注释生成测试用例方法及装置
JP2007012003A (ja) フィーチャ指向ソフトウェア製品ラインの開発環境を提供するシステム
US7721250B2 (en) System and method for interactive and integrated software development process and phases
JP2009169828A (ja) テストケース生成装置及びテストケース生成プログラム
JPH0748182B2 (ja) プログラム・エラー検出方法
CN114860586A (zh) 一种基于动态插桩的二进制多执行体软件插桩方法
US20090217259A1 (en) Building Operating System Images Based on Applications
JPWO2014184896A1 (ja) プログラム解析装置、プログラム解析方法およびプログラム解析プログラム
CN109388568B (zh) 代码测试方法和装置
JP6567212B2 (ja) 等価性検証装置および等価性検証プログラム
JP4702194B2 (ja) プログラム開発支援装置、プログラム開発支援方法およびプログラム開発支援プログラム
US9396239B2 (en) Compiling method, storage medium and compiling apparatus
JP2003271415A (ja) 実行履歴記録装置、ブレーク命令設定装置、及びプログラム
CN113127367B (zh) Android动态权限申请的缺陷检测方法
JP2005276040A (ja) デグレード確認検査方法、デグレード確認検査システム、およびそのためのプログラム
JP7331617B2 (ja) 抽出装置、及び抽出プログラム
WO2021245939A1 (ja) システム、方法、及び非一時的なコンピュータ可読媒体
JP2008299502A (ja) テストケース妥当性自動検証プログラムおよびテストケース妥当性自動検証結果表示方法
JP2007328447A (ja) ソフトウェア試験項目選択装置、ソフトウェア試験項目選択プログラム、ソフトウェア試験項目選択プログラムが格納された記憶媒体およびソフトウェア試験項目選択方法
JP4149047B2 (ja) シミュレータ
JP2003296137A (ja) 実行履歴記録装置、ラベル置換装置、及びプログラム
JP6072547B2 (ja) アプリケーション・テストシステム
CN106528405A (zh) 基于OSGi构建软件运行中进行调试实现方法及系统
JP2003296139A (ja) スタブ作成装置、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040722

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070611

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070626

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070822

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20071204

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071217

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110111

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120111

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130111

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140111

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees