JPH04125476A - テストケース生成装置及びその方法 - Google Patents

テストケース生成装置及びその方法

Info

Publication number
JPH04125476A
JPH04125476A JP2413702A JP41370290A JPH04125476A JP H04125476 A JPH04125476 A JP H04125476A JP 2413702 A JP2413702 A JP 2413702A JP 41370290 A JP41370290 A JP 41370290A JP H04125476 A JPH04125476 A JP H04125476A
Authority
JP
Japan
Prior art keywords
test case
levels
factors
matrix
level
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
JP2413702A
Other languages
English (en)
Inventor
Ankineedu P Chintapalli
アンキネドゥ プラサド チンタパリ
Shankar S Hegde
シャンカー エス ヘッジ
Madhav S Phadke
マダブ シュリダー ファドケ
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.)
AT&T Corp
Original Assignee
American Telephone and Telegraph Co Inc
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 American Telephone and Telegraph Co Inc filed Critical American Telephone and Telegraph Co Inc
Publication of JPH04125476A publication Critical patent/JPH04125476A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • G01R31/318307Generation of test inputs, e.g. test vectors, patterns or sequences computer-aided, e.g. automatic test program generator [ATPG], program translations, test program debugging

Abstract

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

Description

【発明の詳細な説明】
[0001]
【産業上の利用分野】
本発明は、電子デバイス及びソフトウェアプログラムの
テスト方法に関し、特に、その種のテストを実行するた
めの最適なテストの組を生成する方法に関する[000
2]
【従来の技術】
電子デバイス、ソフトウェアプログラム等の製品の設計
を、それらが販売に供される前に企図された通りの機能
を満足に実行することを確認するためにテストすること
は常に必要である。簡潔に述べれば、新たな設計のテス
トを行なうことば、独立したパラメータの組よりなる実
験手続きをその各々のレベルすなわち値を一回の実、験
毎に変えて実行し、その結果を記録することである。そ
ののち、それらの結果は、そのテストされた設計の有効
性を確認するために解析される。過去においては、特定
の製品を適切にテストするために要求されるテストファ
クタ及びレベルは、設計者によりその特定の設計及びテ
ストの結果得られる製品の応答に関する知識のみに基づ
いて導出されていた。しかしながら、電子デバイス及び
ソフトウェアプログラムがより複雑になるにつれ、この
種のテストファクタ及び各々のファクタがとるべき値さ
らにそれらのどの組合せを用いるべきかを導出する仕事
が非常に困難になりつつある。そのため、製品のテスト
段階が今では全体の開発に係る手間の内のおよそ30−
40%を占めており、それゆえ、そのための費用がその
種のデバイス及びソフトウェアの価格における大きな比
率を占めつつある。 [0003] この問題と取り組むために、設計者は今ではテストパタ
ーン(ケース)の生成を簡潔にするのを補助する、いく
つかの相異なった方法を用いつつある。その種の方法の
一つにおいては、一般に直交行列と呼称されるものを用
いている。直交行列は、ラテン方陣としても知られてい
るものであるが、オイラー(Euler)の時代から用
いられてきており、最近では、欠陥率例えば百方コード
性に2欠陥というようなソフトウェアに対するテストケ
ースの生成に効果的であることが証明されている。 [0004] 直交行列を用いるために、設計者は例えばソフトウェア
コマンドをコマンドに対するファクタ(パラメータ)の
数及び各々のファクタに関するレベルの数を規定する2
項組(2−タプル)にマツピングする。そののち、設計
者は直交行列のライブラリを自ら検索して前記2−タプ
ルと一致する最適直交行列を捜す。 [0005]
【発明が解決しようとする課題1 しかしながら、この方法には、設計者がどの直交行列が
前記2−タプルを最適にカバーするかを認識できないこ
とが多々あるという問題点が含まれている。結果として
、設計者は、所童するテストケースの生成に最適な行列
ではなく、効率のよくない行列を選択してしまうことに
なる。 [0006] 【課題を解決するための手段】 従来技術に対する前進が、本発明に係るテスト生成方法
によってなされる。当該テスト生成方法は、当該方法を
用いるユーザによって入力されたテストパラメータ(フ
ァクタ)及びその対応する値(レベル)に基づいて、対
応するテストケースを生成するのに最適な最小直交行列
を選択する。そののち、当該方法は、対応するテストケ
ースの組を生成し、例えばコンピュータのモニタ等の出
力デバイスに出力する。このように、ユーザは、テスト
ファクタ及びそれぞれに対応するレベルを入力するだけ
でよい。− [0007] 具体的には、本発明の原理にしたがって、直交行列の選
択が、直交行列の各々を対応するキュムラティブレベル
ベクトルによって特徴付けを行ない力りユーザの入力を
対応するキュムラティブレベル入力ベクトルに形成する
ことによってなされる。そののち、テストケースを生成
するのに最適の最小直交行列カミ入力ベクトルと選択さ
れる行列を特徴付けるキュムラティブベクトルとの間の
あらがじめ定め、られた関係に基づいて選択される。本
発明のある具体例においては、当該関係は、例えば、入
力ベクトルの値が選択された行列に関するキュムラティ
ブベクトルの対応する値よりも決して大きくないという
ものである。 [0008]
【実施例】
複数個の標準直交行列から一つを選択するには、ユーザ
は少なくとも4(a)テストさるべきファクタ(パラメ
ータ)の数及び(b)これらのファクタの各々に対応す
るレベルの数をまず規定しなければならない。(以下、
本明細書においては、 パラメーダ′という用語と′”
ファクタ″という用語は相互に交換可能であるように用
いられ、かつ、 レベル″という用語とパ値″という用
語も相互に交換可能であるように用いられる。)その後
、ユーザは、選択された制御ファクタの全てを調べるた
めに生成さるべき最少数の実験を規定するための自由度
の総数を決定する。あるファクタに係る自由度の数は、
当該ファクタに対して選択されたレベルの数から1を減
じたものに等しい。加えて、−自由度は、テストケース
を定式化するために用いられる制御ファクタの数に拘ら
ずに、全体の平均に係るものである。 [0009] 例えば、ある特定のプロジェクト(実、験)が、7つの
2値フアクタを必要とすると仮定する。この実験に係る
自由度の総数は8である一全体の平均に対して12値フ
アクタに対して7(すなわち、7x(2−1))である
。 [0010] 図1には、複数個の相異なった直交行列を規定する図表
が示されている。具体的には、識別さ−れな行列の各々
における列及び行の総数及び対応する値が行にわたって
分配されている様子を識別している。例えば、直交行列
L4は、4つの列と3つの行を有し、その各々の行が2
つのレベルを有している。さらには、L16a2という
行列は、16の列と13の行を有し、その内の12の行
が2つのレベル、かつ、1つの行が4つのレベル、を有
している。 [0011] 特定の直交行列がテストケースの組の規定に係る実行可
能な選択であるためには、当該行列の列の数が少なくと
も当該特定の実験に対して計算された自由度の数に等し
くなければならない。よって、8つの自由度を有する前
掲のケースにおいては、L8で示された行列が最も適切
な行列である。なぜならば、当該行列は8列及び7行を
有し、各行が2つのレベルを有するからである。 [0012] 次の具体例として、図2に示されているように、1つの
2レベルフアクタ、3つの3レベルフアクタ及び1つの
5レベルフアクタを有する実、験を考える。図2におい
ては、 LEVELS“°とラベルされている行に示さ
れた文字は、対応するファクタによって仮定されている
対応する値を表わしている。例えば、ファクタF2は、
d及びDによって表わされている2つの値の内のひとつ
を取る。この実、験においては、自由度の数は12に等
しい((2−1)+3 (3−1) +(5−1)+1
)。この実、験が12の自由度を有しているので、少な
くとも12の列を有する直交行列がテストケースの最適
な組を規定するための最も適切な行列で有り得る。図1
に示されたライブラリにおいては、唯1つの行列、すな
わち行列L12、が12の列を有している。しかしなが
ら、行列L12は11の2レベルフアクタを有する実験
に対してはよい選択であるカミ図2の実験に対してはよ
い選択ではない。なぜならば、行列L12は、3レベル
フアクタ及び5レベルフアクタを有するテストケースを
規定するために用いられ得ないがらである。従って、設
計者は、より大きな行列を用いることを考慮しなければ
ならない。 [0013] しかしながら、図1に示されたライブラリを検索するこ
とにより、その中で規定されたどの行列が1つの2レベ
ルフアクタ、3つの3レベルフアクタ及び1つの5レベ
ルフアクタを有する実、験に対する最良の選択であるか
は、直ちには明らかではない。ここに問題、すなわち、
設計者は、どの直交行列を所定の実験に対するテストケ
ースの最適の組を生成するために選択するべきか、とい
う問題の核心が存在している。我々は、通常、行列の選
択は簡単な仕事ではなく、設計者が直交行列に対して精
通していることを要求する、ということを見いだした。 さらに、これらのプロセスの自動化の方法を研究した。 この自動化においては、設計者は、ファクタの数及びそ
れぞれの対応するレベルをコンピュータのキーボード等
を介して自動化装置に入力するだけでよい。自動化装置
は、そののち、最適な直交行列を選択し、選択された直
交行列を用いてテストケースを生成する。 [0014] 我々は、行列の選択を行なうアルゴリズムの設計が複雑
となりかつ失敗し易いことを見いだした。 [0015] しかしながら、本発明の原理に従って、直交行列選択問
題は、図1にリストされた行列に対して規定されたレベ
ルの値を所謂キュムラティブレベルベクトル(CLV)
に変換することによって、非常に簡単化される。具体的
に述べれば、本発明においては、与えられた行列に対し
て規定されたレベルの値を行列ベクトルとして扱う。そ
ののち、当該行列ベクトルから対応するCLVが生成さ
れる。すなわち、当該CLVの第一の値は当該行列ベク
トルの第一の値である。当該CL■の第一の値は、その
後、当該行列ベクトルの第二の値に加算されて当該CL
vの第二の値が生成される。その後、当該CLVの第二
の値が当該行列ベクトルの第三の値に加算されて当該C
LVの第三の値が生成される。当該CLVの第三の値は
、その後、当該行列ベクトルの第四の値に加算されて当
該CLVの第四の値が生成される、等等。すなわち、C
LVの最新の値が行列ベクトルの月の値と加算されてC
LVの次の値が生成される。 [0016] 前述のプロセスが図3に描かれており、直交行列L18
a2を表現する行列ベクトル06001が対応するCL
V77111に変換される様子が示されている。CLV
の重要な性質の一つは、それが直ちに、対応する直交行
列によってサポートされるファクタの数にわたって2か
ら6の値を取る種々のファクタレベルが分配される様子
を識別するということである。例えば、行列L18a2
に対するCLV77111は、当該行列によってサポー
トされる7つのファクタが、例えば、7つの2レベルフ
アクタ、あるいは7つの3レベルフアクタ、あるいは1
つの4レベルフアクタ、1つの5レベルフアクタ及び1
つの6レベルフアクタを有する実、験において用いられ
ることを示している。 [0017] 加えて、本発明に従って、特定の実験に対して規定され
る種々のファクタレベルが最適行列検索をさらに簡単化
するためにキュムラティブレベルベクトルに変換される
。ある直交行列に対するCLVとある実験に係る対応す
るファクタ(入力ベクトル)のレベルを規定するCLV
とを区別するために、後者をCLV−Eと呼称する。具
体的には、CLV−Eは、入力ベクトルから、CLVが
対応する直交行列に対して生成されたのと同一の方法で
生成される。例えば、図4は、図2に示された実、験に
対する入力ベクトルを別な形式で表わしたものである。 前述されているように、この実験に対する入力ベクトル
は、1つの2レベルフアクタ3つの3レベルフアクタ及
び1つの5レベルフアクタを規定する(13010)。 図4に示されているように、結果として得られるCLV
−Eは54110であり、これは既に議論されたように
入力ベクトル13010に前記キュムラティブレベル手
続きを適用することによって得られる。 [0018] CLV−Eと最適直交行列との一致をさらに促進するた
めに、図1にリストされた直交行列に対して示された行
列ベクトルがそれぞれに対応するCLVベクトルに置換
されて図5に示されている。図5より直ちに明らかなよ
うに、直交行列L18a2は、図2の実験に対するテス
トケースを規定するための最適な選択である。この理由
は、当該実験に対して導かれたCLV−Eが行列L18
a2に対して導かれたCLVによって最適にカバーされ
るからである。すなわち、当該CLV−Eの各々の数字
は、CLVの対応する数字よりも大きくない。よって、
最適直交行列検索は、行列ベクトルを対応するCLVベ
クトルに変換し、入力ベクトルを対応するCLV−Eベ
クトルに変換する“ことによって大幅に簡略化される[
0019] 以上のことから直ちに理解されるように、最適直交行列
検索は容易に自動化されて、ユーザ(回路もしくはソフ
トウェア設計者)がしなければならないことが入力ベク
トルを入力するだけになる。当該自動化手段−具体的に
はコンピューターは、そののち、図5に示されたライブ
ラリ等のストアされている直交行列ライブラリを検索し
、当該入力ベクトルに基づいて最適直交行列を選択し、
テストケース行列を出力する。本発明の利点は、設計者
がテストケースの最適の組を生成するために直交行列に
関する知識を予め有していることを必要としない点であ
る[0020] 図6には、直交行列の選択を自動化し、選択された行列
に基づいて対応するテストケースを生成するように配置
されたコンピュータ10が示されている。当該コンピュ
ータ10は、例えば、ヒユーレットパラカード(Hew
let−Packard)社製のHP9000/860
である。本発明に係る配置においては、HP 9000
/860は、例えば、公知のUNIX(R)オペレーテ
ィングシステム等の特定のオペレーティングシステムの
制御下で機能する。あるいは、コンピュータ10は、エ
イ・ティー・アンド・ティー(AT&T)社製のPC6
300plus等の所謂パーソナルコンピュータでもよ
い。具体的には、特定の実験に対するテストケースの組
を生成するために、ユーザは、本発明をコンピュータ1
0上で実現するテストケース生成ツールを起動する。ユ
ーザは、このことを、コンピュータ10がデイスプレィ
20上に示したプロンプトに応じて対応するコマンド、
例えば○ATS (すなわち、直交行列テストシステム
−or thogonal  array  test
  system −)、をキーボード15を介して入
