JPH10207727A - テストプログラム自動生成システム - Google Patents

テストプログラム自動生成システム

Info

Publication number
JPH10207727A
JPH10207727A JP9024326A JP2432697A JPH10207727A JP H10207727 A JPH10207727 A JP H10207727A JP 9024326 A JP9024326 A JP 9024326A JP 2432697 A JP2432697 A JP 2432697A JP H10207727 A JPH10207727 A JP H10207727A
Authority
JP
Japan
Prior art keywords
test
program
file
test case
stores
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
JP9024326A
Other languages
English (en)
Inventor
Yatachika Takesue
八太力 武末
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.)
Hitachi Ltd
Hitachi Information Technology Co Ltd
Original Assignee
Hitachi Ltd
Hitachi Information Technology Co Ltd
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 Hitachi Ltd, Hitachi Information Technology Co Ltd filed Critical Hitachi Ltd
Priority to JP9024326A priority Critical patent/JPH10207727A/ja
Publication of JPH10207727A publication Critical patent/JPH10207727A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

(57)【要約】 【課題】 テストプログラムソースを自動生成するテス
トプログラム自動生成システムを提供することにある。 【解決手段】 機能仕様入力部22は、テスト対象装置の
機能仕様を入力、編集しファイル3に格納し、また、フ
ァイル3の内容を基に状態遷移テーブルを作成し、ファ
イル4に格納する。テスト抽出条件入力部23はテストケ
ース抽出条件テーブルを入力、編集しファイル5に格納
する。プログラム部品入力部24はプログラム部品を入
力、編集しファイル7に格納する。テストケース抽出部2
5はファイル4,5の内容を基にテストケースを抽出し、
ファイル6に格納する。テストプログラム自動生成部26
はファイル6,7の内容を基にテストプログラムソースを
自動生成し、ファイル8に格納する。そして、コンパイ
ラ&リンカー27はファイル8の内容を基にテストプログ
ラムオブジェクトを生成し、ファイル9に格納する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は計算機システムを構成す
る各種装置の開発、保守、障害追求において用いられる
テストプログラムを効率よく開発するテストプログラム
の生成に関する。
【0002】
【従来の技術】特開平6−195216で記載のように
テスト仕様書をテストシーケンスの流れに着目して記述
し、計算機入力することによつて、テストプログラムを
自動生成する手法が特開平6−195216に記載され
ている。
【0003】
【発明が解決しようとする課題】従来技術では、テスト
対象装置の機能仕様書からテストケースの抽出及び抽出
したテストケースを実現するためのテストシーケンスは
高度な検証技術者が人手により作成する必要があり、よ
り効率及び品質のよいテストプログラムの開発を行うた
めに、上流工程からテストプログラムの自動生成を行う
ことが必要である。 本発明の目的は、テストプログラ
ムソースを自動生成するテストプログラム自動生成シス
テムを提供することにある。
【0004】
【課題を解決するための手段】上記目的を達成するた
め、本発明は、テスト対象装置の機能仕様を入力、編集
し、該編集結果を基に状態遷移テーブルを作成する機能
仕様入力部と、テストケースを自動抽出するためのテス
トケース抽出条件テーブルを入力、編集するテスト抽出
条件入力部と、プログラム部品を入力、編集するプログ
ラム部品入力部と、前記機能仕様の編集結果および状態
遷移テーブルと前記編集したテストケース抽出条件テー
ブルを基にテストケースを自動抽出するテストケース抽
出部と、該テストケース抽出部が出力したテストケース
および前記編集したプログラム部品を基にテストプログ
ラムを自動生成するテストプログラム自動生成部からな
るようにしている。
【0005】
【発明の実施の形態】以下図面に従って、本発明の一実
施形態について説明する。図1は本発明の一実施形態を
示すブロック構成図である。図1において、1はオペレ
ータが操作を行うためのコンソール、2はテストプログ
ラムを自動生成すための各種生成機能を有するテストプ
ログラム自動生成プログラム、3はテスト対象装置の機
能仕様をコンソール1から入力したファイルで図3の状
態遷移図と図4のテスト対象装置共通仕様テーブルを含
むテスト対象装置仕様ファイル、4は図3の前記状態遷
移図を元に生成した図5の状態遷移テーブルを格納した
状態遷移ファイル、5は図6のテストケース抽出条件テ
ーブルからなるテストケース抽出条件ファイル、6は前
記図5と図6から自動抽出した図7のテストケース抽出
テーブルからなるテストケース抽出ファイル、7はテス
トプログラムを構成する図8の各種未完成のプログラム
部品を含むプログラム部品ファイル、8は前記図7のテ
ストケース毎に図8からプログラム部品を求めテストプ
ログラムとして組み立てた図9のテストプログラムソー
スを格納したテストプログラムソースファイル、9は8
のテストプログラムソースを入力としてコンパイラ&リ
ンカーによって生成される最終形態のテストプログラム
オブジェクトを含むテストプログラムである。
【0006】図2は2のテストプログラム自動生成プロ
グラムと当該プログラムによって生成される図1に示す
3〜7の中間ファイル及び8〜9の最終結果のテストプ
ログラムのソースファイル、オブジェクトファイルとの
関係を示す図である。図2において21はテストプログ
ラムの自動生成において必要な機能仕様入力部22〜コ
ンパイラ&リンカー27を統合管理する実行管理部であ
る。前記2のテストプログラム自動生成プログラムは機
能仕様入力部22、テスト抽出条件入力部23、プログ
ラム部品入力部24、テストケース抽出部25、テスト
プログラム自動生成部26、コンパイラー & リンカー
27、及び前記22〜27を統合管理する実行管理部2
1から構成される。
【0007】図3はテスト対象装置の機能仕様を明確に
した状態遷移図の例であり、処理(楕円のボックス)31
と処理の管理番号32と遷移先(処理と処理を結ぶ矢線)
33及び遷移条件(矢線上の語句)34によつて表され
る。装置の状態遷移図は他にもあり、装置の他の機能仕
様毎に用意される。図4は図3の遷移図上では表現され
ないテスト対象装置の種々の機能仕様に共通の仕様を記
述したものである。図3と図4は前記コンソール1から
入力され、前記機能仕様入力部22に入力され、編集さ
れてテスト対象装置仕様ファイル3に格納される。
【0008】図5は前記機能仕様入力部22がテスト対
象装置仕様ファイル3に格納された図3の状態遷移図と
図4のテスト対象装置共通仕様テーブルとを解析し作成
する状態遷移テーブルである。当該状態遷移テーブル
は、管理番号(図3の32の管理番号と対応)51と行番
号52、遷移及び処理の条件を示す条件53、条件53
の条件成立時の処理内容を示す処理54、遷移先55及
びテストケースとして抽出されたかどうかを示すパスフ
ラグ56から構成される。
【0009】図6はテストケース抽出の条件を明らかに
するもので全体条件61と個別条件62から構成され
る。全体条件61が示している条件C1は「全てのパス
を最低1回通過する」ことを意味する。個別条件62は
図3の管理番号32と対応して、テスト精度、テスト効
率を考慮して必要に応じて管理番号単位にテストの条件
を定義する。テスト抽出条件テーブルの情報はコンソー
ル1からテスト抽出条件入力部23により入力され、編
集されて、テスト抽出条件テーブルとしてテストケース
抽出条件ファイル5に格納される。
【0010】図7は状態遷移ファイル4とテストケース
抽出条件ファイル5に格納された情報に基づきテストケ
ース抽出部25で自動抽出したテストケースからなるテ
ストケース抽出テーブルである。各テストケースは、テ
ストケース番号71、図3の管理番号32及び図5の管
理番号51と対応した管理番号72(00、01、0
2...)、遷移条件73(CMD=XMIT、CMD=INV、CMD=R
CV等)、データ生成情報74(XDT1=SYN,XDT2=RUN,CNT=
4096等)、報告情報75(STS=CE+DE、STS=CE+DE+UC、S
SB=01等)の組み合わせによって構成される。各テスト
ケースは管理番号72によって前記図3及び図5に示さ
れたどの遷移を通過するか明示され、図5の通過した管
理番号、行番号に対応するパスフラグはオンにされる。
【0011】図8はテストプログラムの元になるプログ
ラム部品群のテーブルであり、プログラム部品入力部2
4により入力され、編集されてプログラム部品ファイル
7に格納される。このプログラム部品は部品名81、展
開条件82、部品プログラム83から構成され、更に部
品プログラム83はオペレーション部84(Head、RTN、
XMIT等)とオペランド部85からなる。なお、オペラン
ド部85中の?部と$?部はテストプログラム自動生成
部26で部品を組み立てる時に解決される。図9はプロ
グラム自動生成部26でテストケース抽出ファイル6と
プログラム部品ファイル7の内容に基づき部品を組み立
て完成したテストプログラムソースを示す。
【0012】次に、図2〜図9を用いてテストプログラ
ム自動生成の処理の流れを説明する。最初に、機能仕様
入力部22によりテスト対象装置の機能仕様である図3
の状態遷移図と図4のテスト対象装置共通仕様テーブル
を入力し、編集してテスト対象装置仕様ファイル3を作
成し、さらに、機能仕様入力部22によつてファイル3
に格納された図3、図4の内容を解析し、図5の状態遷
移テーブルを作成し、状態遷移ファイル4に格納する。
例えば、図3の処理“コマンド待ち”については、管理
番号32の“00”を51として記入し、遷移条件34
に対応して行番号52として“01”、“02”、“0
3”を記入し、行番号“01”の条件53として“送信
コマンド”を記入し、処理54として“なし”を記入
し、遷移先55として矢線が指示する“01”を記入
し、パスフラグ56として“0”を記入し、行番号“0
2”の条件53として“受信コマンド”を記入し、処理
54として“なし”を記入し、遷移先55として矢線が
指示する“10”を記入し、パスフラグ56として
“0”を記入し、行番号“03”の条件53として“コ
マンドエラー”を記入し、処理54として“SSB(センス
バイト)=01”を記入し、遷移先55として矢線が指示
する“04”を記入し、パスフラグ56として“0”を
記入する。以下、他の管理番号の処理についても、同様
にして状態遷移テーブルに記入する。
【0013】次にテスト抽出条件入力部23によりテス
ト抽出条件を入力し、編集して、テスト抽出条件テーブ
ルを作成し、テストケース抽出条件ファイル5に格納す
る。更にプログラム部品入力部24によりプログラム部
品を入力し、図8のプログラム部品群のテーブルを作成
し、プログラム部品ファイル7に格納する。
【0014】次にテストケース抽出部25は状態遷移フ
ァイル4とテスト抽出条件ファイル5を参照し、図6の
全体条件61、個別条件62を元に図5の状態遷移テー
ブルから図7のテストケースを抽出する。ここで、テス
トケース抽出条件のC1は、最低でもすべてのパスを1
回通過することを意味する。なお、全パスを通過したか
どうかは、図5の状態遷移テーブルのパスフラグが“オ
ン”になっているか否かによつて判断する。すなわち全
パスフラグがオンのときテストケースの抽出は完了す
る。
【0015】ここで、図7のテストケースの抽出の例を
説明する。テストケース番号1のテストケースの場合、
図5の状態遷移テーブルを参照し、管理番号“00”の
行番号“01”の“送信コマンド”、“なし”に基づ
き、“00,CMD=XMIT”を抽出し、行番号“00”のパス
フラグをオンにし、遷移先“01”に基づき、管理番号
“01”を選択し、行番号“01”の“同期データ検
出”、“なし”に基づき、“01,XDT1=SYN”を抽出し、
行番号“01”のパスフラグをオンにし、遷移先“0
2”に基づき、管理番号“02”を選択し、行番号“0
1”の“送信データ有り”、“データ送信”と、図6の
テスト抽出条件テーブルの管理番号NO=02の個別条
件に基づき、“02,XDT2=RUN,CNT=4096”を抽出し、行
番号“02”のパスフラグをオンにし、遷移先“03”
に基づき、管理番号“03”を選択し、行番号“01”
の“無条件”、“正常報告”に基づき、“03,STS=CE+D
E”を抽出し、行番号“01”のパスフラグをオンに
し、遷移先“00”(遷移先なし)に基づき、テストケ
ース番号1の処理を終了する。他のテストケース番号の
テストケースも同様にして抽出される。
【0016】ここで図7の各パラメータの意味は、CMD
はコマンド、XMITは送信、CMD=XMITは送信コマンドを意
味し、XDT1は送信データ、SYNは同期、XDT1=SYNはSYNデ
ータ送信を意味し、RUNは乱数、XDT2=RUNは乱数データ
を送信を意味し、CNTはカウント、CNT=4096は送信デー
タ長(図4で65535が図6で4096かそれぞれ定義されてい
るが個別条件を優先するため、4096が選ばれる)を意味
し、STSはステータス、CEはチャネルエンド、DEはデバ
イスエンド、STS=CE+DEは正常終了を報告を意味し、INV
は無効、CMD=INVは未定義コマンドを意味し、UEはユニ
ットチェック、STS=CE+DE+UEは異常終了報告を意味し、
SSB=01は異常終了報告時の詳細コードを意味し、これら
は何れも図5〜図6から求められる情報である。
【0017】次に26のテストプログラム自動生成部は
図7のテストケース番号毎に図8のプログラム部品群の
テーブルから求め、更に部品オペランドの?と$?を解
決し、完成した部品をテストプログラムソース領域に書
き込み図9のテストプログラムソースを生成する。Head
er部品はプログラムの先頭に使用し、オペランドのName
パラメータの?はシーケンシャルナな番号を割り振る。
RTN(ルーチン)部品は図7のテストケース毎に1個使用し、T
est#の$?はテストケース番号で置き換える。すなわち
図7のテストケースを選択(最初はテストケース番号1)
したときRTN部品プログラムをテストプログラムソー
ス領域に書き込む。次に図7の管理番号00の遷移条件
(テストケース番号1ではCMD=XMIT,テストケース番号2
ではCMD=INV)と図8の展開条件を比較し一致する部品を
求める。テストケース1では部品名XMIT1、テストケー
ス2では部品名XMIT2が求まる。求めた部品のオペランド
の$?は図7の情報から解決する。図8のXDT=$?
は図7テストケース番号1の場合XDT1=SYNとXDT2=RUNに
よって解決する。具体的には先頭データがSYNデータ、
次データが乱数データを展開するパラメータの定義を生
成する。また、オペランドのCNT=$?,STS=$?,SSB=$?は、
図7のテストケースのCNT,STS,SSBパラメータによって
解決される。すべてのテストケースの処理が終了したと
きTEnd部品プログラムをテストプログラムソース領
域に書き込みテストプログラムソースが完成する。
【0018】
【発明の効果】以上説明したように、本発明によれば、
テスト対象装置の仕様、テストプログラムの未解決パラ
メータを含むプログラム部品及びテストケース抽出条件
を入力し、テストケースの自動抽出、プログラム部品の
自動組み立て及び未解決パラメータの自動解決を図り、
テストプログラムソースを自動生成することができる。
この結果、高品質で低コストのテストプログラムを短期
開発できる。また、保守効率も向上する。
【図面の簡単な説明】
【図1】本発明の一実施例の構成を示すブロック図であ
る。
【図2】テストプログラム自動生成プログラムの構成と
当該プログラムが作成する中間ファイル及び最終結果の
テストプログラムファイルの関係を示す図である。
【図3】テスト対象装置の機能仕様の1例を示す状態遷
移図である。
【図4】図3の状態遷移図で表現されないテスト対象装
置の共通仕様を示すテスト対象装置共通仕様テーブルを
示す図である。
【図5】図3及び図4から作成する状態遷移テーブルを
示す図である。
【図6】テスト抽出条件を明らかにするためのテスト抽
出条件テーブルを示す図である。
【図7】図5と図6を元に、テストケースを抽出した結
果を示すテストケース抽出テーブルを示す図である。
【図8】未完成のパラメータを含むプログラム部品群の
テーブルを示す図である。
【図9】図7と図8から自動生成して完成したテストプ
ログラムソースを示す図である。
【符号の説明】
1 コンソール 2 テストプログラム自動生成プログラム 3 テスト対象装置仕様ファイル 4 状態遷移ファイル 5 テストケース抽出条件ファイル 6 テストケース抽出ファイル 7 プログラム部品ファイル 8 テストプログラムソースファイル 9 テストプログラムオブジェクトファイル 21 実行管理部 22 機能仕様入力部 23 テスト抽出条件入力部 24 プログラム部品入力部 25 テストケース抽出部 26 テストプログラム自動抽出部 27 コンパイラー&リンカー

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 テスト対象装置の機能仕様を入力、編集
    し、該編集結果を基に状態遷移テーブルを作成する機能
    仕様入力部と、 テストケースを自動抽出するためのテストケース抽出条
    件テーブルを入力、編集するテスト抽出条件入力部と、 プログラム部品を入力、編集するプログラム部品入力部
    と、 前記機能仕様の編集結果および状態遷移テーブルと前記
    編集したテストケース抽出条件テーブルを基にテストケ
    ースを自動抽出するテストケース抽出部と、 該テストケース抽出部が出力したテストケースおよび前
    記編集したプログラム部品を基にテストプログラムを自
    動生成するテストプログラム自動生成部からなることを
    特徴とするテストプログラム自動生成システム。
