JPH0388046A - サービス・プロセツサ・テスト装置 - Google Patents

サービス・プロセツサ・テスト装置

Info

Publication number
JPH0388046A
JPH0388046A JP2215119A JP21511990A JPH0388046A JP H0388046 A JPH0388046 A JP H0388046A JP 2215119 A JP2215119 A JP 2215119A JP 21511990 A JP21511990 A JP 21511990A JP H0388046 A JPH0388046 A JP H0388046A
Authority
JP
Japan
Prior art keywords
screen
service processor
screens
memory
program
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
JP2215119A
Other languages
English (en)
Other versions
JPH0675253B2 (ja
Inventor
Timothy G Evans
テイモシイー・グレーン・エバンズ
Mark W Gould
マーク・ウイリアム・ゴールド
Timothy J Mcnamara
テイモシー・ジヨン・マクナマラ
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH0388046A publication Critical patent/JPH0388046A/ja
Publication of JPH0675253B2 publication Critical patent/JPH0675253B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2257Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using expert systems

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

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

Description

【発明の詳細な説明】 A、産業上の利用分野 本発明は、一般にコンピュータ・テスト装置に関し、よ
り詳しくは、テスト・ケースを自動的に生成して、他の
コンピュータに関連するサービス・プロセッサをテスト
するためのコンピュータ・ツールに関する。
B、従来の技術及びその課題 多くのコンピュータは、コンピュータが適切に稼働して
いることを確証するか、またはコンピュータをデバッグ
する場合に人を支援するために使用される、サービスま
たはサポート・プロセッサを備えている。サービス・プ
ロセッサには、コンピュータ・メモリに書き込み、それ
からメモリの内容を読み取って、メモリが適切に稼働し
ているか否かを判断する能力を有するものもある。また
、サービス・プロセッサには、初期プログラムをロード
し、初期マイクロコードをロードし、メモリが適用業務
に割り当てられたことを確認し、そして動作可能な通信
チャネルを識別できるものもある。
またサービス・プロセッサには、いくつかの誤動作を修
正したり、修正を行なうためにいくつかの機能をリセッ
トできるものもある。
従来周知のIBM(IBM社の登録商標)サービス・プ
ロセッサは、あるパーソナル・コンピュータ中に内在し
、IBM9370コンピュータで使用され、上記の機能
を発揮している。このサービス・プロセッサは、初期及
び中間メニュー画面を表示し、メニュー画面を経路設定
法で用いて人によって選択される終点画面を表示する。
各終点画面は、サービス・プロセッサが実施する機能、
たとえばコンピュータ・メモリ中の場所へのアクセス(
読取り/書込み)、初期マイクロコード・ローディング
(IML)、初期プログラム・ローディング(IPL)
、メモリ構成などを表示する。
これまでは、このサービス・プロセッサのテストは、人
の手または半自動的に行なわれていた。
サービス・プロセッサを手でテストするには、人はまず
メニュー画面を手で利用して、サービス・プロセッサの
経路設定機能を検査する。次に、メモリ中のある位置を
示す終点画面に到達して、(a)サービス・プロセッサ
に対して、画面上でカーソルによって参照したメモリ中
の位置に書き込むよう指示し、それから(b)続いて、
サービス・プロセッサの支援によってメモリ中の場所の
内容の読取りを意図し、サービス・プロセッサとメモリ
中のその位置が適切に稼働していることを検査する(す
なわち、終点画面を実行する)。IMLまたはIPLな
どの別の機能を表示する他の終点画面は、同じ方法でテ
ストされる。
サービス・プロセッサを半自動的にテストするには、人
はまず、サービス・プロセッサに対して経路中の各画面
を順次呼び出すように指示するために、各画面について
コマンドを指定した個別のテスト・プログラムを書き込
む。このプログラムはまた、各メニュー画面のためのコ
マンドも含み、メニュー画面の経路設定機能が適切に稼
働しているか否かを判定する。このプログラムはまた、
終点画面を実行させるためのステップも含む。
しかし、テスト・プログラムを使用して提供された自動
化のレベルにもかかわらず、サービス・プロセッサをテ
ストするための周知のプロセスはなお時間のかかるもの
である。この理由は、人が、経路中のどの画面も、テス
トのためのどの終点画面も特定しなければならず、した
がって、実行を要求するこのようなサービス・プロセッ
サに関連する数百の終点画面、及び経路設定テストを要
求するさらに多くのメニュー画面が存在可能であること
である。
したがって、本発明の一般的な目的は、上記及び他のサ
ービス・プロセッサのメニュー及び終点または機能画面
をテストするための、完全自動テスタを提供することで
ある。
本発明のさらに特定の目的は、多様なサービス・プロセ
ッサ及びそれに関連する画面に容易に適用できるテスト
・ケース・ジェネレータを提供することである。
本発明の他の特定の目的は、必要テスト時間を最小にす
るために選択された画面グループからのサンプル・テス
トのためにプログラム可能な、上記の形式のテスト・ツ
ールを提供することである。
本発明の他の特定の目的は、汎用メニュー画面及び関連
する終点画面をテストするために使用できる、上記のよ
うなテスト・ツールを提供することである。
C0発明が解決しようとする課題 本発明は、コンピュータに関連するサービス・プロセッ
サをテストするために、テスト・ケースを自動的に発生
させる装置にある。この装置は、サービス・プロセッサ
によって生成されるマツピング画面のためのメモリまた
は知識ベースを含む。
サービス・プロセッサの画面は階層様式に配置され、階
層内で下位の他の画面にアクセスするメニュー画面、及
びサービス・プロセッサによってサービスされるコンピ
ュータのメモリを表す終点画面を含む。この装置はまた
、サービス・プロセッサによって生成される少なくとも
1つの画面を選択するためのユーザ・インタフェースを
含み、この画面は、テスト用の1つまたは複数の経路に
おいて、1つの画面グループを識別する。プログラム・
ジェネレータは、ユーザ・インタフェース及び知識ベー
スに結合され、メモリからグループ内の画面を識別する
。プログラム・ジェネレータはまた、グループの画面を
呼び出すようにサービス・プロセッサを指示し、サービ
ス・プロセッサによって実際に呼び出された画面と、テ
スト・プログラムの予想を比較することによって、グル
ープの画面間の経路設定をテストするプログラムを生成
する。
本発明の1つの機能によれば、このグループは階層の画
面の1分岐に含まれ、またプログラム・ジェネレータは
、分岐中の経路の経路数より少ない部分をテスト用に選
択することができる。
本発明の他の機能によれば、無作為テストが順次生成さ
れることができ、プログラムが停止するまで動作する。
プログラムはまた、グループ中の終点画面をテスト用に
選択する。プログラムは、サービス・プロセッサに有効
データを入力し、次いでデータが本当に入力されたこと
を検査し、または無効データが入力されるとエラー・メ
ツセージを待つことによって、終点画面を実行するよつ
指示する。本発明の他の機能によれば、プログラム・ジ
ェネレータは、終点画面内のすべて、またはすべてより
少ない領域を選択することができる。次いでプログラム
・ジェネレータは、コンピュータ中のこれらの領域にデ
ータを書き込み、適切な出力域から読み取るサービス・
プロセッサの能力をテストするためのプログラムを生成
する。
本発明の他の機能によれば、プログラム・ジェネレータ
は、領域内部値より大きな領域境界値部分を実行するこ
とができる。境界では多くのエラーが発生するので、こ
の機能は有用である。
D、実施例 これから図面を参照するが、同じ参照番号はいくつかの
図面を通じて同じ要素を示す。第1図は、従来の技術に
よる一般に10で示す中型コンピュータの選択された構
成要素、及び一般に12で示すサービス・プロセッサを
図示する。例として、コンビエータ10はIBM937
0コンピュータであり、これはクロック・メンテナンス
14、CPU1B、制御記憶メモリ18、局所記憶メモ
リ20、主メモリ22、及びチャネル・サブシステム2
4を含む。IBM9370コンピュータ及びサービス・
プロセッサ12の上記の構成要素は、ニューヨーク州ア
ーモンクのIBM社によって1981年に出版されたI
BMシステム/3701+作!理(Principle
s of 0peration)Jマニュアル(注文番
号GA22−7000)及びニューヨーク州アーモンク
のIBM社によって1987年に出版されたIBMシス
テム/370r動作原理(Principles of
 0peration) Jマニュアル(注文番号GA
22−7200)に、より詳しく記載されている。
これら2つの出版物は、本明細書に本発明の開示の一部
として参照されて包含されている。
例として、サービス・プロセッサ12GICRT17を
含むパーソナル・コンピュータであり、コンピュータ1
0の上記の構成要素の各々と、クロック・メンテナンス
14を介して対話する。
第2図は、例示的なメニュー階層と、人がコンピュータ
10をウィンドウ及び制御することができるようにする
サービス・プロセッサ12(IBM370サービス・プ
ロセッサにはない)によって生成される終点画面を、分
割した形で図示する。
サービス・プロセッサ12が活動化されると、サービス
・プロセッサはまず、「サイン・オン」画面30を生成
し、このサイン・オン画面は、ある中間メニュー画面、
すなわち開発デバッグ画面32、オヘレータ画面34、
またはカストマ・エンジニア画面36を選択するための
メニューとして使用される。このような中間画面は3つ
の汎用サービス・プロセッサ機能を定義する。第2図は
また、開発デバッグ画面32から出たメニュー画面、す
なわちカストマイズド・システム画面38及びオープン
・ツールボックス画面40を図示する。他の中間メニュ
ー画面42〜47及び終点画面62.84.8Bは、オ
ープン・ツールボックス画面40から出る。絶対記憶画
面62、実記憶画面64、及び仮想記憶画面66はすべ
て、メモリ22の部分を表すが、異なった表示モードを
提供する。
第3図は、サービス・プロセッサ12をテストするため
の半自動システムの従来の技術のブロック図である。従
来の技術によれば、人はまず、経路の中で順次に各画面
を呼び出すようにサービス・プロセッサに指示するため
に、各画面についてコマンドを指定した、個別のテスト
・プログラム77を書き込む。このプログラムは順次ロ
ードされ、パーソナル・コンピュータを含むテスト・シ
ステム70の中で実行される。実際に呼び出された画面
は、テスト・プログラム中で追加コードを介して検査さ
れ、メニュー画面の経路設定された機能が適切に稼働し
ているか否かを判定する。またプログラムは、終点画面
を働かせるためのステップを含む。たとえば、終点画面
がメモリの1部分を示す場合には、テスト・システム7
oが使用されて、メモリにデータを書き込むようにサー
ビス・プロセッサ12を指示するためのプログラムを実
行させる。プログラムは、キーストローク・インタフェ
ース72を介して情報を伝送し、モニタ17上のカーソ
ルを操作して、これによりメモリ中の正確な位置を指示
する。次に、プログラムはキーストローク・インタフェ
ース72を介して、サービス・プロセッサ12に書込み
要求を転送する。
キーストローク・インタフェース72は、キーボード7
3上のキーストロークと同じサービス・プロセッサ12
への入力を生成する。これらのステップを、さらに詳し
く下記に示す。
CURMOVE (ROW X、 COL[IMN Y
)このステップによって、カーソルが指定された行と列
に置かれるまで、キーストローク・インタフェースはカ
ーソル・タブ・キーの繰返し動作をさせることになる。
プログラムにおける次のステップは、書込み要求と書き
込もうとするデータを、カーソルで指示された位置に指
定する。
CALL KEYS (DATA) これに応答して、サービス・プロセッサは、実際に書き
込まれたデータによって、画面上の同じ列位置の次の行
を更新する。この位置は、前の行と列につながっており
、前の行の内容を表示するために使用される。プログラ
ム・ステップは下記の通りである。
CALL LOOK FOR(ROW+1. COLU
MN、 DATA)このプログラム・ステップも、rC
ALL  KEYSJステップ中に書き込まれた実際の
データを、書き込むように要求された「データ」と比較
するように、サービス・プロセッサ12を指示する。サ
ービス・プロセッサ12はリターン・コードを生成し、
この2つが同じであるか否かを示す。
次に、プログラムはリターン・コードを読み取る。
CHECK RETURN C0DE この2つが同じである場合には、リターン・コードはゼ
ロに等しく、サービス・プロセッサは適切に稼働してい
ると思われる。しかしながら、2つが同じでない場合に
は、リターン・コードはゼロでなく、サービス・プロセ
ッサ12が適切に稼働していないか、またはメモリ22
が適切に稼働していないかであり、そしてエラー・メツ
セージがエラー・ログ75に書き込まれ、エラー回復プ
ロセスが呼び出される。
テスト・システム70と個別のテスト・プログラム77
がサービス・プロセッサ12のテストを容易化しても、
全体のテスト・プロセスは、階層中に非常に多くの画面
があって、ユーザはテストしようとする各メニs−と終
点画面を特定しなければならず、そしてユーザは各テス
トについてコードを書き込まなければならないので、長
い時間がかかる。
本発明に注目すると、第4図は、全体が100で示され
る完全自動テスト・システムを図示している。システム
lOOは、本発明を実現する新しいテスト・プログラム
すなわちテスト・ケース生成システム102、半自動テ
スト・システム70(個別のテスト・プログラム77は
除<)、及びその間の従来の技術のゲートウェイ経路指
定インタフェース108を含む。システム102は、ユ
ーザ・インタフェース103、コーデイネータ104、
及びテスト・プログラムすなわちテスト・ケース・ジェ
ネレータ108を有する。さらに詳しく後述するように
、テスト・プログラム・ジェネレータ106は、テスト
・プログラム109をオフラインで自動的に生成し、メ
ニュー画面の経路設定機能をテストし、サービス・プロ
セッサの終点画面を実行させる、知識ベース・システム
である。
それから、プログラムはシステム70にロードされ、実
行され、そしてすべての所望されたテスト・ケースは、
人手によってもはや入力することなく実行される。
第5図は、システム100の基本動作モードを示す流れ
図である。ステップ80で、ユーザは第2図の画面階層
によって、テスト用画面またはテスト経路中の開始終了
画面の1分岐に、最も高位の画面を指定する。テスト・
プログラム・ジェネレータ106が使用可能になると、
コーデイネータ104はステップ80の作業要求をジェ
ネレータ106に伝送しくステップ82)このためジェ
ネレータ10Bは対応するテスト・プログラム109を
書き込むことができる。次に、テスト・プログラム・ジ
ェネレータ106は、その知識ベースから、ステップ8
0で指定した開始画面によって始まる分岐または経路に
、画面を決定する(ステップ83)。次に、テスト・プ
ログラム・ジェネレータ106はテスト・プログラム1
09を書き込み、(a)サービス・プロセッサ12が、
サービス・プロセッサ12によって実際に生成された分
岐または経路における適切なメニュー画面の各々または
抽出見本に、実際にアクセスすることができることを検
査し、そして(b)終点画面を実行させる(ステップ8
4)。次に、テスト・プログラム107はシステム70
にロードされ(ステップ85)、サービス・プロセッサ
12によって実際に提供された経路設定をテストするた
めに実行される(ステップ86)。何らかのエラーがロ
グ75に記録され(ステップ87.88)、エラー回復
プロセスが呼び出される。次に、テスト・プログラムは
、分岐または経路中の終点画面を実行させ、サービス・
プロセッサ12が実際に、この画面によって示される機
能を実施できるか否かを判定する(ステップ89)。こ
のような機能は、サービス・プロセッサ12によるメモ
リへの書込み及びメモリからの読取り、適用業務のため
のサービス・プロセッサ12によるメモリの割当て、及
びCPU 1Bをパワーアップするためのサービス・プ
ロセッサ12の能力を含む。何らかのエラーがログ75
に記録されて(ステップ90,92)、エラー回復プロ
セスが呼び出される。
ユーザ・インタフェース ユーザ・インタフェース103は、第6図で示された画
面を表示し、この画面によって、ユーザは作業要求を指
定することができる(第5図のステップ80)。画面1
22によって、ユーザは3つのテスト・モード、すなわ
ち「生成のみ」、「生成と実行」、及び「生成と連続実
行」のうちの任意の1つを選択することができる。「生
成のみ」テスト・モードは、テスト・プログラム109
を書き込むが、それをシステム70によって実行させな
いように、テスト・プログラム・ジェネレータに指示す
る。「生成と実行」モードは、テスト・プログラムを書
き込み、そしてまたそれを実行させるように、テスト・
プログラム・ジェネレータに指示する。「生成と連続実
行」モードは、テスト・プログラムを書き込み、分岐中
の何らかの経路及び終点画面を無作為にテストするよう
に、テスト・プログラム・ジェネレータに、(さらに詳
しく後述するコーデイネータ104によって供給された
作業要求を介して) tI示する。しかし、このテスト
が実行された後、プログラムはシステム70にコーデイ
ネータ104を通知するように指示する。これに応答し
て、コーディ*−9104は、他のテスト・プログラム
を生成して、同じ分岐上の何らかの経路及び終点画面を
無作為にテストするように、テスト・プログラム・ジェ
ネレータ106に指示する。このプロセスは、人手によ
る停止か所定の時間切れまで繰り返される。この最後の
モードは、テスト画面数が非常に多く、そしてユーザが
テスト・プログラムを実行させるために限られた時間を
有し、しかしこの時間を満たすための最大強度係数を知
らない状況で、使用可能である。
次の画面124は、ジェネレータ106を「フロー・テ
スト」モードに指示し、テスト・プログラムを書き込み
、画面間の経路設定をチエツクし、終点画面を実行させ
ず、または「機能」モードに指示して、テスト・プログ
ラムを書き込み、経路設定をチエツクして、終点画面を
実行させる。
「機能」または「フロー」モードは、画面124から選
択され、次にユーザ・インタフェースは画面12Bを提
供し、この中にINAVALIDlVAL ID、また
はMIXオプシロンが提供される。INVAL I D
オプシロンは、サービス・プロセッサ12によって無効
データの処理を試みるテスト・プログラムを作り出す。
たとえば、INVALIDオプシロン選択の後に、テス
ト・プログラム107は、範囲外の値を1つのフィール
ドに書き込もうと試み、文字などの間違った形式のデー
タを数字の代わりに数字フィールドに入力することを試
み、無効のPFキーを押し、または無効の選択を行なう
。VAL I Dオプシaンは、適切な形式のデータを
フィールドに書き込み、次いで、データが実際に上記の
フィールドに書き込まれたか否かを判定することを試み
るテスト・プログラムを作り出す。MIXオプシコンは
、画形式のテスト、すなわちINVALIDデータ及び
VALIDデータを作るテスト・プログラムを作り出す
画面126が使用された後、ユーザ・インタフェース1
03は、「ランダム」、「固定」、及び「フル」オプシ
ロンを表示する画面130を提供する。「固定」オプシ
ロンによってユーザは、画面Aのような開始画面、及び
後記の画面Bのような1つまたは複数の最終画面を指定
し、そして画面Aと任意の指定された画面Bとの間の経
路中の画面をテストするように、テスト・プログラム・
ジェネレータ106に指示することができる。
「フル」オプションによって、ユーザは、分岐の開始画
面を提供し、テスト・プログラムを書き込んで、樹形階
層中の指定された画面の下のすべての経路をテストする
ように、テスト・プログラム・ジェネレータ106に指
示することができる。
「ランダム」オプションはユーザが無作為テストの所望
の「強度」を入力する画面132を呼び出す。このユー
ザ・エントリはパーセンテージの形式であり、ユーザが
テスト・プログラムをテストしようと望んでいる、テス
ト分岐または経路内の経路及び画面のパーセンテージを
指示する。ユーザはまた、所与のテスト・プログラム・
セットの再生のためのシードを指定するためのオプショ
ンを有する。これは提供されない場合は、無作為に選択
されることになる。インタフェース103が画面132
を提示した後、または「固定」または「フル」オプショ
ンが画面130から選択された後、画面134が提示さ
れて、この中には、第2図の階層の第1画面30が提示
される。次の図示例では、ユーザは、画面30によって
アクセスされた画面32.34、または36の1つを、
テストのための開始点として、選択する機会を有する。
ユーザが、テスト時間を減少するために、選択された画
面32.34.3Bより低いテストを開始しようと望む
場合には、ユーザは、選択された画面32.34.36
によってアクセスされた画面の1つを選択することがで
きる。これに応答して、ユーザ・インタフェース103
は、選択された画面を提示することになり、これによっ
てユーザは、アクセスされた画面の任意のものをテスト
における開始点として指定することができる。この手順
は、ユーザがテストを開始するために選択をするまで繰
り返される。選択が行なわれると、ユーザ・インタフェ
ース103は、すべての選択番号をファイル(後述)に
書き込む。
ユーザ・インタフェース103はまた、「固定」モード
での第1選択の下に追加の画面を作り、テスト中の経路
をすべての選択された画面を含む経路に限ることができ
るようにする。これらの経路はまた、実行させる終点画
面を定義する。。ユーザ・インタフェース103はまた
、追加画面の1つまたは複数の選択番号をファイルの中
に記憶する。
すべての選択が行なわれると、ファイルはコーデイネー
タ104を介してテスト・プログラム・ジェネレータ1
06に送られ、開始画面の下のすべての経路を決定し、
(そして選択された場合には他の1つまたは複数の画面
を含み)そして後述のように、テスト用に(無作為テス
トの場合には)経路のどれかを疑似無作為に選択する。
コーデイネータ 図示した実施例では、多くのユーザがシステム102へ
のアクセスを持つことができる。第7図に示すように、
コーデイネータ104は、ユーザ・インタフェース10
3を介して、1人または複数のユーザから、1つまたは
複数のファイルに1つまたは複数の作業要求を受は取り
、作業要求の第1はコーデイネータを「呼び覚ます」 
(ステップ300)。作業要求ファイルは、開始画面(
とオプションでテスト中の追加画面)を指示する選択番
号を含み、上述の経路テストと終点画面を定義する。次
にコーデイネータ104は、作業要求を名付け、待ち合
わせる(ステップ302)。次にコーデイネータ104
は、ユーザによる将来の参照のために作業要求をフォー
マットする(ステップ304)。テストを連続して実行
するために、コーデイネータ104はまた、テストのた
めに予定された経路と、各経路が異なったテストのため
に何回テストされることになるかを示す統計を保持する
。このような統計によって、ユーザは、各経路について
十分なテストがなされるか否か、そして追加テストが必
要であるか否か、を判定することができる。この統計は
また、各終点画面についてどれだけのテスト・ケースが
実行されることになるかを示す。
最初に線上にある作業要求は、実行のためにテスト・プ
ログラム・ジェネレータ106に送られる(ステップ3
06)。次にコーデイネータ104は、テスト・プログ
ラム・ジェネレータからの結果を待つ(ステップ308
)。作業要求がうまく実行された場合には、(判断ブロ
ック309)、テスト・ケースを含む完成ファイルはユ
ーザに送られる(ステップ310)。作業要求にエラー
があるか、または何か他の問題が生じた場合には、エラ
ー信号がユーザに伝送される(ステップ312)。ステ
ップ310または312の後に、コーデイネータ104
は、待ち行列中に他の作業要求があるか否かを判定する
(判断ブロック314)。
そうである場合には、制御はステップ302に戻る。そ
うでない場合は、コーデイネータは再び眠らされる(ス
テップ316)。実際の経路設定及び実行テスト・プロ
グラムは、ステップ308の後に生成される。第4図に
示すように、ログ75に記録された何らかのエラーが、
インタフェース・ゲートウェイ108と通信回線320
を介して、ユーザ・インタフェース103に直接報告さ
れる。
テスト・プログラム・ジェネレータ テスト・プログラム・ジェネレータ106は、規則指向
の知識ベース・システムで、例として、VM/PROL
OG言語とその組込み推論機構を使用する。ジェネレー
タ106は、規則/事実を含み、規則/事実を連鎖し分
析して、適切なテスト手段に達する。さらに、ジェネレ
ータ106はまた、番号のフォーマットをファイルから
読み取り、ファイルに書き込み、変更し、そして他のコ
ンピュータ言語へのインタフェースを提供する。
ジェネレータ106の知識ベースは、特定規則/事実1
11を含み、これは、第2図に示すようなサインオン・
メニュー画面30、直接メニュー画面32〜47、及び
終点画面62〜66を含む、サービス・プロセッサ12
によって生成されるすべての画面を定義(メニュー機能
を含む)するために使用される。各メニュー画面につい
て、少なくとも、その画面によってアクセスされる画面
の数だけの特定規則/事実がある。第2図に示す例では
、サインオン画面30は開発デバッグ画面32、オペレ
ータ画面34、及びカストマ・エンジニア画面36にア
クセスするために使用される。
従って、サインオン画面30が他の画面32.34.3
8の各々に先行することを示す特定規則/事実がある。
システム100は、次のPROLOGフォーマットを使
用して、これらの関係を指示する。
1 、PANEL DEF  (”5IGH−ON”、
”DEVELOPMENTDEBUG″、1.D、”D
EVELOPMENT DEBUG”)。
2 、PANEL DEF  (5IGH−Of4″、
″0PERATORIHTERFACE”、2,0.”
0PERATOR”)。
3 、 PANEL DEF (”5IGH−ON”、
”CUSTOMERIHTERFACE”、3.C,”
CUSTO14ERENGINEER″)。
上記のPROLOGフォーマットでは、3つの規則/事
実の各々は、サインオン・パネルすなわち画面30の定
義である。上記の規則/事実の各々では、「サインオン
」に続く用語は、サインオン画面30のメニューによっ
てアクセスされる他の画面またはパネルの説明である。
画面説明語に続く番号は、アクセスされた画面を識別す
る選択番号(上述)出あり、この選択番号に続く文字は
、アクセスされた画面を選択するためのキーボード73
人力である。各規則/事実における最終語は、アクセス
された画面の実際のタイトルである。パネル定義におけ
る記述は、実際のタイトルと同じであってもなくてもよ
い。知識ベースは、サービス・プロセッサ12によって
表示されたすべての画面について、アナログ規則/事実
を含む。たとえば、下記は開発デバッグ画面32につい
ての規則/事実である。
1 、 PANEL DEF (DEVELOP14E
HT DEBUG”。
”CUSTOMIZE 5YSTE!”、4.C,”C
USTOMIZESYSTEM″)。
2 、 PANEL DEF (”DEVELOPME
NT DEBUG”、”TOOLLIST”、5,0.
”0PEN TOOL BOX”)。
このような規則/事実は、第2図に示す階層ツリーを定
義し、サービス・プロセッサ12で生成可能な画面のす
べて、及びすべての画面の間の経路設定を含む。
テスト・プログラム・ジェネレータ106は、他の特定
テスト規則/事実も含み、これはコンピュータ10にお
ける機能に対応する画面62.84.68を含む、すべ
ての終点画面を定義する。
たとえば、第2図では、実記憶画面64はメモリ22に
対応し、下記の規則によって部分的に定義される。
1 、 VARTYPE (REAL 5TORAGE
”、VAR1,”HEX”);2 、 VARRANG
E (”REAL 5TORAGE”、VAR1゜[0
,FFFF]); 3 、 VARPOS (”REAL 5TORAGE
”、VAR1,11,20);4 、 VAROPT 
(”REAL 5TORAGE”、VAR1,W)。
実記憶画面64で、上の規則/事実第1番は、rVAR
IJとしてフィールドを識別し、「VARIJフィール
ドが16進法のデータを含むことを示す。規則/事実2
は、VARIフィールドが0−FFFFの範囲で16進
法人力を準備できることを指定する。規則/事実3は、
VAR1フィールドが画面64の第11行第20列に置
かれていることを示す。規則/事実4は、VAR1フィ
ールドが書込み(W)フィールドであること、すなわち
データがVAR1フイールドに書き込まれることができ
ることを指定する。画面64に他のすべての書込みフィ
ールドを定義することのできる、他の規則/事実があり
、画面64はいくつかのページを含むことができる。
テスト・プログラム・ジェネレータ108はまた、実記
憶画面64内で読取りフィールドを識別し、記述する他
の特定のテスト規則/事実を含む。
たとえば、4つの規則/事実からなる他のセットは、V
AR2フィールドを記述し、このフィールドは、VAR
2フィールドに書き込もうと意図されたデータが実際に
メモリに書き込まれたか否か、を判定するために使用さ
れる。
1 、 VARTYPE (”REAL 5TORAG
E”、VAR2,”HEX″);2 、 VARRAN
GE (”REAL 5TORAGE”、VAR2゜[
0,FFFF]); 3、 VARPO5(”REAL 5TORAGE”、
VAR2,12,20);4 、 VAROPT (”
REAL 5TORAGE″、VAR2,R)。
規則/事実1は、VAR2フィールドが16進法データ
を含むことを示す。規則/事実2は、VAR2フイール
ドの範囲が0〜FFFFであることを示す。規則3は、
VAR2フィールドがVAR1フイールドの直ぐ下の第
12行第20列に位置していることを示し、そのために
これらの両フィールドを比較の目的のために、モニタ1
7上で同時に見ることができる。サービス・プロセッサ
は、これらのフィールドが同じ列の続いた行(奇数行、
偶数行)に位置するために、これらの両フィールドをメ
モリの同じ位置に結び付けるようにプログラミングされ
る。サービス・プロセッサはまた、同じ理由で、書込み
フィールドとしての第11行、及び読取りフィールドと
しての第12行に応答するようにプログラミングされる
。規則4は、vAR2フイールドが読取りフィールド(
R)であることを示す。
画面84内に他の読取りフィールドを定義する、他の規
則/事実がある。メモリまたはパワーのアップ/ダウン
を割り当てるために使用される他の読取りフィールドを
定義する他の終点画面は、書込みフィールドと読取りフ
ィールド、及び先にリストしたものと類似した規則/事
実を含む。
上記の特定テスト規則/事実はすべて、詳しく後述する
ように、完全自動テストを可能にする方法で、サービス
・プロセッサ12間の経路設定、及び終点画面のフォー
マットを記述する。パネル定義及びフィールド定義のた
めの情報は、人の手で入力されることができるか、また
は、サービス・プロセッサをプログラミングするために
使用されるデータベースから直接(電子的に)取り出す
ことができることが好ましい。
テスト・プログラム・ジェネレータ106はまた、2つ
の一般カテゴリに入る一般テスト規則1101ユーティ
リティ規則、及び解釈規則を含む。
ユーティリティ規則は、速記インタフェースをファイル
に供給することによって、ファイルにテスト・プログラ
ムを書き込む場合の支援となる。たとえば、ユーティリ
ティ規則は、0PEN  FILEコマンドが対応する
詳細なPROLOGコマンドの速記代替であることを表
すために、使用することができる。同様に、ユーティリ
ティ規則は、WRITE  INTOFILEコマンド
が対応する詳細なPROLOGコマンドの速記代替であ
ることを表すために、使用することができる。ユーティ
リティ規則の他の例は、疑似乱数を生成するため、すな
わちシードに基づく乱数を発生させるための規則である
。より詳しく後述するように、疑似乱数は、テスト実行
に要する時間を減らすために、分岐内の経路及び各テス
ト経路内の画面のいくつかを、しかしすべてではないが
、テストするために使用される。他の形式のユーティリ
ティ規則は、16進数から10進数への変換を定義する
ための規則である。この規則は、システム100が、1
6進コードまたは10進コードのいずれかによって動作
するサービス・プロセッサにインタフェースすることが
できるように、含まれている。
解釈規則は、テストのための経路を決定し、テストを生
成し、これらの経路を実行させるために使用される。た
とえば次の解釈規則が、固定テスト・モードにおいて2
つの特定の画面A1Bの間の経路設定をテストするため
に、循環的に使用される。
1 、 IF ARC(SCREEHA、 5CREE
N B)、 THEN PATH(SCREEHA、 
5CREEN B)2 、 IF ARC(SCREE
HA、 5CREEN IHT) AND FATII
(SCREEN  INT、5CREEN  B)、T
HEN FATII(SCREEN  A、5CREE
N B)。
rARCJは、中間画面なしでの2つの画面の間の直接
連結であり、r path Jは中間画面があるかまた
はない結合である。規則1または規則2のいずれかが満
足される場合には、2つの画面の間にはrpathaが
ある。規則1と規則2は、直接結合が中間画面から画面
Bに見つかるまで、循環的に適用される。次にジェネレ
ータ106は、この経路についての記録を更新し、識別
したことに留意されたい。この時点でジェネレータ10
f3は、ジェネレータ106の知識ベース内で識別及び
検査しただけである。第2図の例では、ユーザの選択で
画面Aは画面32、画面Bは画面64にすることができ
る。規則1は、画面Aから画面BへのARCがある場合
には、画面Aから画面Bへ経路があるという意味に解さ
れる。規則2は、画面Aから中間画面へのARCがあり
、中間画面から画面Bへ経路がある場合には、画面Aか
ら画面Bに経路があるという意味に解される。
テスト・プログラム・ジェネレータ106は、画面Aに
ついて上記のパネル定義規則/事実をすべて読み取るこ
とによって、規則1をテストし、画面Aから画面Bへの
直接経路またはARCがあるか否かを判定する。このス
テップは、画面Aについてパネル定義規則/事実のため
の最終エントリを読み取ることによって実行される。こ
の規則が満足される場合には、ジェネレータ10Bは、
ジェネレータ106の知識ベース内に経路を位置決めし
ている。この規則が満足されない場合には、ジェネレー
タは規則2をテストする。規則2をテストするために、
ジェネレータは画面INTの代わりに、画面Aによって
アクセスされた画面の1つを代用する。この情報は、上
記のパネル定義規則/事実から得られる。次に、ジェネ
レータ106は、規則1の仕分けによって規則2の第2
前提を分析する。すなわち、画面中間から画面Bに、そ
の間に直接結合がある場合には、経路がある。
この情報は、パネル中間のためのパネル定義規則/事実
から得られる。規則2の両前提がテストされ、中間パネ
ルが画面Aのためのパネル定義規則/事実によって定義
されると、ジェネレータ106はテストされた経路を記
録する。この時点で、経路用の記録は、画面A用の選択
番号、及び画面Aによってアクセスされた第1画面用の
キーストローク文字を含む。たとえば、上記ステップ1
12の第1反復の後に、次の記録が画面30から画面3
2への経路、すなわちL dについて行なわれる。
規則2が第1反復中に満足されなかったと仮定すれば、
画面32によってアクセスされた画面の1つは、新しい
中間パネルとなる。画面32用のパネル定義によれば、
新しい中間パネルは画面38である。この画面の存在は
、規則2の第1前提を満足する。次に、規則2の第2前
提は、新しい中間パネルから画面Bに何らかの結合があ
るか否かを判定することによって、テストされる。この
情報は、画面38用のパネル定義から得られる。
次に、ジェネレータlO6は、テスト中の経路の記録、
1、dlcを更新する。このプロセスは、この経路が画
面Bに行くまで繰り返される。前の場合では、テスト・
プログラム・ジェネレータ106は、テスト・プログラ
ム107中に、画面Aから画面すへの有効経路のキース
トローク文字、並びに各画面用の画面タイトルを合併す
る。各終点画面用のパネル定義は、終点画面がどの下位
画面も識別しないので、中間画面用のパネル定義とは異
なる。
PANEL DEF (”ABSOLUTE 5TOR
AGE”、 :、 :。
’ENTER”、 ”ABSOLUTE 5TORAG
E″)ジェネレータ106が「入力」エントリを読み取
ると、ジェネレータは、絶対記憶画面が終点画面であっ
て、経路を完結することを実現する。終点画面が画面B
でない場合には、テスト・プログラム・ジェネレータ1
06は、終点画面からの1つのレベルをバックアップし
て、経路を再定義し、ルベルアップ画面によってアクセ
スされた画面の異なった1つを含む。たとえば、第1経
路が絶対記憶画面62に進み、画面62が画面Bでない
場合には、ジェネレータ106は、記憶画面46をバッ
クアップし、実記憶画面64への新しい経路を定義する
。実記憶画面64が画面Bでない場合には、ジェネレー
タ10Bは、実記憶画面46を再びバックアップし、仮
想記憶画面66への新しい経路を定義する。仮想記憶画
面66が画面Bでない場合には、ジェネレータ106は
、表示変更画面43へさらにルベルだけバックアップし
、制御情報画面47への経路を定義する。上記のプロセ
スは、画面Bが置かれ、経路が画面A用の選択番号と、
画面Aから画面Bに進むキーストローク文字によって定
義されるまで、繰り返される。
作業要求が、単一開始画面から出る画面の分岐をテスト
することである場合には、ジェネレータ106は、先ず
分岐中のすべての終点画面を判定し、次いで開始画面か
ら派生する各経路を、分岐中の終点画面のすべて(フル
・テスト)または幾つか(無作為テスト)にマツプする
。分岐中の終点画面はすべて、次のように判定決定され
る。すなわち、上記の規則1.2は、分岐中の候補画面
を識別するために利用され、この候補画面は終点画面で
あってもなくてもよい。この目的に規則1.2を利用す
るために、開始画面は画面Aに代わりにされ、画面Bは
、規則1.2及びパネル定義の知識ベースによって候補
画面として識別される。
それから、次の規則が分析され、候補画面が終点画面で
あるか否かを判定する。すなわち、3、経路(開始画面
から候補画面へ)及びN0ARCであれば、終点画面。
規則3の第2前提が満足される場合には、候補画面は終
点画面であり、終点画面タイトルと選択番号はリストに
記憶され、他の候補画面は規則1.2を用いて選択され
、画面Aは変わらない。規則3の第2前提が満足されな
いと、候補画面は終点画面ではなく、規則1.2は再び
分析され、画面Aは前の候補にセットされる。上記のプ
ロセスは、すべての候補がテストされ、すべての終点画
面が識別されて、リストに記憶されるまで、繰り返され
る。
フル・テストが選択された場合には、規則1.2が適用
され、リスト内の各終点画面について記載され、画面A
は開始画面に、画面Bは終点画面にセットされる。結果
は、開始画面から各終点画面への経路マツプである。し
かし、無作為テストが選択されると、疑似乱数ジェネレ
ータ113と選択された強度ファクタ・パーセンテージ
が、終点画面のいくつかのみを選択するために使用され
る。次に、規則1.2は、選択された終点画面の各々に
ついて適用され、開始画面から選択された終点画面の各
々への経路マツプを決定する。
「固定」または「フル」オプシθンが画面130(第6
図)で選択された場合には、この手順は画面A下の終点
画面のリスト中の各終点画面について繰り返される。し
かし、「無作為」オプションが画面130で選択されで
場合には、この手順は、1つの選択された画面から出た
経路の疑似無作為部分について利用される。第8図は、
テスト用の経路を疑似無作為に選択するために、ジェネ
レータ106によって実行されるプロセスを示ス。
ステップ402で、ジェネレータ10Bは、1つの選択
された画面から出るすべての経路における、すべての終
点画面のリストを作成する。ジェネレータ10Bはまた
、各終点画面に順次番号を割り当てる。次にジェネレー
タ106は、ステップ132(第6図)で選択された強
度と終点画面数とを掛けたもの(ステップ404)に基
づいてテストされるべき、経路の数(番号)を決定する
。ジェネレータ10Bはまた、変数rTJをこの数(番
号)に等しく設定する。次にジェネレータ106は、疑
似乱数ジェネレータ113を使用して、リスト中に1と
終点画面の数との間の乱数を得て、このリストからこの
番号(第X)の終点画面を選択する。次に、ジェネレー
タ10Bは、画面Aから画面Bへの経路を生成する(ス
テップ408)。
次にジェネレータ10Bは、リストから画面Xを削除し
、リスト中の画面数を減分し、変数rTJを減分する(
ステップ410)。ステップ408.408.410は
、T=Oになるまで、画面を残すために繰り返される(
判断ブロック412)。
上記は、どのようにテスト・システムがある画面から他
の画面への経路をチエツクし、経路中の画面がサービス
・プロセッサ12によって適切にアクセスされることを
検査するか、を説明したものである。
それから、テスト・プログラム107は、2つの選択さ
れた画面、または知識ベースで識別された1つの選択さ
れた画面から出た画面の間の経路にある画面の各々、ま
たはサンプルが、同じ階層配列中のサービス・プロセッ
サ12によって実際に生成されているか否かを判定する
。この目的のために、テスト・プログラムは、コマンド
(キーストローク文字)をインタフェース72を介して
サービス・プロセッサ12に送り、サービス・プロセッ
サ12をパワーアップし、次に、キーストローク文字を
画面Aすなわち分岐中の開始画面に進める。次にプログ
ラムは、キーストローク・コードをインタフェース72
を介して送り、経路中の次画面を呼び出す。次にテスト
・プログラムは、画面がパネル定義におけるタイトルに
合致しているか否かを判定する。たとえば、画面Aがサ
イン・オン画面30に対応しており、知識ベースにょる
経路中の次画面が開発デバッグ画面32である場合には
、テスト・プログラム107は、下記の用に、キースト
ロークrDJ用のコードをサービス・プロセッサに送る
CALL KEYS (”D″) 次に、テスト・プログラム107は、サービス・プロセ
ッサ12にコードを送り、実画面タイトルを「開発デバ
ッグ」と比較する。すなわ、ち、CALL LOOK 
FOR(PANEL″DEVELOPMENT DEB
UG”)。
これに応答して、サービス・プロセッサ12は、実際に
呼び出された画面中のタイトルをタイトル「開発デバッ
グ」と比較することになり、それらが合致している場合
には、ゼロのリターン・コードを返し、プログラム10
7をテストする。
次に、テスト・プログラムがサービス・プロセッサ12
を介して、メモリ画面に書き込むことなどによって、そ
して実際に書き込まれたものを、書き込もうとしたもの
と比較するなどして、どのように終点画面を動かすかを
説明する。ユーザ・インタフェースからフル・オプシa
ンが選択された場合には、リスト中のすべての終点画面
及び各画面中のすべてのフィールドが動かされる。無作
為オプシaンが選択された場合には、リスト中の終点画
面が、テストのためにジェネレータ113によって疑似
無作為に選択される。また、選択された画面の各々にお
けるフィールドが、テストのためにジェネレータ113
によって疑似無作為に選択される。固定オプシaンが選
択された場合には、ユーザは、どの終点画面がテストさ
れるべきであるかを指定する。指定された終点画面の各
々におけるすべてのフィールドがテストされる。
このテストのためには、解釈規則が使用される。
テスト・プログラム107は、サービス・プロセッサ1
2にインタフェース72を介してキーストローク・コー
ドを送り、(1)メモリ画面を呼び出し、(2)カーソ
ルを適切なデータ入力位置またはフィールドに動かし、
そして(3)データを下記のようにモリに書き込む。
1 、 (a) CALL KEYS (KEYSTR
OKE LETTER)。
2 ・(b) CALL KEYS (KEYSTRO
KE LETTER)。
2 、CURMOVE  (ROW X、COLUMH
Y)。
3 、CALL KEYS  (DATA)。
これらのコマンドは、サービス・プロセッサ12に対し
て、指定されたデータを、カーソルの位置によって示さ
れたフィールドに書き込むよう指示する。カーソルの位
置で示したメモリ位置の内容を読み取り、カーソルの位
置で示したメモリ位置におけるデータを、コマンド中に
述べたデータと比較するように、下記のコマンドを用い
て指示する。
CALL LOOK FOR(DATA)。
このコマンドに応答して、リターン・コードがテスト・
プロセッサ107に返され、指定されたデータが適切な
位置に書き込まれたことを、サービス・プロセッサ12
が確動したかどうかを示す。
より詳しく後述するように、テスト・プログラム・ジェ
ネレータ10Bは、ユーザが要求した場合には、メモリ
画面中のすべてのフィールドをテストするテスト・プロ
グラムを書き込むことができる。しかし、テスト・プロ
グラム・ジェネレータ108は、第9図に示す方法で、
メモリ画面内のメモリ・フィールドの1つより小さい部
分をテストすることもできる。テストへのこのような部
分的アプローチは、全体のテスト時間を短縮する。
また第9図は、テスト・プログラム・ジェネレータ10
Bがアドレス・フィールドとデータ・フィールドの両方
の境界のテストを強調する方法も示す。
ステップ202で、テスト・プログラム・ジェネレータ
106は、フィールドの下−境界と上境界を決定する。
有効テストがユーザ・インタフェース103から選択さ
れた場合には(判断ブロック203)、テスト・プログ
ラム・ジェネレータ106は、疑似乱数ジェネレータ1
13を使用して、1〜7の範囲の乱数を選択する(ステ
ップ204)。乱数が1である場合には(判断ブロック
206)、ジェネレータ108は、その範囲の下境界す
なわち最低値をテストする(ステップ208)。上の例
では、rVARJフィールドは規則1〜4によって記述
されており、最低値は0OOOである。ステップ204
で選択された乱数が1ではなく2であった場合には、(
判断ブロック210)、ジェネレータlO6は、最低値
プラス1をテストする(ステップ212)。rVARJ
フィールドについての上の例では、この値は0OO1で
ある。ステップ204で選択された乱数が3であった場
合には(判断ブロック214)、ジェネレータ108は
、最高値すなわち上境界マイナス1、FFFEをテスト
する(ステップ216)。しかし、ステップ204で選
択された乱数が4であった場合には(判断ブロック21
8)、ジェネレータ106は、その範囲の最高値すなわ
ち下境界をテストする(ステップ220)。rVARJ
フィールドについての上の例では、この最高値はFFF
Fである。しかし、ステップ204で選択された乱数が
5と7の間であった場合には、ジェネレータ106は、
疑似乱数ジェネレータ113を使用して(ステップ22
2)、最高値と最低値の間の疑似無作為フィールドを選
択する。これは上の例ではooooとFFFFの間であ
る。
上記のように、7例のうちからほぼ4例について、境界
条件がテストされる。境界条件テストに関してこの強調
をするのは、境界の間で発生したエラーに比較して、問
題の大部分が境界位置で発生しているからである。図示
した例では、7つのうちのほぼ4つのテストが境界条件
について行なわれている。しかし、望むならば、境界条
件の別のパーセンテージを、ステップ204で生成した
乱数の範囲を単に変えることによって、テストすること
ができる。範囲が増すと、より低いパーセンテージのテ
ストが境界条件で行なわれ、その逆もあり得る。また第
8図は、ステップ222で、境界条件間のテストが無作
為または疑似無作為ベースで行なわれることを示す。
第9図はまた、「無効」テストを、このテストがユーザ
・インタフェース103によって選択された場合には(
判断ブロック203)、テスト・プログラムが行なうこ
ともできることを示す。乱数が8であるこのような場合
(ステップ221)、この範囲における最低値より小さ
いデータ・エントリが試みられる(判断ブロック223
及びステッブ225)。乱数が9である場合には、この
範囲における最高値より大きいデータ・エントリが試み
られる(ステップ229)。
解釈規則も、サービス・プロセッサ12の能力のテスト
に使用され、メモリを特定の適用業務に割り当てる。こ
のテストのために、テスト・プログラム107はキース
トローク・コードをインタフェースを介して伝送し、メ
モリ割当て画面を呼び出し、カーソルを適切なデータ・
エントリ位置に動かし、次のようにメモリを割当てる。
CALL KEYS (KEYSTROKE LETT
ER)。
CURMOVE (ROW X、 COL■MHY)。
CALL KEYS (12MEG)。
このコマンドは、サービス・プロセッサ12に対して、
適用業務のために12メガバイトのメモリ12を割り当
てるよう指示する。そしてテスト・プログラム107は
、サービス・プロセッサ12に、下記のコマンドを送る
ことによってどれだけのメモリが実際に割り当てられた
かをチエツクする。
CALL LOOK FOR(MACHINE NOW
 HAS 12 MEG)。
これに応答して、サービス・プロセッサ12は、カーソ
ルによって指示されたメモリ割当て位置のデータを要求
された位置と比較し、リターン・コードがテスト・プロ
グラム107に送られ、サービス・プロセッサ12が、
適切な量のメモリが割り当てられたことを認知したか否
かを示す。これは、メモリに正確に書き込み、メモリか
ら正確に読み取るサービス・プロセッサ12の能力の別
のテストである。
テスト・プログラム・ジェネレータ106はまた、サー
ビス・プロセッサ12がプロセッサの付勢を試みた後に
CPU16がパワー・アップされたことを、テストする
規則を含む。このテストのために、テスト・プログラム
107はパワー・アップ・コードをサービス・プロセッ
サ12に送り、コードを送ってカーソルを位置に動かし
、そしてサービス・プロセッサに、その位置の情報を期
待されている情報と比較するよう求める。
CALL KEYS (KEYSTROKE LETT
ER)。
CURMOVE  (ROW X、COLUMN Y)
CALL KEY  (DATA)。
CALL LOOK FOR(DATA)。
テスト・プログラム・ジェネレータ106はまた、第5
図に示す構文規則112も含む。この構文規則によって
、テスト・プログラム・ジェネレータは、他の形式のの
サービス・プロセッサ及びインタフェースのために他の
フォーマットでコードを生成することができる。
上記に基づいて、サービス・プロセッサ用の自動テスタ
を開示した。しかし、本発明の範囲を逸脱することなく
、多くの変更及び代替が可能である。たとえば、サービ
ス・プロセッサは、システム10の他の機能及び制御機
構をテストすることができ、そしてテスタ100は、サ
ービス・プロセッサによって提供されたこれらの他の機
能及び制御機構をテストするために使用することができ
る。また、システム100は、サービス・プロセッサ及
び第2図に示す画面以外の画面を表示する他の形式の適
用業務と共に使用可能である。したがって本発明は、図
示によって開示され、それに制限されるものではなく、
また本発明の範囲を画定するために、冒頭の特許請求の
範囲を参照されたい。
E0発明の効果 以上のように、本発明によれば人手を用いない自動的な
サービス・プロセッサのテストが可能となる。
【図面の簡単な説明】
第1図は、従来技術によるコンピュータとサービス・プ
ロセッサを示す略ブロック図である。 第2図は、第1図のサービス・プロセッサによって表示
されたメニューと終点コンピュータ画面の階層を示す略
図である。 第3図は、第1図のサービス・プロセッサをテストする
ための、従来技術による半自動テスト装置を示すブロッ
ク図である。 第4図は、本発明による自動サービス・プロセッサ・テ
スタを示すブロック図である。この自動テスタは、半自
動テスタと組み合わせた新しいテスト・プログラムまた
はテスト・ケース・ジェネレータ(個別のテスト・プロ
グラムを除く)、サービス・プロセッサ、インタフェー
ス・ゲートウェイ、及び第3図のコンピュータを含む。 第5図は、第4図の自動サービス・プロセッサ・テスト
・ケース・ジェネレータの一般的動作、及びテスト・プ
ログラムの順次実行を示す流れ図である。 第6図は、第4図のテスト・プログラム生成システムを
開始するためのユーザ・インタフェース・メニューを示
す図である。 第7図は、第4図のテスト・プログラム生成システムに
よるコーデイネータの動作を示す流れ図である。 第8図は、メニュー画面から、出た経路を疑似無作為に
テストするために、テスト・プログラムによって実行さ
れる、任意選択サブルーチンを示す流れ図である。 第9図は、終点画面内のフィールドを疑似無作為にテス
トし、なおもフィールドの境界値のテスト度合いを増加
させるために、第4図のテスト・プログラム生成システ
ムによって実行される、サ ブルーチンを示す流れ図である。

Claims (26)

    【特許請求の範囲】
  1. (1)サービス・プロセッサによって表示される画面の
    階層をマップするためであり、上記サービス・プロセッ
    サの上記画面は、階層内で下位にある他の画面にアクセ
    スするメニュー画面を含む、メモリ手段と、 上記メモリ手段に結合されており、上記メモリ手段から
    上記階層内の画面を識別し、勝つプログラムを生成して
    、 (a)上記サービス・プロセッサに対して上記画面を呼
    び出すように指示し、 (b)上記メモリ手段によって供給されたマップを上記
    サービス・プロセッサによって呼び出された画面と比較
    することによって、上記画面間の経路設定をテストする
    ための、プログラム生成手段を含む、コンピュータに関
    連するサービス・プロセッサをテストするための装置。
  2. (2)上記サービス・プロセッサによって表示される少
    なくとも1つの画面で選択するための、ユーザ・インタ
    フェースをさらに含んでおり、この画面はテスト用の1
    つまたは複数の経路の中で画面グループを識別し、上記
    プログラム生成手段は上記ユーザ・インタフェース手段
    に結合されて、上記グループの画面の間の経路設定をテ
    ストする、請求項1に記載の装置。
  3. (3)上記プログラム生成手段が、テストのために上記
    画面間の経路のすべてではなくいくらかを選択するため
    の手段を含む、 請求項1に記載の装置。
  4. (4)上記サービス・プロセッサの上記画面が、上記サ
    ービス・プロセッサによって動かされるコンピュータの
    メモリを表す終点画面を含み、そして上記プログラム生
    成手段が、終点画面内のメモリ・フィールドのすべてで
    はなくいくらかを選択するため、及びプログラムを生成
    して選択されたフィールドを実行させ、上記コンピュー
    タの実メモリの上記フィールドに書き込み、コンピュー
    タの上記メモリから読み取るための、上記サービス・プ
    ロセッサの能力をテストするための、手段を含む、 請求項1に記載の装置。
  5. (5)上記メモリ画面の選択されたフィールドが、少な
    くとも無作為に選択され、そして上記ユーザ・インタフ
    ェース手段が、テスト用にフィールドの部分を決定する
    ための手段を含む、請求項4に記載の装置。
  6. (6)上記プログラム生成手段が、上記メモリ内部のメ
    モリ・フィールドより大きなメモリ境界フィールド部分
    を実行するための手段を含む、請求項4に記載の装置。
  7. (7)上記経路が疑似無作為に選択される、請求項3に
    記載の装置。
  8. (8)上記経路疑似無作為選択を基礎づけるためのシー
    ドを選択するためで、上記シードの選択がテストのため
    に同じ経路を識別する、ユーザ・インタフェース手段と
    、 上記シードを再入力することによって、テスト・プログ
    ラムを再作成するための手段 をさらに含む、請求項7に記載の装置。
  9. (9)上記ユーザ・インタフェース手段が、テストのた
    めの経路部分を指定するための手段を含む、請求項3に
    記載の装置。
  10. (10)上記メモリ手段が知識ベース出あり、そして各
    メニュー画面について1組の規則/事実を含み、上記の
    組は上記のメニュー画面によってアクセスされた画面を
    画定する、請求項1に記載の装置。
  11. (11)上記プログラム生成手段が、上記メモリ手段内
    のマップに基づいて、上記ユーザ・インタフェース手段
    を介して選択された2つの画面の間の経路を識別するた
    めの手段を含む、 請求項2に記載の装置。
  12. (12)上記グループが階層中の画面の分岐であり、識
    別画面が分岐中の最上画面を識別する、 請求項2に記載の装置。
  13. (13)上記プログラム生成手段が、プログラムを書き
    込み、上記コンピュータにメモリを割り当てるために上
    記サービス・プロセッサの能力をテストするための手段
    を含む、請求項1に記載の装置。
  14. (14)上記プログラム生成手段に結合されており、上
    記プログラム生成手段に対して、追加プログラムを生成
    してテスト用に上記画面間にいくつかの異なった経路を
    選択するように、自動的に指示するためであって、上記
    追加プログラムは、人手で停止されるかまたは時間切れ
    になるまで、最初の上記プログラムの後に連続的に作動
    される、手段をさらに含む、 請求項3に記載の装置。
  15. (15)コンピュータ・プログラムを含むデータ記憶媒
    体であって、上記のプログラムが、 サービス・プロセッサが適切に稼働している時に、上記
    サービス・プロセッサによって生成される画面のマップ
    であって、階層中の下位の画面にアクセスするために、
    どの画面がメニューとして使用されるかを示すマップと
    、 上記マップに結合されており、上記サービス・プロセッ
    サに対して、上記階層中の画面の少なくとも1つの経路
    によって上記階層中の画面を呼び出し、呼び出された画
    面の経路設定をマップと比較し、サービス・プロセッサ
    が適切に稼働しているか否かを判定するよに指定するた
    めの手段を含む、上記のデータ記憶媒体。
  16. (16)上記の画面が、上記のサービス・プロセッサに
    よって動かされるコンピュータの中のメモリを表す終点
    画面を含み、上記コンピュータ・プログラムは、サービ
    ス・プロセッサに対して、上記サービス・プロセッサの
    上記終点画面を動作させるよう、指示するための手段を
    さらに含む、請求項15に記載のデータ記憶媒体。
  17. (17)終点画面動作手段が、上記サービス・プロセッ
    サに対して、上記終点画面内のメモリ・フィールドのす
    べてではなくいくらかを動作指せるように指示する、請
    求項16に記載のデータ記憶媒体。
  18. (18)上記コンピュータ・プログラムが、上記サービ
    ス・プロセッサに対して、上記終点画面内のメモリ内部
    フィールドより大きなメモリ境界フィールド部分を動作
    させるよう、指示するための手段をさらに含む、請求項
    17に記載のデータ記憶媒体。
  19. (19)サービス・プロセッサによって生成される第1
    、第2、及び第3画面、及びどの画面が階層中の下位の
    他の画面を選択するためのメニューとして使用されるか
    を示す上記画面間の階層関係を含む、画面を表すための
    メモリ手段であって、上記画面が上記サービス・プロセ
    ッサによってサービスされるコンピュータの状況を表し
    、状況第1画面が階層内で下位にある上記第2画面また
    は上記第3画面を選択するためのメニューとして使用さ
    れる、上記のメモリ手段と、 上記メモリ手段に結合されており、上記第1画面の表示
    内容を上記メモリ手段から読み取るため、及び第2画面
    を呼び出すよう上記サービス・プロセッサに指示するた
    めのプログラムを生成し上記指示に応答して上記サービ
    ス・プロセッサによって実際に呼び出された画面を、上
    記メモリ手段から得られた上記第2画面と比較し、上記
    サービス・プロセッサが適切に稼働しているか否かを判
    定するため、の第1ジェネレータ手段 を含む、コンピュータ内のサービス・プロセッサをテス
    トするための装置。
  20. (20)上記メモリ手段に結合されており、上記第1画
    面によって始まる複数の経路において画面を識別するた
    め、及び階層中の他のレベルに向けるためであって、上
    記経路の第1経路が上記第1画面、上記第3画面、及び
    上記第3画面によってアクセスされた第4画面を含む、
    第2ジェネレータ手段をさらに含む請求項19に記載の
    装置であって、上記第1ジェネレータ手段は、上記第2
    ジェネレータ手段にも結合されており、上記第1画面に
    よって始まる上記第1経路内の画面の表示内容を読み取
    るため、上記第3画面を呼び出すように上記サービス・
    プロセッサを指示するためのプログラムを生成し、上記
    指示に応答して上記サービス・プロセッサによって実際
    に呼び出された画面を、上記メモリ手段から得られた上
    記第3画面と比較し、上記サービス・プロセッサが適切
    に稼働しているか否かを判定するため、及び上記第3画
    面の表示内容を読み取り、上記第4画面を呼び出すよう
    に上記サービス・プロセッサに指示するためのプログラ
    ムを生成して、上記指示に応答して上記サービス・プロ
    セッサによって実際に呼び出された画面を、上記メモリ
    手段から得られた上記第4画面と比較して、上記サービ
    ス・プロセッサが適切に稼働しているか否かを判定する
    ため、の手段を含む、 上記の装置。
  21. (21)上記メモリ手段に結合されており、画面の組を
    識別するためで、各組が少なくとも2つの画面を有し、
    それらの1つは他の画面へのメニュー・アクセスを提供
    する、第2ジェネレータ手段をさらに含む、請求項19
    に記載の装置であって、 上記第1ジェネレータ手段は、上記第2ジェネレータ手
    段にも結合されており、各組の上記の1つの画面によっ
    て始まる上記の組の画面の表示内容を読み取るため、及
    び上記の組の上記の他の画面を呼び出すように上記サー
    ビス・プロセッサに指示するためのコンピュータ・プロ
    グラムを生成し、上記指示に応答して上記サービス・プ
    ロセッサによって実際に呼び出された画面を、上記メモ
    リ手段から得られた上記の他の画面と比較し、上記サー
    ビス・プロセッサが適切に稼働しているか否かを判定す
    るため、の手段を含む、 上記の装置。
  22. (22)上記メモリ手段が、エキスパート・システムの
    知識ベースを含み、エキスパート・システムの中で、上
    記知識ベースの規則/事実が上記画面及び上記画面間の
    階層関係を定義する、請求項19に記載の装置。
  23. (23)コンピュータに関連するサービス・プロセッサ
    をテストするための装置であって、 サービス・プロセッサによって表示される画面の階層を
    マッピングするためであり、上記サービス・プロセッサ
    の上記画面が、階層内で下位にある他のメニュー画面と
    終点画面にアクセスするメニュー画面を含む、メモリ手
    段と、 上記メモリ手段に結合されており、上記階層内で上記メ
    モリ手段から上記終点画面を識別するため、及び上記終
    点画面を動作させるためのプログラムを生成するための
    、プログラム生成手段を含む、上記の装置。
  24. (24)上記サービス・プロセッサによって表示される
    、上記階層中の画面の1つの分岐を識別する少なくとも
    1つの画面を選択するためのユーザ・インタフェースの
    手段をさらに含む、請求項23に記載の装置であって、
    上記プログラム生成手段が上記ユーザ・インタフェース
    に結合されて、上記分岐の終点画面を動作させるための
    プログラムを生成する、上記の装置。
  25. (25)上記プログラム生成手段が、テストのために、
    上記分岐の上記終点画面の1つより小さい部分を選択す
    るための手段を含む、 請求項24に記載の装置。
  26. (26)上記終点画面が、上記サービス・プロセッサに
    よってサービスされるコンピュータのメモリを表し、そ
    して 上記プログラム生成手段が、上記終点画面内のメモリ・
    フィールドの1つより小さい部分を選択するため、及び
    選択されたフィールドを動作させるプログラムを生成し
    て、上記サービス・プロセッサの能力をテストし、上記
    コンピュータの実メモリ中の上記フィールドに書き込み
    、そしてコンピュータ中の上記メモリ・フィールドから
    読み取るため、の手段を含む、 請求項23に記載の装置。
JP2215119A 1989-08-16 1990-08-16 サービス・プロセツサ・テスト装置 Expired - Lifetime JPH0675253B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US394696 1989-08-16
US07/394,696 US5067129A (en) 1989-08-16 1989-08-16 Service processor tester

Publications (2)

Publication Number Publication Date
JPH0388046A true JPH0388046A (ja) 1991-04-12
JPH0675253B2 JPH0675253B2 (ja) 1994-09-21

Family

ID=23560044

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2215119A Expired - Lifetime JPH0675253B2 (ja) 1989-08-16 1990-08-16 サービス・プロセツサ・テスト装置

Country Status (4)

Country Link
US (1) US5067129A (ja)
EP (1) EP0413133B1 (ja)
JP (1) JPH0675253B2 (ja)
DE (1) DE69023420T2 (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2804125B2 (ja) * 1989-11-08 1998-09-24 株式会社日立製作所 情報処理システムの障害監視装置と制御方法
US5214653A (en) * 1990-10-22 1993-05-25 Harris Corporation Fault finder expert system
GB2278213A (en) * 1993-05-18 1994-11-23 Ibm Test program generator.
US5870590A (en) * 1993-07-29 1999-02-09 Kita; Ronald Allen Method and apparatus for generating an extended finite state machine architecture for a software specification
US5414836A (en) * 1993-09-29 1995-05-09 International Business Machines Corporation Software testing system that employs a graphical interface to generate test cases configured as hybrid tree structures
US5629878A (en) * 1993-10-07 1997-05-13 International Business Machines Corporation Test planning and execution models for generating non-redundant test modules for testing a computer system
US5648898A (en) * 1994-12-19 1997-07-15 Caterpillar Inc. Method for programming a vehicle monitoring and control system
US5724242A (en) * 1995-03-21 1998-03-03 Caterpillar Inc. Method for producing production control software for a natural gas engine controller
US6269300B1 (en) 1995-03-29 2001-07-31 Caterpillar Inc. Method for producing production control software for a natural gas or diesel engine controller
US5845064A (en) * 1995-09-11 1998-12-01 Digital Equipment Corporation Method for testing and verification of a CPU using a reference model
US5913023A (en) * 1997-06-30 1999-06-15 Siemens Corporate Research, Inc. Method for automated generation of tests for software
JP4190610B2 (ja) * 1998-02-18 2008-12-03 富士通株式会社 ロードモジュールの試験ルート決定装置
US6357020B1 (en) * 1999-02-01 2002-03-12 International Business Machines Corporation Method and system for low level testing of central electronics complex hardware using Test nano Kernel
US6574764B2 (en) * 2001-04-25 2003-06-03 Agilent Technologies, Inc. Algorithmically programmable memory tester with history FIFO's that aid in error analysis and recovery
US6907550B2 (en) * 2002-02-28 2005-06-14 Microsoft Corporation Stochastic simulation of computer activity based on user categories
US20050114066A1 (en) * 2003-11-24 2005-05-26 Kolman Robert S. Method and apparatus for detecting and correcting invalid test definition data
US20050172178A1 (en) * 2004-01-15 2005-08-04 Elias Gedamu Cache-testable processor identification
US20050159925A1 (en) * 2004-01-15 2005-07-21 Elias Gedamu Cache testing for a processor design
US20050172182A1 (en) * 2004-01-15 2005-08-04 Elias Gedamu Optimal operational voltage identification for a processor design
US8881105B2 (en) * 2007-04-11 2014-11-04 Patrick J. Quilter, Jr. Test case manager
US9317411B2 (en) 2013-07-31 2016-04-19 Bank Of America Corporation Testing coordinator
US10127141B2 (en) 2017-02-20 2018-11-13 Bank Of America Corporation Electronic technology resource evaluation system
WO2020240778A1 (ja) * 2019-05-30 2020-12-03 日本電信電話株式会社 テストスクリプト生成装置、テストスクリプト生成方法及びプログラム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02108134A (ja) * 1988-10-17 1990-04-20 Fujitsu Ltd 自動試験方式

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1479122A (en) * 1975-12-11 1977-07-06 Ibm Method of operating a computer to produce test case programmes
GB1510240A (en) * 1976-11-25 1978-05-10 Ibm Method of operating a computer to produce test case programmes
DE3071062D1 (en) * 1980-11-26 1985-10-10 Ibm A method of testing a display apparatus
DE3116079A1 (de) * 1981-04-23 1982-11-11 Robert Bosch Gmbh, 7000 Stuttgart Pruefsystem
FR2531230A1 (fr) * 1982-07-27 1984-02-03 Rank Xerox Sa Ensemble destine au test automatique centralise de circuits imprimes et procede de test de circuits a microprocesseur faisant application de cet ensemble
JPS5945561A (ja) * 1982-09-07 1984-03-14 Mitsubishi Electric Corp 電子計算機のサ−ビスプロセツサ
US4550406A (en) * 1983-06-14 1985-10-29 Everett/Charles Test Equipment, Inc. Automatic test program list generation using programmed digital computer
US4606025A (en) * 1983-09-28 1986-08-12 International Business Machines Corp. Automatically testing a plurality of memory arrays on selected memory array testers
US4649515A (en) * 1984-04-30 1987-03-10 Westinghouse Electric Corp. Methods and apparatus for system fault diagnosis and control
US4654852A (en) * 1984-05-15 1987-03-31 International Business Machines Corporation On-line problem-determination procedure for diagnosis of faults in a data-processing system
US4727473A (en) * 1986-01-02 1988-02-23 Fischer & Porter Company Self-learning mechanism for a set of nested computer graphics
US4759019A (en) * 1986-07-10 1988-07-19 International Business Machines Corporation Programmable fault injection tool
US4766595A (en) * 1986-11-26 1988-08-23 Allied-Signal Inc. Fault diagnostic system incorporating behavior models
US4970725A (en) * 1989-03-14 1990-11-13 Westinghouse Electric Corp. Automated system testability assessment method
US4932021A (en) * 1989-04-03 1990-06-05 At&T Bell Laboratories Path learning feature for an automated telemarketing system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02108134A (ja) * 1988-10-17 1990-04-20 Fujitsu Ltd 自動試験方式

Also Published As

Publication number Publication date
DE69023420D1 (de) 1995-12-14
JPH0675253B2 (ja) 1994-09-21
EP0413133A2 (en) 1991-02-20
EP0413133A3 (en) 1992-02-26
US5067129A (en) 1991-11-19
EP0413133B1 (en) 1995-11-08
DE69023420T2 (de) 1996-06-20

Similar Documents

Publication Publication Date Title
JPH0388046A (ja) サービス・プロセツサ・テスト装置
US6978440B1 (en) System and method for developing test cases using a test object library
US6421822B1 (en) Graphical user interface for developing test cases using a test object library
US6356859B1 (en) Process monitoring system
US5233611A (en) Automated function testing of application programs
US8881105B2 (en) Test case manager
US5045994A (en) Emulation process having several displayed input formats and output formats and windows for creating and testing computer systems
US7076713B1 (en) Test generator for converting a model of computer component object behavior and stimulus values to test script
US5390131A (en) Apparatus and method for displaying wafer test results in real time
JPH02130663A (ja) ユーザー・インターフエース方法
JPH05241797A (ja) ソフトウェア・アプリケーション・パッケージ準備支援データ処理システム
JP2000122886A (ja) 半導体試験装置のプログラム作成方式
US20020087952A1 (en) Debugger system and method of extending debug functions of a debugger system and debugger program product stored in a computer readable medium
US5495578A (en) Apparatus and method for changing the behavior of a computer program while retaining control of program execution
Darlington et al. The role of excursions in interactive systems
JPH1019864A (ja) 分析システムの管理制御装置
US20030131146A1 (en) Interactive monitoring and control of computer script commands in a network environment
US5381344A (en) Apparatus and method for obtaining a list of numbers of wafers for integrated circuit testing
US6234689B1 (en) Apparatus and method for mapping a custom routine to an interface button
US5812825A (en) Integrated console and console apparatus and method for use thereof
CN100468332C (zh) 程序执行方法
JP4568150B2 (ja) 処理装置及び処理装置システム
JPH07210348A (ja) 印刷システム、制御システム及び診断システム制御方法
JPH0833834B2 (ja) 表示パネル生成方法
Rouse et al. Design of a model-based online management information system for interlibrary loan networks