力することにより行なう。そののち、ユーザは、図7に
示されているように、ファクタ及び対応するレベル、さ
らに関連するパラメータのアイデンティティを入力する
【002月 図7は、ユーザが図2に示された実験に関連するデータ
を入力する様子を示している。具体的に述べれば、ユー
ザは、 FACTOR” という語を入力し、次のプロ
ンプトに対してTAB (図7においては直線で表わさ
れている)及び°′NAME” という語、さらにファ
クタの名前−ここではFl−を入力する。その次のプロ
ンプト(〉)に対しては、ユーザはTAB、   or
der  という語及びそれに引き続いて関連するファ
クタすなわちFlのオーダーを規定する数を、関連する
テストケースのコマンドライン上に入力する。この具体
例では、ファクタF1は、1という値によって示されて
いるように、コマンドライン上で一番目に配置されてい
る。次のプロンプトでは、ユーザはTABに引き続いて
”LevelS という語を入力する。そののち、ユー
ザは名前のつけられたファクタに係る各々のレベルの値
を入力する。前述されているように、ファクタF1は、
3つの3レベルフアクタの内の一つである。従って、ユ
ーザは当該ファクタに対してキーボード15を介して値
O11及び2によって識別される3つのレベルを入力す
る。ここで、これらのレベルの後には対応する値が入力
される。図7より明らかなように、ユーザはファクタF
1に対して値a、b及びCを入力する。その後、ユーザ
は、図7に示されているように、残っているファクタに
係るレベル及びパラメータを入力する。 [0022] 本発明の一側面として、ユーザは入力するテストケース
データを特定のコマンドを関連させることが可能である
。このためには、ユーザは、 (a)′” comma
nd” という語(b)コマンドの型(例えば、・ c
type    main)及び(C)コマンドの識別
(例えば、 c m d””’xyz)を入力すればよ
い。ここで、  xyz“′というコマンドは架空のも
のである。その後、ユーザは入力ファイルの終端を表わ
す” c n t l−D”を入力する。(ここで、図
に示された直線が、前述されているように、キーボード
からのtab入力を表わすことに留意されたい。) [0023] 入力に応答して、本発明に係るテストケース生成ツール
(以下、 ツール゛′と呼称する)は入力ベクトルを形
成し、それをCLV−Eベクトルに変換する。後者のベ
クトルを用いて、ツールは図5に示されたライブラリを
、対応するテストケースを生成するために最適の直交行
列を選択するために検索する(当該ライブラリはコンピ
ュータ10のメモリにストアされている)。(前述され
ているように、最適直交行列は、CLV−Eの各々の数
の値が関連するCLVの対応する数の値よりも大きくな
いような最小行列である。)従って、ツールは直交行列
L18a2をテストケースを生成するのに最適な行列と
して選択する。 [0024] 図8には、直交行列L18a2が示されており、ツール
は当該行列をコンピュータ10のメモリからアンロード
する。ここで、行列の最下段に示されている列Oは、行
列の一部ではなく、行に係る最大の値を示しており、後
に説明されるように、当該行列の対応する行に対する、
ユーザによって入力された名前を有するファクタの割当
てに関してツールを補助するために用いられることに留
意されたい。例えば、列0における6という値は、当該
行列の第1行に含まれる最高のレベルが6であることを
示している。列Oにおける残りの3という値は、行1か
ら7の各々に含まれる最高のレベルが3であることを示
している。 [0025] 従って、ツールは列Oに与えられている情報をファクタ
を対応する行にすばやく割り当てるために用いる。この
ことを行なうために、ツールは具体的(こは行7から開
始して左側の行1の方へ進む。しかしながら、このよう
にして進行する前に、ツールはまずファクタF5を行1
に割り当てる。なぜなら、当該性は、ファクタF5にか
かる5つのレベルをカバーするために十分な数のレベル
を有する当該行列中の唯一の行であるからである。その
のち、ツールは、より低いレベル、すなわち各々3つの
レベルを有するファクタF1、F3及びF4をそれぞれ
行12及び3に割り当てる。その後、ツールは次に低い
レベル、すなわち2つのレベルを有するファクタF2を
行4に割り当てる。そののち、ツールは行列L18a2
の行2及び行4から7を用いて対応するテストケースを
生成する。ここで、行1が6つのレベルに対応している
のに対してファクタF5が5つのレベルしか有かないこ
とに留意されたい。このケースを扱うために、ツールは
、本発明の一側面に従って、ファクタF5に所謂ダミー
レベルを追加し、追加されたレベルに所定のパラメータ
を割り当てることによってファクタF5を6レベルに増
加する。当該具体例においては、ファクタにダミーレベ
ルが追加されるべき場合には、図9に示されているよう
に、対応するファクタに既に割り当てられているパラメ
ータの内の一つが当該レベルに割り当てられる。 [0026] 図9は、ツールが図8の直交行列を用いて生成した18
のテストケースが示されている。当該行列の行1におけ
る6というレベル(列16から18)の各々において、
ツールがこれらのレベルに対してダミーレベル、すなわ
ちファクタF5に係るII WI+ という値を追加し
ていることがわかる。さらに、ツールがファクタF2(
2レベルフアクタ)に対して割り当てられた行4におい
て、レベル3を表わす各々の列にダミーレベルを挿入し
たことも理解される。 [0027] ツールがテストケースを生成する場合には、当該テスト
ケースがデイスプレィ20上に表示される。この時点に
おいて、ユーザは特定のソフトウェアあるいは回路をテ
ストするために当該テストケースを関連する架空のコマ
ンド”xyz”によってコンピュータ10に実行させる
。あるいは、ユーザは当該テストケースを後の使用のた
めにファイルにストアするように指示する。(ここで、
図2の実験に係る入力ベクトルに対して導出された可能
なテストの組合せの総数が270であることに留意され
たい。しかしながら、この数は直交行列L18a2を用
いて18のテストケースに還元されている。)[002
8] 本発明の一側面として、ユーザが特定のファクタに対し
て二組以上のパラメータの組を規定しそのような組の各
々を実験における他のファクタに係る対応する値に依存
させることが可能である。例えば、図10は、4つの値
からなる3つの組、すなわち901から903がファク
タF3に対して規定されている実験を示している。当該
実験においては、パラメータ901から903の3つの
組がファクタF3に対して規定された3つの値にそれぞ
れ依存していることが仮定されている。 [0029] ユーザがキーボード15を介してファクタ及びその対応
するレベルを入力すると、前述のツールが直交行列L2
5を対応するテストケースを生成するのに最適な行列と
して選択する。行列L25の一部が図11に示されてい
る。既に議論されているような方式で、ツールはファク
タF1からF4までを行列L25のそれぞれ行6.5.
4及び3に割り当てる。そののち、ツールは対応するテ
ストケースを生成する。当該テストケースは図12に示
されている。図11及び12よりわかるように、テスト
ケースNo、1は第一のレベル値を要求する。従って、
ツールは関連するファクタの各々の第一のレベル値をそ
れぞれ対応する行に挿入する。このことを行なうに際し
、ツールは第一のレベル値、すなわち値” o”  を
組901から選択する。なぜなら、組902はファクタ
F2の第一のレベル値″f++に依存するからである。 他方、実験No、2 (テストケースNo、2)は、行
3から6までに対する第二のレベル値を規定する。従っ
て、ツールはテストケースNo、2を生成するに際して
第二のレベル値、すなわち値′” 1″  を組902
から選択する。なぜなら、組902はファクタF2の第
二のレベル値u g に依存するからである。さらに、
実験No、7に対して行3及び4がそれぞれ3つ及び5
つのレベル値を要求することも理解される。対応するテ
ストケースNo。 7においては、ツールはファクタF2に追加された第五
のレベル値に対してダミー値として°′h”°を挿入し
、ファクタF3に対して組903の第四のレベル値″8
“を挿入する。なぜなら、組903はファクタF2の値
II hl+に依存するからである。 [00301 本発明の実用性は、図13に示されているように、ノー
ドネットワークに係る特定の可能性をテストするため、
すなわち、当該ノードの内の対応するものに係るステー
タスアラームの動作を遠隔地から制御するため、に用い
られるテストケースの生成を例示する具体例によって示
される。ノード1201から1207の各々は、対応す
る電話機能(図示せず)の動作をモニターして種々の結
果、すなわちアラームコンデイション、を中央にレポー
トする機能動作システムである。 ノード1201から1207は、例えばAT&T社製の
Datakit仮想回路交換機等の装置を用いて所謂円
環トポロジーによって相互に接続されている。当該テス
トは、当該ネットワークが将来例えば9つのノード(1
208及び1209、図示せず)に増大した場合の可能
性を説明するために必要とされたものである。従って、
本具体例に係る実験は、各々2つのレベルを有し、一方
のレベルがノードにおけるアラームをオンにするために
用いられ他方のレベルがアラームをオフニするために用
いられる、9つのファクタF1からF9を有している。 9つの2レベルフアクタに係る可能な全ての組合せは5
12の相異なったテストケースよりなることに留意され
たい。 [00313 しかしながら、テストケースの数は、本発明にしたがっ
てテストケースが生成された場合、すなわち図14に示
されているように直交行列L12を最適な選択肢として
選択した結果、僅か12にまで減少する。特定のテスト
ケースに対する1″ という値は、特定のノード、例え
ばファクタ1によって表現されるノード1201、に関
するアラームがオン状態におかれていることを表わして
いる。 2″ という値は、アラームがオフ状態におかれている
ことを表わしている。 [0032] 図15には、本発明をコンピュータ10上で実現するプ
ログラムが論理演算を扱う流れ図の形で示されている。 当該プログラムは、起動されるとブロック1501に進
んでプログラム内の種々のパラメータ、ポインタ等を初
期化する。そののち、プログラムはブロック1502に
進んで直交行列のライブラリ(図1)がコンピュータ1
0のメモリ上にストアされているか否かをチエツクする
。ストアされている場合には、プログラムはブロック1
505へ進む。そうでない場合にはプログラムはブロッ
ク1503へ進む。ブロック1503においては、プロ
グラムはデイスプレィ上にエラーを出力してブロック1
504において終了する。 [0033] ブロック1505においては、プログラムは直交行列(
0,A、)のライブラリのコピーを所謂RAMメモリ等
の局所記憶装置(ローカルメモリ)にストアしブロック
1506へ進む。ブロック1506においては、プログ
ラムは、ブロック1505において得られたO、A、ラ
イブラリのCLV版(すなわち、図5に示されたライブ
ラリ)を生成する。(あるいは、ブロック1505にお
いて後者のライブラリのコピーがメモリにストアされ、
ブロック1506が削除されることに留意されたい。)
加えて、ブロック1506においては、プログラムはユ
−ザから入力されたデータを読み込み、ユーザがエンド
オブファイル(EOF)、例えばcntl−d、を入力
するとブロック1507に進む。 [0034] ブロック1507においては、プログラムはユーザの入
力をチエツクしてパラメータ間に依存性があるかないか
を調べる。依存性がある場合には、プログラムはテスト
ケース生成の準備の際にパラメータ間のリンクを生成す
る。そののち、プログラムはブロック1208に進んで
ユーザ入力から入力ベクトルを生成し、関連するCLV
−Eベクトルを形成する。その後、プログラムはブロッ
ク1506で生成したCLVライブラリを検索し最適直
交行列を見いだす。ブロック1509においては、プロ
グラムは検索結果をチエツクし、最適直交行列が見いだ
されなかった場合にはブロック1510へ進む。そうで
ない場合には、ブロック1512へ進む。 [0035] ブロック1510においては、プログラムはデイスプレ
ィ20上に、最適行列が選択され得るためにユーザが入
力を修正する方法を提案するメツセージを出力する。例
えば、プログラムは、少なくとも1つのレベルが入力フ
ァクタから削除さるべきである、などと提案する。この
提案は、削除されたレベルが例えばユーザによって形成
された個別のテストケースとしてテストされ得ることに
基づいてなされる。そののち、プログラムはブロック1
511において終了する。 [0036] ブロック1512においては、プログラムはROMメモ
リ等のメインメモリから選択された直交行列のコピーを
読み込み、それをRAMメモリ等の一時メモリヘスドア
する。その後、プログラムはブロック1513へ進んで
、ユーザによって入力されたファクタを当該行列の個々
の行へ割り当てる。プログラムはこの作業を前述された
方法で行なう。そののち、プログラムはブロック151
4へ進む。ブロック1514においては、プログラムは
選択された0、A、からレベルを表わす列を読み込み、
ブロック1515へ進む。ブロック1515においては
、プログラムは当該0.A、の最後に到達したか否か、
すなわち対応するテストケース生成が完了したか、をチ
エツクする。完了した場合には、プログラムはブロツク
1517で終了する。そうでない場合には、プログラム
は1516へ進んでブロック1507で形成した依存性
リンクを用いて前述の方法で関連するテストケースを生
成する。その後、プログラムはテストケースをデイスプ
レィ20に出力し、ブロック1514へ進んで選択され
た0、A、のレベルを表わす次の列を用いて次のテスト
ケースを出力する。 [0037] 以上の説明は、本発明の一実施例に関するもので、この
技術分野の当業者であれば、本発明の種々の変形例が考
え得るカミそれらはいずれも本発明の技術的範囲に包含
される。 尚、特許請求の範囲に記載した参照番号は発明の容易な
る理解のためで、その技術的範囲を制限するよう解釈さ
れるべきではない。 【発明の効果】 以上述べたごとく、本発明によれば、プログラムあるい
は回路等のテストを行なう場合のテストケースの最適な
組がわずかな入力作業を行なうだけで自動的に生成され
、テストケース生成に係る困難が解決される。
【図面の簡単な説明】
【図1】 本発明の具体例において用いられる公知の直交行列のラ
イブラリを示す図表。
【図2】 架空の実、験に関する種々のファクタ及びレベルを示す
図表。
【図3】 図1に示された行列のうち特定の一つを特徴付ける複数
のファクタ及びそれぞれに対応するレベルが、本発明の
原理に従って、キュムラティブレベルベクトルに変換さ
れる様子を示した図。
【図4】 図2に示されたファクタ及びレベル力瓢本発明の原理に
従って、キュムラティブレベル入力ベクトルに変換され
る様子を示した図。
【図5】 図1に示されたライブラリを別な形式で示した図表。
【図6】 本発明がインプリメントされ得るコンピュータ配置を示
す図。
【図7】 ユーザが図6に示された配置に特定の実、験に係るファ
クタ及びレベルを入力する様子を示した図。
【図8】 図1及び図5のライブラリにリストされている行列の内
の一つを示した図。
【図9】 図8の行列を用いて本発明の原理に従って生成されたテ
ストケースを示した図表。
【図101 相異なったテストファクタのレベル間に依存性がある場
合におけるテストケース生成例を示す図。 【図11】 相異なったテストファクタのレベル間に依存性がある場
合におけるテストケース生成例を示す図。
【図12】 相異なったテストファクタのレベル間に依存性がある場
合におけるテストケース生成例全示す図。
【図13】 本発明の実際の応用例を示す図。
【図14】 本発明の実際の応用例を示す図。
【図15】 図6のコンピュータ配置において本発明を実現するプロ
グラムを示した流れ図
【図16】 図6のコンピュータ配置において本発明を実現するプロ
グラムを示した流れ図
【図17】 図15及び図16が配置きるべき様子を示した図。
【符号の説明】
10 コンピュータ 15 デイスプレィ 20 キーボード
【書類基】
【図1】 図面
【図2】
【図3】
【図41 【図7】 〉 ATS 〉 ACTOR AMEFl ORDER1 EVELS ACTOR AMEF2 ORDER2 EVELS ACTOR AMEF5 ORDER5 EVELS □0 □4 □W TYPE AIN MD  XYZ 〉 TLD

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】特定の装置の設計あるいは動作を評価する
    ためのテストケースを生成する装置において、 前記装置が直交行列のライブラリを有し、前記直交行列
    が前記ライブラリ中で対応するキュムラティブベクトル
    によって特徴付けられており、各々対応する個数のレベ
    ルを有する複数個のファクタの受信に応答して、前記フ
    ァクタ及びそれぞれの対応するレベルの関数として生成
    された一連の数によって特徴付けられるキュムラティブ
    レベル入力ベクトルを生成する手段;及び、前記一連の
    数の各々の値と前記選択された行列を特徴付けるキュム
    ラティブ入力ベクトルの対応する値との間の所定の関係
    に基づいて前記ライブラリから前記行列の内の一つを選
    択し、そののち前記選択された行列を用いて前記テスト
    ケースを生成する手段; を有することを特徴とするテストケース生成装置。
  2. 【請求項2】前記所定の関係が、さらに、前記一連の数
    の各々の値が前記選択された行列に係るキュムラティブ
    レベルベクトルの前記対応する値より大きくないことに
    基づいていることを特徴とする請求項1に記載のテスト
    ケース生成装置。
  3. 【請求項3】前記テストケースを生成する前記手段が、
    さらに、ユーザからの所定のソフトウェアコマンドの受
    信に応じて前記コマンドを前記テストケースの各々と関
    連付けかつ出力デバイスに生成されたテストケースを出
    力する手段を有することを特徴とする請求項1に記載の
    テストケース生成装置。
  4. 【請求項4】前記入力ベクトル生成手段及び前記選択生
    成手段が、さらに、コンピュータにインプリメントされ
    たソフトウェアプログラムの対応するセグメントである
    ことを特徴とする請求項1に記載のテストケース生成装
    置。
  5. 【請求項5】前記入力ベクトル生成装置が、さらに、同
    一個数のレベルを有する前記ファクタの内の個々のファ
    クタを対応するグループとして形成しかつ前記グループ
    の内の対応するものにおけるファクタの個数を表わす数
    を関連するレベルの順序に基づいて前記一連の数として
    順序づける手段を有することを特徴とする請求項1に記
    載のテストケース生成装置。
  6. 【請求項6】前記直交行列の各々が各々対応するレベル
    の個数に関連する所定の個数のファクタによってさらに
    特徴付けられており、さらに、前記キュムラティブレベ
    ルベクトルの各々が前記行列の内の対応するものを特徴
    付ける数ファクタ及びその関連するレベル数の関数とし
    て導出されることを特徴とする請求項1に記載のテスト
    ケース生成装置。
  7. 【請求項7】前記テストケースを生成する前記手段が、
    さらに、前記ユーザから受信したファクタの内の少なく
    とも一つに対して、当該ファクタに係るレベルの個数が
    前記選択された行列によって提供される最も近いレベル
    数未満である場合に、少なくとも一つのダミーレベルを
    追加する手段を有することを特徴とする請求項6に記載
    のテストケース生成装置。
  8. 【請求項8】前記ユーザから受信したファクタの内の少
    なくとも一つが、各々前記ユーザから受信したファクタ
    の内の他のものに関連する対応するレベルに依存する前
    記レベルの相異なった組の所定の個数に関連しており、
    前記テストケースを生成する前記手段が前記テストケー
    スが生成されつつある間に前記依存性を解説する手段を
    有することを特徴とする請求項1に記載のテストケース
    生成装置。
  9. 【請求項9】装置の設計あるいは動作を評価するための
    テストケースを生成する方法において、 前記評価が各々対応する個数のレベルを有する所定の個
    数のファクタによって特徴付けられており、 各々、前記レベルの内の対応するものに関連する所定の
    個数のファクタを表現する各々特定の一連の値によって
    特徴付けられ、ライブラリ中で各々対応する行列を特徴
    付ける一連の値より導出された対応するキュムラティブ
    レベルベクトルによって表現されている直交行列のライ
    ブラリを管理するステップ;前記レベルの対応する個別
    のものに関連する前記評価ファクタの個数を表わす別の
    一連の値を形成しかつ前記別の一連の値をキュムラティ
    ブレベル入力ベクトルに形成するステップ; 前記ライブラリから前記入力ベクトルの各々の値が前記
    行列を特徴付けるキュムラティブレベルベクトルの対応
    する値よりも大きくないような前記行列の内の最小のも
    のを選択するステップ;及び、 前記テストケースを、前記選択された行列及び前記評価
    ファクタ及びその対応するレベル、の関数として生成す
    るステップ;よりなることを特徴とするテストケース生
    成方法。
JP2413702A 1990-01-02 1990-12-25 テストケース生成装置及びその方法 Pending JPH04125476A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US459866 1990-01-02
US07/459,866 US5159600A (en) 1990-01-02 1990-01-02 Arrangement for generating an optimal set of verification test cases

Publications (1)

Publication Number Publication Date
JPH04125476A true JPH04125476A (ja) 1992-04-24

Family

ID=23826444

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2413702A Pending JPH04125476A (ja) 1990-01-02 1990-12-25 テストケース生成装置及びその方法

Country Status (2)

Country Link
US (1) US5159600A (ja)
JP (1) JPH04125476A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0540967A2 (en) * 1991-10-25 1993-05-12 Fujitsu Limited A method for generating test patterns for use with a scan circuit

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5357452A (en) * 1992-06-30 1994-10-18 Sun Microsystems, Inc. Automatic generation of auto-checking testing functions
US5359546A (en) * 1992-06-30 1994-10-25 Sun Microsystems, Inc. Automatic generation of test drivers
US5390193A (en) * 1992-10-28 1995-02-14 Motorola, Inc. Test pattern generation
US5371883A (en) * 1993-03-26 1994-12-06 International Business Machines Corporation Method of testing programs in a distributed environment
US5418793A (en) * 1993-06-22 1995-05-23 At&T Corp. Method and apparatus for testing a complex entity
JPH0755895A (ja) * 1993-08-10 1995-03-03 Fujitsu Ltd 高効率故障検出用テストパターンの作成方法
US5542043A (en) * 1994-10-11 1996-07-30 Bell Communications Research, Inc. Method and system for automatically generating efficient test cases for systems having interacting elements
US5831995A (en) * 1995-10-23 1998-11-03 Lucent Technologies Inc. Arrangement for generating command sequences using orthogonal arrays
US6182258B1 (en) 1997-06-03 2001-01-30 Verisity Ltd. Method and apparatus for test generation during circuit design
US6615163B1 (en) 1999-12-13 2003-09-02 Dell Usa, L.P. System and method for developing testing configurations
US7017150B2 (en) * 2001-08-20 2006-03-21 Sun Microsystems, Inc. Method and apparatus for automatically isolating minimal distinguishing stimuli in design verification and software development
CA2366344A1 (en) * 2001-12-27 2003-06-27 Ibm Canada Limited - Ibm Canada Limitee Organization of test cases
US7032212B2 (en) * 2002-05-06 2006-04-18 Microsoft Corporation Method and system for generating test matrices for software programs
US20050177773A1 (en) * 2004-01-22 2005-08-11 Andrew Hadley Software method for exhaustive variation of parameters, independent of type
US20060010426A1 (en) * 2004-07-09 2006-01-12 Smartware Technologies, Inc. System and method for generating optimized test cases using constraints based upon system requirements
WO2006011328A1 (ja) * 2004-07-30 2006-02-02 Kabushiki Kaisha Toshiba 最適値を探索する装置、方法、記録媒体、及びコンピュータプログラム製品
US7356436B2 (en) * 2005-02-02 2008-04-08 International Business Machines Corporation Method, system, and storage medium for estimating and improving test case generation
CN100349135C (zh) * 2005-04-07 2007-11-14 华为技术有限公司 一种测试向量的产生方法
US8019049B2 (en) * 2007-03-27 2011-09-13 Avaya Inc. Method for generating reliability tests based on orthogonal arrays and field data
US20090077537A1 (en) * 2007-09-18 2009-03-19 International Business Machines Corporation method of automatically generating test cases to test command line interfaces
US20090077538A1 (en) * 2007-09-18 2009-03-19 Michael Paul Keyes Methods for testing software using orthogonal arrays
US8458664B2 (en) * 2009-02-23 2013-06-04 International Business Machines Corporation Command line interface permutation executor
CN101984416B (zh) * 2010-11-02 2014-12-10 中兴通讯股份有限公司 一种测试用例的生成方法及装置
US9529699B2 (en) * 2013-06-11 2016-12-27 Wipro Limited System and method for test data generation and optimization for data driven testing
US20150067648A1 (en) * 2013-08-27 2015-03-05 Hcl Technologies Limited Preparing an optimized test suite for testing an application under test in single or multiple environments
CN109656802B (zh) * 2017-10-10 2022-05-13 大商所飞泰测试技术有限公司 基于高耦合自动匹配技术的测试用例设计系统
CN112052153B (zh) * 2019-06-06 2023-05-16 腾讯科技(深圳)有限公司 产品版本测试方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0540967A2 (en) * 1991-10-25 1993-05-12 Fujitsu Limited A method for generating test patterns for use with a scan circuit
EP0540967A3 (en) * 1991-10-25 1994-11-23 Fujitsu Ltd A method for generating test patterns for use with a scan circuit

Also Published As

Publication number Publication date
US5159600A (en) 1992-10-27

Similar Documents

Publication Publication Date Title
JPH04125476A (ja) テストケース生成装置及びその方法
US7761397B2 (en) Rule processing method and apparatus providing automatic user input selections
US5016204A (en) Expert system for performing diagnostic and redesign operations incorporating multiple levels of simulation detail
CN110188135B (zh) 文件生成方法及设备
US20210208996A1 (en) Verification automation apparatus, verification automation method, and computer-readable recording medium
CN109062819B (zh) 一种软件测试用例的生成方法及装置
CN108170602B (zh) 一种测试用例生成方法、装置、终端及计算机可读介质
Wever et al. Active coevolutionary learning of requirements specifications from examples
US5831995A (en) Arrangement for generating command sequences using orthogonal arrays
WO2021064881A1 (ja) 人員の手配装置、手配方法およびプログラム
JP6802109B2 (ja) ソフトウェア仕様分析装置、及びソフトウェア仕様分析方法
AU2010362097B2 (en) Method and system for propagation of amendment made to a master to copies
US6035112A (en) Cell library generating method and apparatus
JP5600826B1 (ja) 非構造化データ処理システム、非構造化データ処理方法およびプログラム
JP2019525372A (ja) テスト設計書の生成方法
WO2021240886A1 (ja) テストスクリプト生成システム、テストスクリプト生成方法、電子制御装置
US20230065428A1 (en) Programming support program storage medium, programming support device, and programming support method
CN114020263A (zh) 一种接口配置生成方法及装置
STEIN et al. CAS
JP6686519B2 (ja) 構成選定装置、構成選定システム、方法およびプログラム
JP2002049647A (ja) 設計支援システム
JP2724241B2 (ja) ブロック図部品処理機能付きプログラム自動生成装置
JP2022012865A (ja) データ加工プログラム、データ加工装置及びデータ加工方法
CN115390930A (zh) 一种基于saas系统的初始化方法及装置
CN113407441A (zh) 软件测试方法、装置、设备及存储介质

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19970930