JP9024326A 1997-01-23 1997-01-23 テストプログラム自動生成システム Pending JPH10207727A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9024326A JPH10207727A (ja) 1997-01-23 1997-01-23 テストプログラム自動生成システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9024326A JPH10207727A (ja) 1997-01-23 1997-01-23 テストプログラム自動生成システム

Publications (1)

Publication Number Publication Date
JPH10207727A true JPH10207727A (ja) 1998-08-07

Family

ID=12135065

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9024326A Pending JPH10207727A (ja) 1997-01-23 1997-01-23 テストプログラム自動生成システム

Country Status (1)

Country Link
JP (1) JPH10207727A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100621576B1 (ko) * 1999-07-07 2006-09-12 삼성전자주식회사 내장 시스템 소프트웨어를 테스트하기 위한 시스템 및 방법
KR100621573B1 (ko) * 1999-07-07 2006-09-12 삼성전자주식회사 내장 시스템 소프트웨어를 테스트하기 위한 시스템 및 방법
KR100621574B1 (ko) * 1999-07-07 2006-09-12 삼성전자주식회사 내장 시스템 소프트웨어 테스팅을 위한 테스트 드라이버 생성시스템
JP2009157661A (ja) * 2007-12-26 2009-07-16 Fuji Soft Inc モデル検査支援装置
JP2010211481A (ja) * 2009-03-10 2010-09-24 Toshiba Corp テストケース生成装置およびその生成方法、ならびにコンピュータプログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100621576B1 (ko) * 1999-07-07 2006-09-12 삼성전자주식회사 내장 시스템 소프트웨어를 테스트하기 위한 시스템 및 방법
KR100621573B1 (ko) * 1999-07-07 2006-09-12 삼성전자주식회사 내장 시스템 소프트웨어를 테스트하기 위한 시스템 및 방법
KR100621574B1 (ko) * 1999-07-07 2006-09-12 삼성전자주식회사 내장 시스템 소프트웨어 테스팅을 위한 테스트 드라이버 생성시스템
JP2009157661A (ja) * 2007-12-26 2009-07-16 Fuji Soft Inc モデル検査支援装置
JP2010211481A (ja) * 2009-03-10 2010-09-24 Toshiba Corp テストケース生成装置およびその生成方法、ならびにコンピュータプログラム

Similar Documents

Publication Publication Date Title
Hartmann et al. UML-based integration testing
US6385765B1 (en) Specification and verification for concurrent systems with graphical and textual editors
JP2022062060A (ja) リアルタイムデータフロープログラミング言語のためのツールおよび方法
Fernandez et al. A model-based approach for robustness testing
US20080209405A1 (en) Distributed debugging for a visual programming language
JPH10307716A (ja) 画面フローによるビジュアルプログラミング装置
CN108845940A (zh) 一种企业级信息系统自动化功能测试方法和系统
JP2000222244A (ja) コンピュ―タプログラムの微細でない変異のフィルタリングによる強化された機能テスト
Jouault et al. Designing, animating, and verifying partial UML Models
Whittle Specifying precise use cases with use case charts
Bochmann et al. Automating the process of test derivation from SDL specifications
JPH10207727A (ja) テストプログラム自動生成システム
WO2024129753A2 (en) Highly tested systems
JPH09244921A (ja) ソフトウエア試験の自動化システム
JP2008293382A (ja) テスト仕様自動生成方式
CN105302731A (zh) 网站架构升级测试系统和方法
Geppert et al. Generic engineering of communication protocols-current experience and future issues
CN114493360A (zh) 基于rpa和ai的流程创意评估方法、装置、设备及介质
GB2397905A (en) Method for automatically generating and ordering test scripts
KR20110135966A (ko) 복합 시스템의 개발 또는 사용을 지원하는 방법 및 장치, 그리고 그 지원 방법을 사용하는 프린터
JPH10187461A (ja) 言語処理方式
JP2585460B2 (ja) テストデータ作成方法
CN117591104B (zh) 模型的生成方法、装置、电子设备及存储介质
CN118012387B (zh) 大数据分析算法库的构建系统及构建方法
JPH05216706A (ja) オンライン・シミュレーション・システム

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20040316

A072 Dismissal of procedure

Free format text: JAPANESE INTERMEDIATE CODE: A072

Effective date: 20040706