JP5901465B2 - Procedure manual generation apparatus, procedure manual generation method and program - Google Patents
Procedure manual generation apparatus, procedure manual generation method and program Download PDFInfo
- Publication number
- JP5901465B2 JP5901465B2 JP2012172787A JP2012172787A JP5901465B2 JP 5901465 B2 JP5901465 B2 JP 5901465B2 JP 2012172787 A JP2012172787 A JP 2012172787A JP 2012172787 A JP2012172787 A JP 2012172787A JP 5901465 B2 JP5901465 B2 JP 5901465B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- type
- processing
- unit
- test
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Description
本発明は、手順書生成装置、手順書生成方法及びプログラムに関する。 The present invention relates to a procedure manual generation apparatus, a procedure manual generation method, and a program.
コンピュータプログラム等のテストのために用いられるテスト手順書の生成を支援する技術が知られている。例えば、特許文献1は設計段階で入力された情報を用いてテスト仕様書(手順書)を作成するテスト仕様書作成装置を開示している。特許文献1に記載の技術では、システムのテスト仕様書を生成するにあたって、ユーザがテスト仕様・システム仕様に合致した設定ファイル(テスト構成INIファイル)を作成し、この設定ファイルと設計段階で入力されたシステム情報とに基づいてテスト仕様書を生成する。
A technique for supporting generation of a test procedure document used for testing a computer program or the like is known. For example,
特許文献1のテスト仕様書作成装置を用いてテスト仕様書(手順書)を作成するためには、設定ファイルをシステム毎・テスト仕様毎に一から生成しなくてはならない。そのため、テスト手順書を生成するために用いる設定ファイルの作成に、多くの時間とコストがかかってしまい、効率が悪いという問題があった。
In order to create a test specification (procedure manual) using the test specification creation apparatus disclosed in
本発明は上記のような問題点を解決するためになされたもので、効率よくテスト手順書を生成できる手順書生成装置、手順書生成方法及びプログラムを提供することを目的とする。 The present invention has been made to solve the above-described problems, and an object thereof is to provide a procedure manual generation apparatus, a procedure manual generation method, and a program that can efficiently generate a test procedure manual.
上記目的を達成するために、本発明の手順書生成装置は、元データから生成データを生成する処理を示す情報であって、当該処理の対象となる元データの抽象型である元データ型と、当該元データから当該生成データを生成する方法と、当該生成データの抽象形である生成データ型を対応づけた処理情報のリストである処理リストを記憶するリスト記憶部と、テスト手順の情報を含む、前記元データ型に含まれるデータ型である入力型の入力データを取得する取得部と、前記リスト記憶部が記憶する処理リストに記憶された処理を、当該処理の結果生成された前記生成データを後の処理の前記元データとして用いて、当該処理リストが定める順に実行して、前記取得部が取得した入力データからテスト手順書を生成する生成部と、前記生成部が生成したテスト手順書を出力する出力部と、を有することを特徴とする。 In order to achieve the above object, the procedure manual generation apparatus of the present invention is information indicating a process for generating generated data from original data, and an original data type that is an abstract type of the original data to be processed. A method for generating the generated data from the original data, a list storage unit for storing a processing list that is a list of processing information associated with a generated data type that is an abstract form of the generated data, and information on a test procedure. Including, an acquisition unit that acquires input data of an input type that is a data type included in the original data type, and a process stored in a process list stored in the list storage unit, the generation generated as a result of the process A generating unit that generates test procedure manuals from input data acquired by the acquiring unit, using the data as the original data for subsequent processing, and executed in the order determined by the processing list; and the generating unit An output unit for outputting the generated test procedures, characterized by having a.
本発明によれば、効率よくテスト手順書を生成できる。 According to the present invention, a test procedure manual can be generated efficiently.
以下、本発明の実施の形態に係る手順書生成装置を、図面を参照して詳細に説明する。なお図中、同一または同等の部分には同一の符号を付す。 Hereinafter, a procedure manual generation apparatus according to an embodiment of the present invention will be described in detail with reference to the drawings. In the drawings, the same or equivalent parts are denoted by the same reference numerals.
(実施の形態1)
本実施の形態に係る手順書生成装置1は物理的には、図1(a)に示すように、情報処理部11、主記憶部12、外部記憶部13、操作部14、表示部15及び入出力部16を備える。
主記憶部12、外部記憶部13、操作部14、表示部15及び入出力部16はいずれも内部バス17を介して情報処理部11に接続されている。
(Embodiment 1)
As shown in FIG. 1A, the procedure
The
情報処理部11は、CPU(Central Processing Unit)及びRAM(Random Access Memory)から構成される。
The
主記憶部12は、RAM(Random Access Memory)等から構成される。主記憶部12は外部記憶部13に記憶されている制御プログラムや処理情報をロードし、情報処理部11の作業領域として用いられる。
The
外部記憶部13は、フラッシュメモリ、ハードディスク、等の不揮発性メモリから構成される。外部記憶部13は、後述する処理を情報処理部11に実行させるための制御プログラム(プログラム18)と処理情報とをあらかじめ記憶し、これらの制御プログラムや処理情報を情報処理部11の指示に従って主記憶部12又は情報処理部11に伝達する。また、情報処理部11の指示に従って、情報処理部11の処理結果や入出力部16から伝達された情報を記憶する。
The
操作部14は、例えばキーボードやマウス等と、これらに対して実行された操作の情報を伝達する伝達部を含み、ユーザ操作の情報を情報処理部11に伝達する。
表示部15は、液晶表示装置や有機EL(Electro Luminescence)ディスプレイ等から構成され、情報処理部11からのコマンドに基づいて画面を表示する。
The
The
入出力部16は、入出力端子及びI/Oデバイス(A/D変換器やD/A変換器等)、モデムやLANデバイス等の通信機器から構成され、手順書生成装置1と、外部装置とを接続する。
The input /
手順書生成装置1は、このような物理構成により図1(b)に示すように、具象データ入力部110、編集入力部120、編集部130、記憶部140、処理実行部150、手順書出力部160及び表示部170として機能する。
手順書生成装置1は、このような機能構成により、テスト手順を示す情報を含む具象入力データから、記憶部140が記憶する処理手順を示す情報(処理リスト210、抽象型220等)を用いてテスト手順書を生成する。
As shown in FIG. 1B, the procedure
With such a functional configuration, the procedure
テスト手順書は、特定のテスト対象のシステムに対して、特定のテスト観点に基づいた一群のテストを記述する。テスト観点は、テストの因子(テストのパラメータ)と対応づけられる。例えばテスト観点「落下テスト」に対して、「落下させる高さ」、「落下回数」等が因子となる。各因子は水準を持つ。水準とは、実施されるテストにおけるその因子の値である。例えば、スイッチのON/OFFが因子である場合、「ON」と「OFF」がそれぞれ水準となる。 The test procedure describes a group of tests based on a specific test viewpoint for a specific system under test. Test viewpoints are associated with test factors (test parameters). For example, for the test viewpoint “drop test”, “drop height”, “number of drops”, and the like are factors. Each factor has a level. A level is the value of that factor in the test being performed. For example, when ON / OFF of the switch is a factor, “ON” and “OFF” are levels.
具象データ入力部110は、外部機器又は外部記憶部13からテスト手順を示す情報(具象入力データDin)を取得する。具象データ入力部110は、取得した具象入力データDinを処理実行部150に伝達する。
The concrete
編集入力部120は、ユーザが操作部14等を用いて実行する処理手順を示す情報(処理リスト210、抽象型220等)を編集する操作情報や編集のための情報を取得する。
編集入力部120は、取得した情報を編集部130に伝達する。
The
The
編集部130は、編集入力部120から伝達された情報に基づいて、処理リスト210、抽象型220等を生成・編集する。編集部130は、編集操作のため、現在の処理リスト210、抽象型220の内容を示す画面や編集作業のための画面等を表示部170に表示する。
The
記憶部140は、手順書生成装置1の各部から伝達された情報を記憶し、また記憶する情報を各部に伝達する。記憶部140は、手順書生成装置1が実行する設定処理・手順書出力処理(後述)のための情報を予め(工場出荷時等)記憶する。記憶部140は、ワークメモリ1410、リスト記憶部1420及び型記憶部1430を含む。
The
ワークメモリ1410は、具象データ入力部110、処理実行部150又は手順書出力部160等が用いるデータを一時的に保存する。
The
リスト記憶部1420は、1又は複数の処理リスト210を記憶する。処理リスト210については後述する。
The
型記憶部1430は、手順書生成装置1の各部が処理に用いる抽象型(データ型、処理型)を複数記憶する。データ型はデータの構造を示す情報であり、実際のデータ(具象データ)に付された場合はそのデータの構造を示す情報となる。データ型には、ある一つの値を持つデータ(数値データ)や、文字列を示すデータ(文字列データ)は元より、テーブルやツリー・再帰的構造など、特定の構造を持つデータの抽象型が含まれる。
処理型は、ある単位の計算処理を実現するための情報を規定する。処理型は、具象データに対して実際に情報処理部11が実行する際には、その処理実体の情報を示す情報となる。
このように、抽象型(データ型、処理型)はその型の具象データ・処理実体がロードされた場合は、その具象データ又は処理実体データを記述するデータとなる。このとき、抽象型はメタデータとも呼ばれる。
なお、ここでは便宜上データ型と処理型を区別して記述するが、下記処理を実行するシステムによっては、データ型と処理型は同じものとして扱うことも可能である。
The
The processing type defines information for realizing a certain unit of calculation processing. The processing type is information indicating information of the processing entity when the
Thus, when a concrete data / processing entity of that type is loaded, the abstract type (data type, processing type) becomes data describing the concrete data or processing entity data. At this time, the abstract type is also called metadata.
Here, for convenience, the data type and the processing type are described separately, but depending on the system that executes the following processing, the data type and the processing type can be treated as the same.
処理実行部150は、具象データ入力部110から伝達された具象入力データDinから、記憶部140が記憶する情報を用いて、テスト手順書を生成する。処理実行部150がテスト手順書を生成する処理については後述する。処理実行部150は、生成したテスト手順書のデータ(出力データDout)を手順書出力部160及び表示部170に伝達する。
The
手順書出力部160は、処理実行部150から伝達されテスト手順書のデータを、外部機器に出力する。
The procedure
表示部170は、処理実行部150及び編集部130から伝達された情報を表示する。
The
編集部130が実行する設定処理により、リスト記憶部1420が記憶する処理リスト210が設定されることにより、図2に示すようなテスト手順書を生成するための処理の抽象構造が定まる。なお、設定処理については後述する。
By setting the
図2は、図1の記憶部140と処理実行部150が実現する機能を抽象化したモデル(抽象ツールのモデル)である。図2の例では、入力データの抽象型(入力データ型220in)を変換するコンフィギュレータの抽象型(内部データ生成型220a)が定められている。
そして、処理に用いられる内部データの抽象型として、内部データ型2201〜220nが定められる。この内部データを用いた処理の機能単位として、データ選択機能とデータ編集機能が、それぞれ選択型220bと変換型220cとして定義される。そして、内部処理の最終段階として、内部データ型220nのデータから、出力データを生成する機能として、コンフィギュレータの抽象型(手順書生成型220d)が定義される。さらに、出力データのデータ型として、出力データ型220outが定められている。
FIG. 2 is a model (abstract tool model) that abstracts the functions realized by the
Then,
図2の抽象型を元に生成され、実際に実行される処理の構造を図3に示す。この処理構造では、データ型210inに合致する具象入力データDinから、処理型210aに合致する処理実体(内部データ生成部150a)がデータ型2101に合致する内部データD1を生成する。そして、選択型220bに合致する処理実体である選択部150b、変換型220cに合致する処理実体である変換部150c等が、内部データ型2202〜220nに合致する内部データ(D2〜Dn)を順次生成する。そして、内部データ型210nに合致する内部データから、処理型(手順書生成型220d)に合致する処理実体である手順書生成部150dが手順書のデータ(データ型210outに合致する)を生成する。なお、内部データ型2201〜220nは、全て同じデータ型であっても良い。
FIG. 3 shows the structure of a process that is generated based on the abstract type of FIG. 2 and is actually executed. In this process structure, a concrete input data Din that matches the
図2に示すような処理の抽象構造は、図4に示す処理リスト210によって定義される。処理リスト210は、記憶部140のリスト記憶部1420に記憶されており、各処理単位の抽象型を、実行順に登録する。処理リスト210は、各行の識別子(“識別子”)、その行の処理の名称(“処理名”)、処理の引数となる元データのデータ型(“元データ型”)、元データの取得元を示す情報(“元データ場所“)、データ操作処理を示す識別子(“操作”)、処理によって生成される生成データのデータ型(“生成データ型”)及び生成データの出力先を示す情報(“出力場所”)を対応づけて記憶する。
The abstract structure of processing as shown in FIG. 2 is defined by a
各処理実体は、元データ型の具象データを、元データ場所から受け取り、”操作”が示す操作手順(プログラムの関数等)で操作して生成データ型の生成データを生成する。そして、出力場所が示す部位(メモリのアドレス)に出力する。“操作”には、処理実体を生成するための処理型の情報が記憶されている記憶部140のアドレスが含まれる。
Each processing entity receives the concrete data of the original data type from the original data location, and generates the generated data of the generated data type by operating according to the operation procedure (program function or the like) indicated by the “operation”. And it outputs to the site | part (memory address) which an output location shows. “Operation” includes an address of the
処理リストでは、前の処理の出力(生成データ型及び出力場所)が、次の処理の入力(元データ型及び元データ場所)に合致するように設定されている。なお、一つの処理の出力が複数の生成データ型及び出力場所を持っていても良い。また、一つの処理は複数の元データ型及び元データ場所を持っていても良い。
このとき、必ずしも処理リスト上で直前の処理の出力と次の処理の入力が一致する必要は無いが、ある処理が実行される時点ではその処理に必要な元データが、その処理の元データ場所に出力されていなければならない。
In the process list, the output (generated data type and output location) of the previous process is set to match the input (original data type and original data location) of the next process. Note that the output of one process may have a plurality of generated data types and output locations. One process may have a plurality of original data types and original data locations.
At this time, the output of the immediately preceding process does not necessarily match the input of the next process on the process list, but when a certain process is executed, the original data required for the process is the original data location of the process Must be output.
なお、ここでは処理リストに元データ場所と出力場所が記載されている例について説明した。しかし、これに限らず、元データ場所と出力場所を示す情報は処理型に含まれるとし、処理リストには元データ場所と出力場所との情報が含まれてない構成も可能である。 Here, the example in which the original data location and the output location are described in the processing list has been described. However, the present invention is not limited to this, and information indicating the original data location and the output location is included in the processing type, and the processing list may not include the information on the original data location and the output location.
データ型及び処理型は、記憶部140の型記憶部1430に記憶されている。データ型の例を、図5を参照して説明する。状態遷移表のテーブルのデータ型の例を図5(a)に示す。図5(a)のデータ構造は、図5(b)のように図解できる。さらに、このデータ型の実データの例を図5(c)に示す。図5(a)、図5(b)は、図4の“元データ型”または“生成データ型”に対応する。図5(c)に示す実データの、記憶部140上の開始アドレスは、図4の“元データ場所”または“出力場所”に対応する。ある内部データが、図5(b)に示した様なテーブルの構造を持つとする。図5(a)〜図5(c)の“状態”及び“イベント”は因子(テストのパラメータ)である。この例で状態とイベントがそれぞれ5つのデータ数を持つことは、5つの状態のそれぞれで5つのイベントを実行するテストが考えられることを意味する。この各因子(パラメータ)について、それぞれテスト実行の対象となる実際の値を水準と言う。図5(c)の状態遷移表は、状態a〜eのそれぞれで、イベント1〜5を実行した場合の正しいテスト結果(次の状態とシステムの出力)を示している。
The data type and the processing type are stored in the
このような状態遷移表のデータ構造を、図5(a)のデータ型は因子”状態”と因子”イベント”を定義する領域の開始点(“開始位置(x座標)”及び“開始位置(Y座標)”)と、座標に対するデータ数(“データ数(x座標)”及び“データ数(Y座標)”)によって示している。データ型の各行は、一つの種類の情報(”因子a”や"data"といった情報の種類)が、そのデータ型においてどの部位を示すかを表している。 The data structure of such a state transition table, the data type of FIG. 5A is the start point (“start position (x coordinate)” and “start position ( Y coordinate) ") and the number of data with respect to the coordinates (" data number (x coordinate) "and" data number (Y coordinate) "). Each row of the data type represents which part of one type of information (type of information such as “factor a” and “data”) indicates the data type.
本実施の形態では、データ型はUML等の汎用モデリング言語でなく、ドメイン固有言語(DSL;domain-specific language)で記述されている。DSLとして、例えばテスト対象のシステム設計で用いられたDSLを用いる。 In the present embodiment, the data type is described in a domain-specific language (DSL) instead of a general-purpose modeling language such as UML. As the DSL, for example, the DSL used in the system design of the test target is used.
なお、ここではテーブルのデータ型にデータ数の情報が含まれる例について説明したが、実際にはデータ数が無くても以下の処理は可能である。例えば図5(c)の“イベント”を処理対象とする場合、“データ”の始点である開始位置(1,1)からy軸方向に終点(例えば空白)を探索しながら処理を実行すればよい。y軸方向で、終点(例えば空白)に至るまで処理を実行すれば、データ数が無くても全ての“イベント”情報を順次処理することが出来る。 Here, an example in which the information on the number of data is included in the data type of the table has been described, but the following processing is actually possible even if there is no number of data. For example, when the “event” in FIG. 5C is to be processed, if the process is executed while searching for the end point (for example, blank) in the y-axis direction from the start position (1, 1) that is the start point of “data”. Good. If the process is executed in the y-axis direction until reaching the end point (for example, blank), all “event” information can be sequentially processed even if there is no data.
これら処理型が定義する処理内容、及び入力インタフェイスは、テスト対象に特化しているが、これら処理内容、インタフェイスは、処理対象データの種類(因子の種別数等、次数)、各処理対象データの属性、値域及び件数に依存しないように構築可能である。具体的には、各処理型が定義する処理を、抽象化しかつ自己再帰型の処理とすることで、次数等に依存しないシステムとなる。 The processing contents and input interfaces defined by these processing types are specialized for the test target, but these processing contents and interfaces are the types of processing target data (number of types of factors, etc.), and each processing target It can be constructed so as not to depend on the attribute, range, and number of data. Specifically, by abstracting the process defined by each process type and making it a self-recursive process, the system does not depend on the order or the like.
具象的な内部モデルを構築する場合、因子数(入力データの組の数)によって、単に繰り返し(ループ)処理の回数が変わるのではなく、因子の組合せにより処理そのものが変わるような場合がある。因子数によって処理内容が変わるということは、プログラムの書換えが必要ということである。これに対し、繰り返し型の処理を自己再帰型の処理として記述することで、因子数が変化しても同じ処理型を用いて下記する手順書を生成する処理を実行できる。 When constructing a concrete internal model, there are cases where the number of factors (number of sets of input data) does not simply change the number of iterations (loops), but the processing itself changes depending on the combination of factors. The fact that the processing content changes depending on the number of factors means that the program needs to be rewritten. On the other hand, by describing the repetitive type process as a self-recursive type process, even if the number of factors changes, it is possible to execute a process for generating the following procedure manual using the same process type.
自己再帰処理により多次元化された処理の例としては例えば以下の例が挙げられる。
(1)Nの階乗計算のように、単純に繰り返し(ループ)処理を行えばよいもの。
(2)階差数列、フィボナッチ数列のように、現在の状態(N)が1つ以上前(N−1)に依存するようなもの。
(3)ユークリッド互助法やハノイの塔など、ある1回の処理の結果(出力)が次の同じ処理の入力になり、終了状態に達するまで続くもの。このとき、探索処理は、ある範囲の探索を行い、探索成功したら、残りの範囲に対して、同じ探索を行うので、再帰的な処理で実現できる。
(4)ピポッドテーブル(集計表)は、次数に関係なく各階層は同じ構造(推移的関係を持つもの。例えば、1−2段目と2−3段目は同じ構造)なので、自己再帰型の基本処理を作り、因子の次数だけ基本処理(自己再帰処理)を繰り返すようなソフトウェア構造とすることができる。
Examples of processing that has been multidimensionalized by self-recursive processing include the following examples.
(1) A simple iterative (loop) process, such as N factorial calculation.
(2) The current state (N) depends on one or more previous (N-1), such as a difference number sequence and Fibonacci number sequence.
(3) The result (output) of one process, such as the Euclidean Mutual Assistance Method and the Tower of Hanoi, becomes the input of the next same process and continues until the end state is reached. At this time, the search process can be realized by a recursive process because a search of a certain range is performed, and if the search is successful, the same search is performed for the remaining range.
(4) The pipette table (aggregation table) is self-recursive because each hierarchy has the same structure (transitional relationship. For example, the first and second levels are the same structure) regardless of the order. The software structure can be made such that the basic process (self-recursive process) is repeated by the order of the factor.
本実施形態では、処理型が定める処理を上述のような自己再帰型の処理として記述することができる。これにより、次数等によらない効率・再利用性の高い方法でテスト手順書を生成できる。 In the present embodiment, the process determined by the process type can be described as a self-recursive process as described above. As a result, the test procedure manual can be generated by a highly efficient and reusable method that does not depend on the order or the like.
処理実行部150は、この処理リストに登録された処理を、処理リストの順に実行してテスト手順書を生成する。
処理実行部150は、ロード部1510、取得部1520、生成部1530及び出力部1540を含む。ロード部1510は、処理リストの行が示す処理をロードして、処理実体を生成する。このとき、取得部1520が、元データ場所にアクセスして、処理の元データを取得する。ロードされた処理実体は生成部1530となり、元データから生成データ(次の処理の対象となるデータ)を生成する。そして、出力部1540が、“出力場所”が示すワークメモリ上のアドレスに生成データを出力する。
このワークメモリ上のアドレスは、後の処理の元データ場所となる。このように、処理実行部150は処理リストに登録された処理をインタプリタのように実行することで、テスト手順書を生成する。
The
The
This address on the work memory becomes the original data location for later processing. In this way, the
編集部130が実行し、リスト記憶部1420へ記憶する処理リストを設定・編集する処理(編集設定処理)について、図6を参照して説明する。編集部130は、編集入力部120が処理リストの編集開始を指示する操作を受け付けると、図6に示す編集設定処理を開始する。なお、この編集設定処理は、図1の編集部130が、記憶部140に記憶されている情報(リスト記憶部1420の処理リスト210及び/又は型記憶部1430の抽象型220)を編集する処理である。
A process (edit setting process) that is executed by the
編集設定処理において、まず編集部130がリスト記憶部1420に記憶されている処理リスト210を表示部170に表示する。そして、ユーザが表示された処理リストの一つを選択する操作を実行すると、その処理リストを注目処理リストとして選択する(ステップS101)。なお、このとき新規な処理リストを作製して、作製した空の処理リストを注目リストとしてもよい。
In the editing setting process, the
次に、編集部130は注目処理リストを変更するか否かを判別する(ステップS102)。具体的には、注目処理リストを変更するか否かを選択するための画面を表示部170に表示する。そして、編集入力部120が変更しない旨の操作を受け付けると、変更しないと判別し(ステップS102;NO)、編集設定処理は終了する。
Next, the
一方、変更する旨の情報を受け付けると(ステップS102;YES)、テスト対象が新たなシステムであるか否か判別する(ステップS103)。
具体的には、テスト対象が新システムであるか既存システムであるかを選択するための画面を表示部170に表示する。そして、編集入力部120は、テスト対象が既存システムである旨の操作を受け付けると(ステップS103;NO)、処理はステップS107に移行する。
On the other hand, when the information to change is received (step S102; YES), it is determined whether or not the test target is a new system (step S103).
Specifically, a screen for selecting whether the test target is a new system or an existing system is displayed on the
一方、新たなシステムである旨の操作を受け付けると(ステップS103;YES)、次に新規抽象型を登録するか否か判別する(ステップS104)。具体的には、新規抽象型を登録するか否かを選択するための画面を表示部170に表示する。そして、編集入力部120が登録する旨の操作を受け付けると、(ステップS104;YES)、新規抽象型の登録を受け付ける(ステップS105)。
On the other hand, when an operation indicating that the system is a new system is received (step S103; YES), it is next determined whether or not a new abstract type is to be registered (step S104). Specifically, a screen for selecting whether or not to register a new abstract type is displayed on
ステップS105では、新たなデータ型・処理型を入力するための画面を表示部170に表示する。そして、ユーザが編集入力部120を用いて新たなデータ型・処理型を入力すると、そのデータ型・処理型を型記憶部1430が記憶して、手順書生成装置1で利用可能とする。
In step S105, a screen for inputting a new data type / processing type is displayed on
一方、登録しない旨の操作を受け付けると(ステップS104;NO)、ステップS105はスキップされる。 On the other hand, when an operation for not registering is accepted (step S104; NO), step S105 is skipped.
次に、編集部130は既存の抽象型を編集する処理を実行する(ステップS106)。具体的には、既存の抽象型を選択可能な態様で表示部170に表示する。そして、編集入力部120が、ユーザが既存の抽象型を選択して編集する操作を受け付ける。編集部130は、受け付けた操作に基づいて既存の抽象型(データ型・処理型)を変更し、記憶部140に記憶する。なお、ユーザが編集しない旨の操作を実行すると、ステップS106はスキップされる。
Next, the
次に、編集部130は処理リスト210を設定する処理を実行する(ステップS107)。具体的には、現在の注目処理リストの内容を表示部170に表示させる。そして、編集入力部120が、注目処理リストの内容を設定あるいは変更する操作を受け付ける。そして、編集部130は、受け付けた操作に基づいて注目処理リストの内容を定め、リスト記憶部1420に記憶する。
Next, the
このとき、編集部130は注目処理リストの内容をチェックし、問題があればユーザに警告しても良い。例えば、生成データが後の処理で利用されない(出力場所のアドレスを元データ場所とする以後の処理が無い)処理がある場合に問題ありと判別する。また、元データ場所を出力場所とする以前の処理が無い処理がある、ある場所を出力場所とする処理の生成データ型とその場所を元データ場所とする処理の元データ型が一致しない、等の場合にも問題ありと判別する。
そして、編集設定処理は終了する。
At this time, the
Then, the edit setting process ends.
一般に、処理リスト210はテスト手順書を生成して出力するため、図7に示すように、具象データ入力部110、内部データ生成部150a、選択部150b、変換部150c、手順書生成部150d及び手順書出力部160を含むように処理システムを記述する。図4の処理リスト210の各行が、一つの処理単位としての各部に相当する。
この各部には、具象データ入力型220i、内部データ生成型220a、選択型220b、変換型220c、手順書生成型220d及び手順書出力型220oがそれぞれ対応する処理型として型記憶部1430に記憶されている。各部の詳細については後述する。
In general, the
In each unit, a concrete
編集設定処理により定められた処理リストを用いて、テスト手順書を生成して出力する処理(手順書出力処理)を、図8を参照して説明する。
ユーザがテスト手順を示す情報を入出力部16に入力すると、手順書生成装置1は図8の手順書出力処理を開始する。なお、この手順書出力処理は、処理実行部150が実行する処理である。
A process of generating and outputting a test procedure manual using the process list determined by the edit setting process (procedure manual output process) will be described with reference to FIG.
When the user inputs information indicating the test procedure to the input /
手順書出力処理では、情報処理部11がリスト記憶部1420に記憶された処理リスト210から、実行対象となる注目処理リストを選択する(ステップS201)。具体的には、ユーザが注目処理リストを選択する操作を待ち受け、操作部14が選択操作を受け付けると、当該操作に基づいて注目処理リストを選択する。
In the procedure manual output process, the
次に、処理実行部150のロード部1510が、処理リストのうち、未処理の先頭行(図4の例では、一度目のループでは#inの行、2度目のループでは#01の行、以下同じ)を取得する。そして、その行の処理(注目処理)をロードする(ステップS202)。
Next, the load unit 1510 of the
次に、取得部1520(一度目のループでは具象データ入力部110)が、元データ(一度目のループでは具象入力データDin)を取得する(ステップS203)。
一度目のループでは、具象データ入力部110は、情報処理部11が注目処理リストの先頭にある具象データ入力処理を記述する行(図4の例では#in)を抽出し、その行の“操作”の処理型(具象データ入力型220i)をロードすることにより実現される。具象データ入力型220iは、図9(a)に示すように、インタフェイスの種類、入力ポートの番号、入力パラメータに関する情報を含み、入力ポートから入力データ型220in(図4の例では#Tin)に合致する具象入力データDinを取得するための処理手順を記述する。#Tinは、入力データ型220inをパケット等に格納した書式である。
Next, the acquisition unit 1520 (the concrete
In the first loop, the concrete
具象データ入力部110は、図9(b)に示すように、元データ場所(入力ポート1)から具象入力データDinを取得すると、これにヘッダを付加する当の処理を実行して、入力データ型220inに合致したデータを生成し、出力場所(内部データ生成部150aの元データ場所)に伝達する。出力場所(ここでは#x01)は、次の処理(内部データ生成部150a)の引数を収める部位であってもよいし、いわゆるI/Oバッファであっても良い。
なお、2度目以降のループではステップS203で、取得部1520が元データ場所から元データ(元データ型に合致する具象データ)を取得する。
When the concrete
In the second and subsequent loops, in step S203, the acquisition unit 1520 acquires original data (concrete data that matches the original data type) from the original data location.
次に、処理実行部150は、内部処理が終了したか否か判別する(ステップS204)。ここでは、ロードした処理が手順書出力処理(例えば図4の#outの行の処理)である場合に、内部処理が終了したと判別する。
Next, the
内部処理が終了していない場合(ステップS204;NO)、ロードされた処理は生成部1530(処理実体)として機能する。生成部1530は、元データ(例えば内部データD1)から生成データ(例えば内部データD2)を生成する(ステップS205)。このとき、元データのデータ型は、処理リストの元データ型(例えば#T01)に合致している。生成部1530は、元データ型に合致する任意の元データから、生成データの型(例えば#T02)に合致した生成データを生成できる。
If the internal processing has not ended (step S204; NO), the loaded processing functions as the generation unit 1530 (processing entity). The
そして、出力部1540が、生成データを出力場所の部位(例えば#x02)に出力する。出力場所は、次の処理(例えば選択部150b)の引数を収める部位であってもよいし、ワークメモリの所定の部位であっても良い。
Then, the
そして、処理はS203に戻り、注目処理リストの次の行の処理が実行される。なお、注目処理リストの全ての処理が完了した場合の処理(ステップS207)は後述する。
ここで、処理実行部150は典型的には内部データ生成部150a、選択部150b、変換部150c及び手順書生成部150dの機能を順次実現する。
Then, the process returns to S203, and the process on the next line in the attention process list is executed. Note that the process (step S207) when all the processes in the attention process list are completed will be described later.
Here, the
内部データ生成部150aは、ロード部1510が図10(a)に示すように内部データ生成型220aをロードすることで実現される。このとき、内部データ生成型は、参照データDC1(例えばデータの所定部に付加する定型文など)へのポインタを持っていても良い。
内部データ生成部150aは、具象データ入力部110が出力したデータから、図10(c)に示すような内部データD1を生成する。このとき、参照データDc1をさらに用いることが出来る。内部データD1は、例えば図10(b)に示すような内部データ型2201に合致する。
The internal
The internal
内部データ生成部150aは、生成した内部データD1を入力ワークメモリ1410aに記憶する。入力ワークメモリ1410aは、ワークメモリ1410の一部である。図4の例では、入力ワークメモリ1410aはアドレス#x02の部位である。
The internal
選択部150bは、図11に示すように、ロード部1510が選択型220bをロードすることで実現される。このとき、選択型220bは、参照データDc2(例えば選択テーブル)へのポインタを持っていても良い。
選択部150bは、入力ワークメモリ1410aの内部データD1から、図12(c)に示すような内部データD2を生成する。このとき、参照データDc2をさらに用いることが出来る。内部データD2は、例えば図12(a)に示すような内部データ型2202に合致する。ここでは、内部データ型2202は、内部データ型2201と同一である。
As illustrated in FIG. 11, the
なお、図11では、入力ワークメモリ1410a及び出力ワークメモリ1410bにおいて、あるまとまりの情報(例えばテーブルの一つのセル)に対応するデータを円(あるいは多角形、楕円)で示している。内部データD1には、テスト単位に対応する情報が複数含まれる。図10(c)の例では、例えばd11〜d88が一つのテスト単位に対応する。例えば、d12はパラメータX1、X2、Y1〜Y3をONとし、X3をOFFとして実行される一つのテスト(テスト単位)を示す。図7及び以下の図でも同様である。なお、各要素の模様(無地、斜線又は網線)及び形状(円、楕円又は多角形)は、それぞれその情報が所定の特徴を持つことを示す。
In FIG. 11, in the
選択部150bは、内部データD2及びD3と同じ構造を持つ選択テーブルを用いる方法(外延的指定方法)と、所定の選択条件により選択を行う方法(内包的指定方法)のいずれによって選択を実行しても良い。ここで、内包的指定方法による選択とは、内部データD2内のデータのうち、所定の性質を持つデータを指定する方法である。言い換えれば、内包的指定方法による選択とは、選択される要素を全て列挙する(外延的指定方法)のではなく、選択される要素に共通する性質を定義することである。なお、内包的指定方法については後に詳細に説明する。
The
外延的方法の例を説明する。図11において、図10(c)を入力データとすると、図12(b)に示すような選択テーブル(参照データDc2)を用いて選択を実行することができる。選択テーブルは、図12(a)に示すように内部データD1及びD2のデータ型(内部データ型2201及び内部データ型2202)と同様の構成のデータを持つ。図12(b)では、選択テーブルは、選択されるデータを1で、選択されないデータを0で、それぞれ示している。選択の結果、内部データD1のうち対応関係を持たない入力テスト単位の値をNULL(記号「−」)とした内部データD2(図12(c))が生成される。
An example of the extension method will be described. In FIG. 11, when FIG. 10C is input data, selection can be performed using a selection table (reference data Dc2) as shown in FIG. Selection table has a data having the same configuration as the data types of internal data D1 and D2 (
選択処理は、入力データから必要データを抽出すること、あるいは不要データを削除することを目的とする。
内包的指定方法では、選択条件が成立したものを選択する場合(不成立なら非選択)が抽出で、選択条件が成立したものを選択しない場合(不成立なら選択)が削除である。外延的指定方法では、選択テーブルのセル値をONとしたセルを選択する場合(上記の例では選択テーブルのセル値が1である内部データD1のセルを選択し、セル値が0の内部データを非選択)が抽出で、逆の場合が削除である。
The selection process aims at extracting necessary data from input data or deleting unnecessary data.
In the inclusive specification method, extraction is performed when the selection condition is satisfied (non-selection if not satisfied), and deletion is performed when the selection condition is not satisfied (selection if not satisfied). In the extension specification method, when selecting a cell with the cell value of the selection table turned ON (in the above example, the cell of the internal data D1 having a cell value of 1 in the selection table is selected and the cell value is 0) (Not selected) is extraction, and vice versa.
選択部150bは、選択型220bが定めた選択処理により生成した内部データD2を出力場所(図4の例では、#x03)に出力する。ここで、#x03は、例えば変換部150cの引数を収める部位や、ワークメモリの所定位置である。
The
変換部150cは、ロード部1510が図13(a)に示すように変換型220cをロードすることで実現される。このとき、変換型220cは、参照データDc3(例えば変換テーブル)へのポインタを持っていても良い。
変換部150cは、選択部150bが出力した内部データD2を元データとして、変換型220cが定める変換処理を実行して内部データD3を生成する。
内部データD3は、例えば図13(b)に示すような内部データ型2203に合致する。ここでは、内部データ型2203は、内部データ型2202と同一であるとする。
The
The
Internal data D3 are consistent within the
変換部150cは、内部データD2及びD3と同じ構造(内部データ型2202及び内部データ型2203)を持つ変換テーブルを用いる方法(外延的定方法)と、所定の変換条件により変換を行う方法(内包的指定方法)のいずれによって変換処理を実行しても良い。ここで、内包的指定方法による変換とは、ある性質を持つデータを別のデータに変換する方法である。言い換えれば、内包的指定方法による変換とは、対象となる全要素についてそれぞれ変換ルールを定める(外延的方法)のではなく、共通する性質を持つ要素に適用される変換ルールを定義することである。具体的には、例えば内部データD3内のデータを、変換型220cが保持する関数によって変換することを言う。
変換部150cは、変換型220cが記憶する変換手順により、内部データD2から内部データD3を生成すると、生成した内部データD3を出力ワークメモリ1410bに記憶する。
変換処理の外延的方法について説明する。図13(a)において、図12(c)を入力データとすると、図13(c)に示すような変換テーブル(参照データDc3)を用いて変換を実行することができる。変換テーブルは、内部データD2のデータ型(内部データ型2202)と同様の構成のデータを持つ。図13(c)の例では、変換テーブルは、内部データ型2202の各要素(各セル)に対して、それぞれ変換関数(関数F11〜関数F88)が定義されたテーブルである。変換部150cは、内部データD2の各セルのデータを、変換テーブルが定める関数で変換する。例えば、図12(c)の内部データD2の座標(3,4)のデータd12を関数F12で変換して、内部データD3の座標(3,4)に配置する。内部データD2の座標(3,5)のデータd13を関数F13で変換して内部データD3の座標(3,5)に配置する。以下、同様である。なお、座標(3,3)のようにNULL値のデータに対しては変換処理を実行せず、生成データ(内部データD3)にもNULL値を配置する。
出力ワークメモリ1410bは、ワークメモリ1410の一部である。図4の例では、出力ワークメモリ1410bはアドレス#x04の部位である。
When the
The extension method of the conversion process will be described. In FIG. 13A, when FIG. 12C is input data, conversion can be executed using a conversion table (reference data Dc3) as shown in FIG. 13C. The conversion table has data having the same configuration as the data type of internal data D2 (internal data type 220 2 ). In the example of FIG. 13 (c), the conversion table, for each element of the internal data type 220 2 (each cell), a table, each conversion function (function F11~ function F88) it was defined. The
The
手順書生成部150dは、図14(a)に示すように、手順書生成型220dがロードされることにより実現する。手順書生成部150dは、出力ワークメモリ1410b上の内部データD3(内部データ型2203)を元データとして、図14(c)に示すようなテスト手順書(内部データD4、内部データ型2204)を生成する。このとき、変換型220cは、参照データDc4(例えば対応表)へのポインタを持っていても良い。
このテスト手順書データ(内部データD4)は、具象入力データDinに含まれているテストのための因子を、上記のように選択・変換してテストを設計した結果から、テストを実際にどのように実行し、テスト結果をどのように判断すれば良いか(判定基準)を人間に理解する形で表示するリストである。
The procedure
This test procedure manual data (internal data D4) shows how the test is actually performed from the result of selecting and converting the test factors included in the concrete input data Din as described above and designing the test. It is a list that is displayed in a form that is understood by humans (judgment criteria) and how to determine the test result.
図14(c)の例では、テスト手順書は以下の項目を含む。
(i)事前準備
テストできる状態にするためにテスト実行者が実行すべき処理を示す。テスト項目の目的を達成するために、テスト実施者が事前にどのような準備(設定値のセットや入力データのロードなど)を行うかを記述する。記述された事前準備を完了すると、テスト対象はテスト可能な状態となる。
(ii)操作手順
前記事前準備で起動したテスト対象に対して、テスト実施者がどのような操作を行うか(起動スイッチオン、選択画面で機能1を選択する、等)を記述する。
(iii)判定基準
前記操作手順の結果がOKかNGかを判定する基準。どのような結果(操作手順を実行した場合に発生する変化・出力等)となればOKとなり、どうなればNGなのかを記述する(例えば、エラー表示して起動しない場合はNG、機能1が起動すればOK、等)。
手順書生成部150dは、別に構築されたデータベース(例えば参照データDc4)を用いて、パラメータ(図14の例ではパラメータ1〜3)の組合せに応じた上記項目(i)〜(iii)のテキストを自然言語処理によって生成する。項目(i)〜(iii)のテキストは、テストを実行して評価する説明書のような表現であることが望ましい。
In the example of FIG. 14C, the test procedure manual includes the following items.
(I) Preliminary preparation Indicates a process to be executed by a test performer to be ready for testing. In order to achieve the purpose of the test item, describe what preparations the tester will perform in advance (setting of set values, loading of input data, etc.). After completing the described preparations, the test object is ready for testing.
(Ii) Operation procedure Describes what operation the tester performs on the test target activated in the advance preparation (activation switch-on, selection of
(Iii) Criteria Criteria for judging whether the result of the operation procedure is OK or NG. Describe what result (change / output, etc. that occurs when the operation procedure is executed) is OK, and describe what is NG (for example, NG, if
The procedure
項目(i)〜(iii)のテキストは、パラメータに基づいてテキストデータを生成する任意の既知の方法を用いて生成すれば良い。例えば、参照データDc4に、全パラメータの組み合わせについて項目(i)〜(iii)に当てはめるべきテキストデータを用意していてもよいし、所定のテンプレートにパラメータに応じたテキストを埋め込んでもよい。あるいは、パラメータ毎にテスト対象に相応しいフレーズ(例えばパラメータ1:ONについて「システムAの機能1を立ち上げる」、パラメータ2:OFFについて「ダイアログボックスを開いてチェックを外す」、等)を記録しておいて、各テストについて自然言語生成(Natular Language Genalation)によって各項目のテキストを合成してもよい。そして、手順書生成部150dは生成したテキストをテスト手順書(内部データD4)の対応する部位にそれぞれ記録する。
この処理は、パラメータ(テスト因子)をテキストに変換する一種のデータ変換処理であるが、テストをするための事前準備や操作方法、判定基準、出力先の手順書の書式は、テスト対象の装置やシステムに特化しているため、上記選択部150b・変換部150cとは別に構成される。
The text of items (i) to (iii) may be generated using any known method for generating text data based on the parameters. For example, text data to be applied to items (i) to (iii) for all parameter combinations may be prepared in the reference data Dc4, or text corresponding to the parameters may be embedded in a predetermined template. Alternatively, for each parameter, record a phrase suitable for the test target (for example, parameter 1: ON “
This process is a kind of data conversion process that converts parameters (test factors) into text. However, the preparation and operation method for testing, the judgment criteria, and the format of the procedure manual for the output destination are the devices to be tested. Since it is specialized in the system, it is configured separately from the
手順書生成部150dは、内部データD3のうち、テスト単位を示す情報(d11〜d88)ひとつにつき、手順書の一行のデータを生成する。内部データ型2204に合致するデータの各セルと、内部データ型2203に合致するデータの各セルの対応関係は手順書生成型220dの内部で定義されている。あるいは、参照データDc4が定義するものとしてよい。手順書生成部150dは、このデータ型どうしの対応関係に基づいて、内部データD3に含まれる情報を、テスト手順書(内部データD4)にテスト単位毎に配置することで、テスト手順書を作成する。このとき、NULL値のテスト単位についてはデータを生成しない。
The procedure
図8に戻って説明を続ける。ステップS204において内部処理が終了したと判別されると(ステップS204;YES)、次に手順書出力部160が出力データDoutを外部に出力する(ステップS207)。具体的には、情報処理部11が注目処理リストの最後にある手順書出力処理を記述する行(図4の例では#out)を抽出し、その行の“操作”の処理型(手順書出力型220o)をロードして手順書出力部160の処理を実行する。手順書出力型220oは、図15(a)に示すように、インターフェースの種類、入力ポートの番号、入力パラメータに関する情報を含み、元データ(内部データD4)をパケット等に収めて出力可能なデータ形式(図4の例では#Tout)として、外部装置に出力場所(ここではシリアルポート)を通して出力する。
Returning to FIG. If it is determined in step S204 that the internal processing has been completed (step S204; YES), then the procedure
ステップS207でテスト手順書を外部に出力すると、手順書出力処理は終了する。 When the test procedure manual is output to the outside in step S207, the procedure manual output process ends.
なお、型記憶部1430が記憶する処理型・データ型は、抽象度の程度によってスーパークラス・サブクラスの関係を持つことが出来る。例えば、選択型220bとして、全選択処理に共通の機能だけを定義したスーパークラスを用意し、所定の特徴を持つ(例えば全選択)選択処理に対応したサブクラスを定義できる。スーパークラスとサブクラスを定義することで、同じ内容の機能を繰り返し定義しなくても良い。また、スーパークラスを変更すれば、全サブクラスの機能を同時に併せて変更できるため、システム変更時の労力が大きく軽減できる。
The processing types and data types stored in the
また、データ型として抽象化される対象は、内部データ・入出力データといった処理単位だけではなく、抽象データ型に含まれる各要素も抽象化する。即ち、あるデータ型に含まれる因子が、ツリー構造を持つデータであった場合、このツリー構造そのものと、ツリーを構成する要素がそれぞれ抽象化され、データ型として型記憶部1430に記憶される。
The object abstracted as a data type abstracts not only the processing unit such as internal data / input / output data but also each element included in the abstract data type. That is, when a factor included in a certain data type is data having a tree structure, the tree structure itself and elements constituting the tree are abstracted and stored in the
手順書生成装置1は、処理リスト及び処理型・データ型の設定内容によって、さまざまな処理構造(抽象構造及び具象構造)を持つことが出来る。以下に手順書生成装置1の設定例と、その場合の機能を例示する。手順書生成装置1は、下記の設定例に示す処理のための処理型・データ型と、設定例が示す処理を定義した処理リストをテンプレートとして記憶部140に予め記憶するものとする。
The procedure
(設定例1)
設定例1は、前述のようなシステム構成において、入力データ型220inが変換なしで内部モデルとして使用できる場合に好適な設定例である。設定例1の選択部150bと変換部150cは、図16に示すような処理構造を持つ。
設定例1では、内部モデル(内部データ型2201〜2204)は共通である。この場合の内部モデルは、例えば因子の組とそれに対する動作が記載された表である。
設定例1では、選択部150bは、参照データDc2として、図12で示したような選択テーブルによってデータを選択する。具体的には、内部データD1を、選択テーブルで非選択(例えば0)が記憶されているセルの値をNULLとする以外はそのままコピーして内部データD2を生成する。また、変換部150cは変換を実行せず、そのまま内部データD2を内部データD3として出力ワークメモリ1410bに記憶する。
設定例1は、入力データを変換することなく選択のみでテスト手順書を作成できる場合に有効である。
(Setting example 1)
Setting example 1 is a setting example suitable for the case where the
In setting example 1, the internal models (
In setting example 1, the
Setting example 1 is effective when a test procedure manual can be created only by selection without converting input data.
(設定例2)
設定例2は、変換部150cでデータを1対1で変換する設定例である。なお、設定例1と同様に、前述のようなシステム構成において、入力データ型220inがそのまま内部モデルとして使用できることを前提とする。
設定例2の選択部150bと変換部150cは、図17(a)に示すような処理構造を持つ。
(Setting example 2)
Setting example 2 is a setting example in which data is converted on a one-to-one basis by the
The
本設定例では、選択部150bはをそのまま変換部150cに伝達する。変換部150cは、図17(b)に示すような変換テーブルを用いて、内部データD1の各セルを必要に応じて変換して、出力ワークメモリ1410bに記憶する。
In this setting example, the
変換テーブルを用いた変換とは、あるセルの値(あるいはその一部)が変換テーブルの変換前(図17(b)では“記号”)の列に登録されている値であった場合、その部分を変換後(図17(b)では”文字列”)に変換することを言う。このため、変換テーブルは変換前の情報と変換後の情報を対応づけて記憶する。
図17(b)の例では、あるセルに記号“○”が含まれていた場合、その部分を文字列“起動”に変換する。
Conversion using a conversion table means that if a cell value (or part of it) is a value registered in the column of the conversion table before conversion (“symbol” in FIG. 17B), This means that the portion is converted after conversion (“character string” in FIG. 17B). Therefore, the conversion table stores information before conversion and information after conversion in association with each other.
In the example of FIG. 17B, when a symbol “◯” is included in a certain cell, that portion is converted into a character string “activation”.
本設定例は、具象入力データにおいて因子の水準やセルの値(図5(c)の例では、データセル中の状態名a〜eやシステムの出力名out1〜out5)が記号で記されている場合に、可読性の向上のために一括して変換する場合等に利用できる。たとえば、a(out1)を、停止状態(起動可能ランプ点灯)などに変換することが出来る。このときa=停止状態、out1=起動可能ランプ点灯と変換している。
また、例えば、本設定例は、具象入力データに対する文字コードの変換(JISからEUC)や区切り記号の挿入(特定記号/文字⇒特定記号/文字+区切り記号)のような変換に利用できる。さらに、システムのバージョンアップにあたって処理の名称を変更した場合などに、一括して新規名称に変更する場合等に有効である。
In this setting example, in the concrete input data, the level of the factor and the cell value (in the example of FIG. 5C, the state names a to e in the data cell and the system output names out1 to out5) are described by symbols. Can be used for batch conversion to improve readability. For example, a (out1) can be converted into a stopped state (a startable lamp is lit). At this time, a = stopped state and out1 = converted to startable lamp lighting.
Further, for example, this setting example can be used for conversion such as character code conversion (JIS to EUC) or insertion of a delimiter (specific symbol / character => specific symbol / character + delimiter) for concrete input data. Furthermore, this is effective when the name of a process is changed at the time of upgrading the system and when the name is changed to a new name at once.
本設定例は、単なる表現方法の変換なので、逆方向の変換(逆変換)の実現も可能である。すなわち、テスト手順書から具象入力データへの変換も可能である。
これを応用して、テスト手順書のテスト結果(OK/NG)から内部データ型(内部データ型2201)へ逆変換して、内部データ型でテスト結果を利用することができる。例えば、内部データ型に対してテスト観点毎のNG(不具合)の分布を可視化する処理を定義すれば、テスト手順書の違いにかかわらず、テストカバレッジモニタが効率的に実行できる。同様に、テスト手順書のテスト結果(OK/NG)とテスト実施日(暦日)を、テスト作業進捗管理表(Xチャート)に時系列的なグラフとして表示することも効果的に実現できる。
Since this setting example is a simple expression method conversion, reverse conversion (inverse conversion) can also be realized. That is, conversion from the test procedure manual to concrete input data is also possible.
By applying this, the test result (OK / NG) of the test procedure manual is converted back to the internal data type (internal data type 220 1 ), and the test result can be used with the internal data type. For example, if a process for visualizing the distribution of NG (defects) for each test viewpoint is defined for the internal data type, the test coverage monitor can be efficiently executed regardless of the difference in the test procedure manual. Similarly, it is possible to effectively display the test result (OK / NG) and test execution date (calendar date) of the test procedure manual as a time-series graph on the test work progress management table (X chart).
(設定例3)
設定例3は、テスト観点(因子の水準)を正規化する処理構造を持つ。
本設定例では、図18(a)に示すように、内部データD1の情報(因子の水準)を、変換部150cが分割して内部データD3とする。
本設定例では、選択部150bは全選択または部分選択を実行する。変換部150cは、因子の各水準の正規化(1個の水準から複数個の水準への分解)を行い、冗長性を排除する。
(Setting example 3)
Setting example 3 has a processing structure for normalizing the test viewpoint (factor level).
In this setting example, as shown in FIG. 18A, the information (factor level) of the internal data D1 is divided into the internal data D3 by the
In this setting example, the
一方、本設定例の変換部150cは、図18(b)に示すように、選択部150bの選択結果(内部データD2)の因子を分割した内部データD3を生成する。
この変換部150cは一つの値から複数の値を生成する任意の既知の方法を用いて因子分割を実行して良いが、ここでは図18(c)に示したような分割デーブル(参照データDc3)を用いて分割するとする。
本設定例において、正規化の変換とは、物理的な1対多変換(水準のコード区切りの方法)または意味的な1対多変換の対応関係である。この正規化処理は、入力データを意味的に分解(水準を分離)する処理である。ここで言う「意味的分解」とは、例えば「加速前進中」を意味によって分割して「正常状態」「前方向」「速度加算中」のようにすることである。
このためには、入力データに現れる、テスト対象のシステムに係る単語の概念を分割して、分割した概念に応じた因子を生成できるように、参照データDc3に複数の単語を登録する。例えば、自動車の「運転」という概念を「状態」、「移動方向」、「速度変化」に分割する場合に、「状態」に対して「正常」「故障(一部故障してるが使ってる)」「修理(タイヤ交換中で使えない)」の3つ、「移動方向」に対して「前」「後」の2つ、及び「速度変化」に対して「加算中(加速中)」「減算中(減速中)」「0(一定速度か停止)」の3つの単語をそれぞれ登録する。そして、変換時には入力データに表れる単語(上記の例では加速前進中)から、3つの因子に対応する単語(「正常状態」、「前方向」、「速度加算中」)を抽出する。
On the other hand, as shown in FIG. 18B, the
The
In this setting example, normalization conversion is a correspondence relationship between physical one-to-many conversion (level code delimiter method) or semantic one-to-many conversion. This normalization process is a process of semantically decomposing input data (separating levels). Here, “semantic decomposition” means, for example, dividing “acceleration forward” according to meaning into “normal state”, “forward direction”, “during speed addition”.
For this purpose, a plurality of words are registered in the reference data Dc3 so that the concept of the word related to the test target system appearing in the input data can be divided and a factor corresponding to the divided concept can be generated. For example, when the concept of “driving” a car is divided into “state”, “moving direction”, and “speed change”, “normal” “failure” (partly broken but used) "" Repair (cannot be used during tire replacement) "," Moving direction "," Front "," Back ", and" Speed change "," Adding (accelerating) " Three words “subtracting (decelerating)” and “0 (constant speed or stopped)” are registered. At the time of conversion, words corresponding to the three factors (“normal state”, “forward”, “adding speed”) are extracted from the words appearing in the input data (accelerating forward in the above example).
本設定例における正規化処理の目的は、データベースにおける正規化処理と同様である。即ち、テスト観点が他のテスト観点と重複のない単一の概念になるように分離する処理である。 The purpose of the normalization process in this setting example is the same as the normalization process in the database. That is, it is a process of separating the test viewpoint so that it becomes a single concept that does not overlap with other test viewpoints.
本設定例は、設計仕様書(具象入力データ)に規定されたテスト観点(因子の水準)が複数のテスト観点を含意(混在)する場合に、独立したテスト観点への分割(正規化)を行うことに利用する事が出来る。
例えば、複数の因子を混在させてテスト設計を行う場合、テスト項目に漏れや重複が発生しないようするため、任意の2つの因子の水準を直交させる必要がある。
具体的には、ある因子の一部の水準が複数の意味を持つ場合、意味的に重なりの無いように分離して集計表(ピボットテーブル)に表示したい場合などである。
本設定例は、そのような場合に各因子の水準の相互作用を見るため意味的に分離(線形独立化)することに利用できる。
In this setting example, when the test viewpoints (factor levels) specified in the design specifications (concrete input data) imply (mix) multiple test viewpoints, division (normalization) into independent test viewpoints is performed. Can be used to do.
For example, when designing a test by mixing a plurality of factors, it is necessary to make the levels of any two factors orthogonal in order to prevent the test items from leaking or overlapping.
Specifically, when a certain level of a factor has a plurality of meanings, it is necessary to separate them so that they do not overlap each other and display them on a tabulation table (pivot table).
This setting example can be used for semantic separation (linear independence) in order to see the interaction of the levels of each factor in such a case.
(設定例4)
設定例4では、テスト観点(因子)を複数のグループに分割する。
本設定例では、図19(a)に示すように、選択部150b1と選択部150b2の二つの選択部が定義される。
選択部150b1と選択部150b2は、処理リスト上で一つの処理として起動された選択部150bの機能単位であって良い。この場合は、変換部150cと出力ワークメモリも機能単位に分割される。
あるいは、処理リスト上でそれぞれ別に定義されていても良い。この場合は、処理リストにおいて入力ワークメモリを元データ場所とする選択処理(選択部150b1と選択部150b2とに対応)が二つ定義される。
(Setting example 4)
In setting example 4, the test viewpoint (factor) is divided into a plurality of groups.
In this setting example, as shown in FIG. 19A, two selection units, a selection unit 150b1 and a selection unit 150b2, are defined.
The selection unit 150b1 and the selection unit 150b2 may be a functional unit of the
Alternatively, they may be defined separately on the processing list. In this case, two selection processes (corresponding to the selection unit 150b1 and the selection unit 150b2) that define the input work memory as the original data location are defined in the processing list.
選択部150b1と選択部150b2とは、図19(b)に示すように、内部データD1を、内部データD2aと内部データD2bとに示すように2つに分けて解釈する。そして、解釈の結果に基づき2つの内部データを生成する。
さらに、各選択処理の出力に応答する、変換部150c1と150c2が定義される。変換部150c1は、図19(b)に示すように、内部データD2aから、内部データD3aを生成する。変換部150c2は、内部データD2bから、内部データD3bを生成する。変換部150c1と150c2は、それぞれ生成した内部データを出力ワークメモリ1410b1と出力ワークメモリ1410b2に内部データを出力する。そして、手順書生成部150dが出力ワークメモリ1410b1と出力ワークメモリ1410b2とに記憶された内部データを元に手順書を生成する。このときは、処理リスト上で手順書生成処理は二つの引数を持つ関数(出力ワークメモリ1410b1と出力ワークメモリ1410b2とを元データ場所とする処理)として定義される。
As shown in FIG. 19B, the selection unit 150b1 and the selection unit 150b2 interpret the internal data D1 in two as shown in the internal data D2a and the internal data D2b. Then, two internal data are generated based on the interpretation result.
Further, conversion units 150c1 and 150c2 are defined which respond to the output of each selection process. As illustrated in FIG. 19B, the conversion unit 150c1 generates internal data D3a from the internal data D2a. The conversion unit 150c2 generates internal data D3b from the internal data D2b. The conversion units 150c1 and 150c2 output the generated internal data to the output work memory 1410b1 and the output work memory 1410b2, respectively. The procedure
このとき、内部データD1の各要素に対して、常にゼロまたは1つの出力データへ変換され、入力データが複数の選択処理により重複して選択されることはない。例えば、選択部150b1は、図19(c)に示すような選択ルールで選択処理を実行する。図19(c)のアクタリスク(*)は、ワイルドカードを意味し、内部データD1の各行のうち、P1から始まる任意の文字列を選択する。そして、P1を因子1とし、その他の部分を因子2として内部データD2aを生成する。変換ルールは、例えば参照データDc2aに記録されていれば良い。
同様に、選択部150b2は、図19(d)に示すような選択ルールにより、内部データD1の各行のうち、P2から始まる任意の文字列を選択する。そして、P2を因子1とし、その他の部分を因子2として内部データD2bを生成する。変換ルールは、例えば参照データDc2bに記録されていれば良い。
At this time, each element of the internal data D1 is always converted to zero or one output data, and input data is not selected redundantly by a plurality of selection processes. For example, the selection unit 150b1 executes the selection process with a selection rule as illustrated in FIG. The actor risk (*) in FIG. 19C means a wild card, and an arbitrary character string starting from P1 is selected from each line of the internal data D1. Then, internal data D2a is generated with P1 as
Similarly, the selection unit 150b2 selects an arbitrary character string starting from P2 in each row of the internal data D1 according to a selection rule as shown in FIG. Then, internal data D2b is generated with P2 as
変換部150c1は、例えば図19(e)に示すような変換ルールにより、変換処理を実行する。図19(e)のアクタリスクは、変換にあたって因子1の内容を問わないことを意味する。変換部150c1は、内部データD2aの各行のうち因子2がアクタリス以外の文字列(例えば「生成」)である行に、表示内容の文字列(例えば因子2が「生成」である全ての行に「A1」)を追加する内部データD3aを生成する。
同様に、変換部150c2は、例えば図19(f)に示すような変換ルールにより、変換処理を実行する。変換部150c2は、内部データD2bの各行のうち因子2がアクタリス以外の文字列(例えば「生成」)である行に、表示内容の文字列(例えば因子2が「生成」である全ての行に「B1」)を追加して内部データD3bを生成する。
The conversion unit 150c1 executes the conversion process according to a conversion rule as shown in FIG. The actor risk in FIG. 19 (e) means that the content of
Similarly, the conversion unit 150c2 executes the conversion process according to a conversion rule as shown in FIG. The conversion unit 150c2 converts the line of the internal data D2b into a line in which the
本設定例は、入力データのテスト観点をマトリクス化したい場合や、因子を複数のグループに分離(分割)したい場合に好適である。
例えば、パラメータの一覧表をX軸、Y軸に分割して、ピボットテーブルを構成したいような場合に使用する。テスト設計を行う場合、テスト観点の組合せと動作結果に関する一覧表(決定表)を作って、全体像を見渡したい場合がある。一覧表の形式は、縦軸と横軸にテスト観点(因子)を置き、テスト観点の交点(各セル)に動作結果を記載するマトリクス形式であるが、このような形式に変換するためには、因子を縦軸と横軸の2グループに分割する必要がある。本設定例によれば、分割する処理を実現できる。
This setting example is suitable when it is desired to form a test viewpoint of input data in a matrix or when it is desired to separate (divide) factors into a plurality of groups.
For example, it is used when you want to configure a pivot table by dividing the parameter list into X and Y axes. When designing a test, there is a case where it is desired to create a list (decision table) regarding the combination of test viewpoints and operation results and to look over the whole picture. The format of the list is a matrix format in which test viewpoints (factors) are placed on the vertical and horizontal axes, and the operation results are described at the intersections (each cell) of the test viewpoints. It is necessary to divide the factors into two groups, the vertical axis and the horizontal axis. According to this setting example, the process of dividing can be realized.
なお、同様の処理は、図20に示したような処理構成でも実現可能である。この場合、選択部150bは全選択を実行し、変換部150cが二つの出力(出力ワークメモリ1410b1と1410b2)を持つように処理リストを設定する。
Similar processing can also be realized with the processing configuration shown in FIG. In this case, the
(設定例5)
設定例5においては、入力データに含まれる複数のテスト観点を合体して一つのテスト観点にする。
本設定例では、図21(a)に示したように、選択部150bが内部データD1をそのまま変換部150cに内部データD2として伝達する。また、変換部150cは、複数の水準を1つにまとめるマージ処理を実行して複数のテスト観点をマージする。
(Setting example 5)
In setting example 5, a plurality of test viewpoints included in the input data are combined into one test viewpoint.
In this setting example, as shown in FIG. 21A, the
具体的には、図21(b)に示すように、内部データD2の行の組み合わせ(X2BとX2Cの行、X4BとX4Cの行)を、内部データD3では一つの行(それぞれX2Cの行、X4Bの行)とする。 Specifically, as shown in FIG. 21B, a combination of rows of internal data D2 (X2B and X2C rows, X4B and X4C rows) is converted into one row (in each case X2C rows, X4B row).
そのため、変換部150cは、図21(c)にしめすようなマージ規則表(参照データDc3)を用いる。マージ規則表は、変換前のデータの組み合わせと、変換後のデータとを対応づけて記憶する。なおこれに限らず、マージ規則として、複数の変換前のデータから一つの変換後のデータを生成する既知の規則を用いることが可能である。
Therefore, the
本設計例は、設計仕様書(入力データ)に単独では実際のテスト観点とならないが、組み合わせれば実際の要求に添う情報が含まれている、といった場合に好適である。
例えば、因子の水準が複数の組データになっており、意味的に組データで扱いたい場合が考えられる。具体的には、入力データが3つ組データ(例えば、X,Y,Z)となっており、意味的に1つの事柄(例えば、空間の座標)を表しており、意味的データ(空間の座標の指定)でテストを実施したいような場合である。
This design example is suitable when the design specification (input data) alone is not an actual test viewpoint, but if it is combined, information that meets the actual requirements is included.
For example, there may be a case where the level of the factor is a plurality of set data and it is desired to handle the set data semantically. Specifically, the input data is triplet data (for example, X, Y, Z), meaning one matter (for example, space coordinates), and semantic data (for space This is a case where a test is to be performed by specifying coordinates).
なお、マージによって情報が失われない設定の場合、本設定例を逆方向の変換(逆変換)に応用することも可能である。すなわち、テスト手順書から具象入力データへの変換も可能である。 Note that in the case of settings in which information is not lost by merging, this setting example can be applied to reverse conversion (inverse conversion). That is, conversion from the test procedure manual to concrete input data is also possible.
(設定例6)
設定例6では、複数の入力データから一つのテスト手順書を生成する。
本設定例では、図22(a)に示すように、具象データ入力部(具象データ入力部110a及び110b)、内部データ生成部(内部データ生成部150a1及び150a2)、入力ワークメモリ(入力ワークメモリ1410a及び1410b)、及び選択部(選択部150b1及び選択部150b2)、変換部(変換部150c1及び変換部150c2)の組み合わせがそれぞれ2セット定義される。
(Setting example 6)
In setting example 6, one test procedure document is generated from a plurality of input data.
In this setting example, as shown in FIG. 22A, a concrete data input unit (concrete
このため、処理リスト210には、具象データ入力処理、内部データ生成処理、選択処理及び変換処理がそれぞれ2セットずつ定義される。このとき、変換処理は例えば全選択処理である。そして、2つの変換処理の出力場所が、ワークメモリ1410bの同じ内部データD3を示す位置となる。
Therefore, two sets of concrete data input processing, internal data generation processing, selection processing, and conversion processing are defined in the
その結果、例えば図22(b)に示すように、入力ワークメモリ上に二つの内部データ(内部データD1aとD1b)が記憶される。そして、内部データD1aとD1bとに含まれる情報を、変換部150c1及び変換部150c2が、型記憶部1430が記憶する内部データ型2203上の所定部位に配置して内部データD3を生成する。
As a result, as shown in FIG. 22B, for example, two internal data (internal data D1a and D1b) are stored on the input work memory. Then, the information contained in the internal data D1a and D1b, the conversion unit 150c1 and the conversion unit 150C2, the
このため、変換部は例えば図22(c)に示すような配置変換表(参照データDc3)を用いて、情報を変換して配置する。
図22(c)の配置変換表は、元データの因子Aと因子Bとを、生成データ上の因子Cとして線形に配置することを指定する。
For this reason, the conversion unit converts and arranges information using, for example, an arrangement conversion table (reference data Dc3) as shown in FIG.
The arrangement conversion table in FIG. 22C specifies that factor A and factor B of the original data are arranged linearly as factor C on the generated data.
本設定例は、ある設計仕様書(入力データ)のテスト観点を元に、新たに内容を追加する場合に好適である。例えば、複数の設計仕様書に、実際に実行すべきテストの情報が分散しており、情報が整理されていない場合に、何らかの連結情報を元に複数データをまとめて、1つのテスト手順表上に合成する場合である。
具体的には、所定の入力データの組合せを入力すると複数の出力が得られるシステムにおいて、得られた出力を組合せて決定表を作成したいような場合や、複数データをまとめてある処理(関数)の入力するテストの手順書として、入力データ表を作りたいような場合が考えられる。また、テスト観点となる設計情報がある情報毎の複数の一覧表になっている場合に、複数の一覧表を統合して、1つの全体像を把握できる表を生成したい場合なども考えられる。
また、選択項目に関係なく、共通の確認事項や、テスト開始や終了時の共通処理など一定の決まった文言を挿入(追加)したいような場合にも使用できる。さらに、条件により複数の表になっているものを条件を含めた1つの表にマージしたい場合や、2つの行列データを入力として2データ間の行列演算(加算や内積など)のテストを行う場合等、2つの入力データに対してなんらかの演算を行いたい場合にも利用できる。
This setting example is suitable for adding new contents based on a test viewpoint of a design specification (input data). For example, when test information to be actually executed is distributed in multiple design specifications, and the information is not organized, multiple data are collected based on some connected information on one test procedure table. This is the case of synthesis.
Specifically, in a system in which a plurality of outputs can be obtained by inputting a combination of predetermined input data, when a decision table is created by combining the obtained outputs, or a process (function) in which a plurality of data are collected You may want to create an input data table as a test procedure manual to enter. In addition, when design information as a test viewpoint is a plurality of lists for each piece of information, there may be a case where a plurality of lists are integrated to generate a table that can grasp one whole picture.
Also, it can be used when it is desired to insert (add) a certain fixed word such as a common confirmation item or a common process at the start or end of a test regardless of the selected item. Furthermore, when you want to merge multiple tables according to conditions into a single table including conditions, or when you want to test matrix operations (addition, inner product, etc.) between two data using two matrix data as inputs It can also be used when it is desired to perform some operation on two input data.
(設定例7)
また、入力データ型220inと内部データ型2201〜220nが異なる場合、図23に示したような設定が有効である。
本設定例では、内部データ生成部150aが、具象データ入力部110から伝達されたデータの構造を変更して、内部データ型2201に合致するデータ(内部データD1)とする。
(Setting example 7)
Also, if the input data type 220in and the
In this setting example, the internal
そして、選択部150bが、選択デーブル(参照データDc2)を用いて一致検索処理を実行する。選択テーブルは内部データ型2201及び2202と同じ構造を持つ、図12(b)に例示したようなデータである。
なお、変換部150cは変換処理を実行しなくて良い。
Then, the
Note that the
このような設定は、入力データ型が内部データ型と異なる場合であって、設計仕様書(入力データ)に使える情報があるが、不要な情報を含む場合で条件式による指定が困難な場合に好適である。
具体的には、テスト結果の分析により、弱点に関する追加のテストを実施したい場合、弱点およびその周辺にテストケースを生成したい場合に好適である。
This setting is used when the input data type is different from the internal data type, and there is information that can be used in the design specification (input data), but it is difficult to specify the conditional expression if it contains unnecessary information. Is preferred.
Specifically, it is suitable for the case where it is desired to perform an additional test related to the weak point by analyzing the test result, and to generate a test case around the weak point and its surroundings.
(設定例8)
さらに、内部データD1の情報を、前述のようにデータベース等により対応関係を定めるかわりに、選択部150bが任意の条件(所定条件)により選択する設定(図24)も可能である。
この場合、選択部150bは内部データD1のデータが所定の判定基準(例えば所定範囲の値であるか否か)に基づいて選択・非選択を判別する。
そして、非選択とされたデータの部位をNULLとする一方、選択されたデータを内部データD2の対応部位にコピーする。
なお、本設定例では変換部150cは変換処理を実行しない。
(Setting example 8)
Furthermore, instead of determining the correspondence of the internal data D1 by a database or the like as described above, it is possible to set the
In this case, the
Then, the part of the non-selected data is set to NULL, and the selected data is copied to the corresponding part of the internal data D2.
In this setting example, the
本設定例は、入力データに対する選別が、単純なフィルタ処理では実現不可能な場合に好適である。例えば、選択条件がしきい値の組合せや数式で表現できる場合である。また、入力データに含まれる任意のソフトウェアコード(#define や #endといったコード)を削除する場合にも利用できる。 This setting example is suitable when selection of input data cannot be realized by simple filter processing. For example, the selection condition can be expressed by a combination of threshold values or a mathematical expression. It can also be used to delete any software code (codes such as #define and #end) included in the input data.
(設定例9)
以上、選択部150bと、それに続く変換部150cを含む設定例について説明したが、本実施形態の設定例はこれに限られない。
例えば、図25のように、変換部150cの後に選択部150bが続く構成も設定可能である。この場合、処理リストにおいて、変換処理のあとに選択処理を配置すればよい。
本設定例は、まず入力データを変換して、変換結果に対して選択(判定)を行いたい場合に好適である。
(Setting example 9)
The setting example including the
For example, as shown in FIG. 25, a configuration in which the
This setting example is suitable when the input data is first converted and selection (determination) is desired for the conversion result.
(設定例10)
又、設定例9の発展形として、変換部150cの後ろに複数の選択部(選択部150b1及び150b2)を配置しても良い(図26)
本設定例では、入力データに対して複数回の選択処理が実施される。
本設定例は、実施形態1において、すでに構築したテスト手順書生成システムに対し、さらにテスト観点の絞込みを進めたい場合に好適である。即ち、新規な処理構造を位置から設計することなく、選択処理を追加するだけで所望の処理(テストケース数の削減等)を実現出来る。
(Setting example 10)
As an extension of setting example 9, a plurality of selection units (selection units 150b1 and 150b2) may be arranged behind the
In this setting example, multiple selection processes are performed on input data.
This setting example is suitable when it is desired to further narrow down the test viewpoint with respect to the test procedure document generation system already constructed in the first embodiment. That is, a desired process (reduction of the number of test cases, etc.) can be realized only by adding a selection process without designing a new process structure from the position.
(設定例11)
さらに、複数の変換部(変換部150c1及び150c2)を配置しても良い(図27)。
本設定例では、入力データに対して複数回の変換処理が実施される。
本設定例は、実施の形態1において、すでに構築したテスト手順書生成システムに対し、さらにテスト観点の変換を実行したい場合に好適である。即ち、新規な処理構造を一から設計する要なく、変換処理を追加するだけで所望の処理(二段階の変換等)を実現出来る。
即ち、過去のテスト手順書生成システムを再利用できる。
(Setting example 11)
Further, a plurality of conversion units (conversion units 150c1 and 150c2) may be arranged (FIG. 27).
In this setting example, the conversion processing is performed a plurality of times on the input data.
This setting example is suitable for the case where it is desired to further convert the test viewpoint to the test procedure document generation system that has already been constructed in the first embodiment. That is, it is not necessary to design a new processing structure from scratch, and a desired process (two-stage conversion or the like) can be realized by adding a conversion process.
That is, the past test procedure manual generation system can be reused.
以上説明したように、本実施形態の手順書生成装置1によれば、データの抽象型に対して定義された処理を順に実行して手順書を生成するため、データの具体的な数・次元数に関わらず、同一のシステムで手順書を生成できる。つまり、手順書の生成を効率良く実行できる。
As described above, according to the procedure
また、本実施形態の手順書生成装置1は、テスト観点毎に抽象化したデータ構造(内部モデル、データ型)と抽象的な処理(処理型)で構成される。そのため、処理対象となるシステムの実装に合わせてそれぞれ異なる処理構造を設定する必要がない。従来手法によるテスト手順書自動作成システムにおいては、自動化システムを実現するための作業(物理的システム構築やプログラミング作業、データの準備)に、多大の労力(修正コスト、時間)を必要としていた。本実施形態では、この労力を低減することが出来る。このため、テスト手順書の自動作成による生産性の向上効果が、自動化システムの実現コストで相殺されず、トータルでの費用削減効果(システム構築+手順書生成)がすぐに表れる。
Further, the procedure
また、テスト要件/システム構成が大きく変化した場合でも、新たな要件に合う生成システムを処理型・データ型の変更が最小限の労力で構築できる。 In addition, even when the test requirements / system configuration changes greatly, a generation system that meets the new requirements can be constructed with minimal effort for changing the processing type and data type.
作成したテスト手順書自動作成システム(処理リスト)を成功事例として異なる他システムに展開しようとした場合にも、処理型・データ型・処理リストに必要な変更を加えるだけで良く、流用が容易となる。 Even if the created test procedure manual automatic creation system (process list) is to be deployed as a success example to other different systems, it is only necessary to make necessary changes to the process type, data type, and process list, making it easy to divert Become.
即ち、本実施形態の手順書生成装置1によれば、テスト手順書生成システムの構築を簡便かつ迅速に行える。また、テスト設計資産の再利用性が高い。また、データ型が、UML等の汎用モデリング言語でなく、ドメイン固有言語(DSL;domain-specific language)で記述されているため、既存の設計仕様書をそのまま入力データとして用いることが出来る。そのためわざわざ既存の設計仕様書をUMLに書き直す必要が無い。また、生成システムの適用範囲を広げる事が出来る。なお、記憶部140にDSL毎に処理型・データ型のテンプレートを記憶し、処理実行部150を複数のDSLを解釈できる処理系で構築することで、このような設定を支援することとしてもよい。さらに、既知の既存システムに対する上記設定例のようなテスト手順生成手順を、工場出荷時に記録しておいてもよい。このような構成によれば、ユーザは自ら設定することなく既存システムに対するテスト手順書を作成できる。また、必要に応じてデフォルトの設定例を改変することにより、所望のテスト手順書生成システムを作成できる。
That is, according to the procedure
本実施形態の手順書生成装置1では、内部データ・入出力データを抽象データ型化するだけでなく、抽象データ型に含まれる各要素も抽象化する。その結果、対象となるデータが変更された場合、抽象型を書換えるだけで足りる。
また、入力データだけでなく、テスト手順書(出力データ)の出力形式も抽象化(メタデータ化)することにより、任意のテスト手順書書式に対応するものである。
In the procedure
Further, not only the input data but also the output format of the test procedure manual (output data) is abstracted (metadataized), thereby corresponding to an arbitrary test procedure manual format.
さらに、インプット・アウトプット(具象データ入力部、手順書出力部)についても処理型を用いて抽象化している。このため、インタフェイス手段の変更についても、処理型を書換えるだけで対応できる。 Furthermore, input / output (concrete data input part, procedure manual output part) is also abstracted using processing types. For this reason, the change of the interface means can be handled only by rewriting the processing type.
本発明によるテスト手順書自動作成システムは、機能要件からテスト手順書に至る一連の選択・変換プロセスを抽象型として定義し、処理リストによって処理の順序を定める。このため、抽象型又は処理リストの編集という簡易な方法で構成・機能の書換えが可能である。すなわち、プログラムそのものを編集しなくても、所望の処理を実現できる。これにより、手順書を生成するプロセスを任意に構成し、あるいは複数の変換プロセスを組合せることにより、多様なテスト手順書自動作成システムを、簡便に実現するものである。 The test procedure manual automatic creation system according to the present invention defines a series of selection / conversion processes from functional requirements to test procedure documentation as an abstract type, and determines the processing order by a processing list. Therefore, the configuration / function can be rewritten by a simple method of editing an abstract type or a processing list. That is, a desired process can be realized without editing the program itself. Thus, a process for generating a procedure manual is arbitrarily configured, or various test procedure manual automatic creation systems can be easily realized by combining a plurality of conversion processes.
特に、手順書生成システムのうち、抽象化が容易な処理と、抽象化が困難な処理を分離することにより、テスト対象が異なっても再設計が必要な部分を最低限とすることができる。
上記実施の形態では、手順書生成部150dが実行する手順書生成処理は上位概念化が困難である。手順書生成処理は、因子の値に基づいて実際のテスト手順(操作)を示すテキストを生成しなければならないが、例えば携帯電話の操作と、テレビの操作は全く別物なので、この処理を抽象型によって上位概念化することは困難なためである。
一方、選択部150bが実行する選択処理と、変換部150cが実行する変換処理は、テスト観点にのみ依存し、テスト対象である個々の装置やシステムには依存しない。例えば、携帯電話とテレビには、状態遷移や競合表のような制御構造体があるが、これらは記号化(抽象化)が可能である。そのため抽象型を用いることにより、テスト対象である個々の装置やシステムには依存しない処理系を構成できる。この処理を抽象型によって上位概念化することによって、既存の成功した手順書生成システムやテンプレートを利用することができる。
即ち、本実施形態では、機種依存が強い処理である手順書生成処理(手順書生成部150dが実行する処理)をテスト対象に特化して記述し、機種依存が弱い処理(選択処理、変換処理)を抽象型により上位概念化することで、テスト手順書の効率的な生成を達成する。
In particular, by separating the easy-to-abstract process and the difficult-to-abstract process in the procedure manual generation system, the part that needs to be redesigned can be minimized even if the test object is different.
In the above embodiment, it is difficult to conceptualize the procedure manual generation process executed by the
On the other hand, the selection process executed by the
That is, in this embodiment, a procedure manual generation process (a process executed by the procedure
手順書生成装置1は、上記設定例に係る処理型(特に選択型・変換型)・データ型を、抽象度の度合いにより上位クラスから下位クラスに分割してテンプレートとして記憶部140に予め記憶している。このため、ユーザは上記の設定例に示したような処理系を、テンプレートを用いて容易に構築することができる。
The procedure
(変形例)
以上、本発明の実施形態について説明したが、本発明はその他の実施形態でも実現可能である。
(Modification)
As mentioned above, although embodiment of this invention was described, this invention is realizable also in other embodiment.
例えば、上記実施形態では、選択部と変換部はそれぞれ独立して処理をして、選択部の処理が全て終了した後に変換部が実行されることとした。しかし、これに限らず、選択部と変換部は連動して出力ワークメモリに記憶される内部データ(内部データDn)を生成して良い。
例えば、以下の構成が可能である。
選択部150bが、内部データD1上のデータ単位(セル等)を一つ注目単位する。そして、注目単位が、内部データDn上のどの部位に対応するか、対応表等を用いて選択する。対応部位が無い場合は次の注目単位を選択する。
一方、対応部位がある場合は、注目単位の情報を、対応先の情報(内部データDn上の座標)と共に変換部150cに伝達する。変換部150cは所定の変換規則で伝達された情報を変換して、対応部位に配置する。
For example, in the above-described embodiment, the selection unit and the conversion unit perform the processing independently, and the conversion unit is executed after the processing of the selection unit is completed. However, the present invention is not limited to this, and the selection unit and the conversion unit may generate internal data (internal data D n ) stored in the output work memory in conjunction with each other.
For example, the following configurations are possible.
The
On the other hand, when there is a corresponding part, information on the unit of interest is transmitted to the
その他、前記のハードウェア構成やフローチャートは一例であり、任意に変更および修正が可能である。 In addition, the hardware configuration and the flowchart described above are merely examples, and can be arbitrarily changed and modified.
情報処理部11、主記憶部12、外部記憶部13、などから構成される手順書生成のための処理を行う中心となる部分は、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。たとえば、前記の動作を実行するためのコンピュータプログラムを、コンピュータが読み取り可能な記録媒体(フレキシブルディスク、CD−ROM、DVD−ROMなど)に格納して配布し、前記コンピュータプログラムをコンピュータにインストールし、変更再構成画像生成のための処理を行う中心となる部分を構成してもよい。また、インターネットなどの通信ネットワーク上のサーバ装置が有する記憶装置に前記コンピュータプログラムを格納しておき、通常のコンピュータシステムがダウンロードなどすることで手順書生成装置を構成してもよい。
The central part that performs processing for generating a procedure manual composed of the
手順書生成装置の機能を、OS(オペレーティングシステム)とアプリケーションプログラムの分担、またはOSとアプリケーションプログラムとの協働により実現する場合などには、アプリケーションプログラム部分のみを記録媒体や記憶装置に格納してもよい。 When the function of the procedure manual generation device is realized by sharing of the OS (operating system) and application program, or by cooperation between the OS and application program, only the application program portion is stored in a recording medium or storage device. Also good.
また、搬送波にコンピュータプログラムを重畳し、通信ネットワークを介して配信することも可能である。たとえば、通信ネットワーク上の掲示板(BBS:Bulletin Board System)に前記コンピュータプログラムを掲示し、ネットワークを介して前記コンピュータプログラムを配信してもよい。そして、このコンピュータプログラムを起動し、OSの制御下で、他のアプリケーションプログラムと同様に実行することにより、前記の処理を実行できるように構成してもよい。 It is also possible to superimpose a computer program on a carrier wave and distribute it via a communication network. For example, the computer program may be posted on a bulletin board (BBS: Bulletin Board System) on a communication network, and the computer program may be distributed via the network. The computer program may be started and executed in the same manner as other application programs under the control of the OS, so that the above-described processing may be executed.
1…手順書生成装置
11…情報処理部
12…主記憶部
13…外部記憶部
14…操作部
15…表示部
16…入出力部
17…内部バス
18…プログラム
110…具象データ入力部
120…編集入力部
130…編集部
140…記憶部
1410…ワークメモリ
1410a、1410a1、1410a2…入力ワークメモリ
1410b、1410b1、1410b2…出力ワークメモリ
1420…リスト記憶部
1430…型記憶部
150…処理実行部
150a、150a1、150a2…内部データ生成部
150b、150b1、150b2…選択部
150c、150c1、150c2…変換部
150d…手順書生成部
1510…ロード部
1520…取得部
1530…生成部
1540…出力部
160…手順書出力部
170…表示部
210…処理リスト
220…抽象型
2201〜220n…内部データ型
220i…具象データ入力型
220o…手順書出力型
220a…内部データ生成型
220b…選択型
220c…変換型
220d…手順書生成型
220in…入力データ型
220out…出力データ型
Din…具象入力データ
D1〜Dn、D1a、D1b…内部データ
Dout…出力データ
Dc1〜Dc4、Dc2a、Dc2b、Dc3a、Dc3b…参照データ
DESCRIPTION OF
Claims (12)
テスト手順の情報を含む、前記元データ型に含まれるデータ型である入力型の入力データを取得する取得部と、
前記リスト記憶部が記憶する処理リストに記憶された処理を、当該処理の結果生成された前記生成データを後の処理の前記元データとして用いて、当該処理リストが定める順に実行して、前記取得部が取得した入力データからテスト手順書を生成する生成部と、
前記生成部が生成したテスト手順書を出力する出力部と、
を有することを特徴とする手順書生成装置。 Information indicating a process for generating generated data from original data, an original data type that is an abstract type of the original data to be processed, a method for generating the generated data from the original data, and the generated data A list storage unit that stores a processing list that is a list of processing information associated with a generated data type that is an abstract form of
An acquisition unit that acquires input data of an input type that is a data type included in the original data type, including information on a test procedure;
The processing stored in the processing list stored in the list storage unit is executed in the order determined by the processing list using the generated data generated as a result of the processing as the original data of the subsequent processing, and the acquisition is performed. A generation unit for generating a test procedure document from input data acquired by the unit;
An output unit for outputting the test procedure manual generated by the generation unit;
A procedure manual generation apparatus characterized by comprising:
ことを特徴とする請求項1に記載の手順書生成装置。 In the processing list stored in the list storage unit, the processing information is from processing that uses the input type input data as the original data to processing that uses the data type of the test procedure manual as the generated data type. Arranged so that the generated data type of the previous process becomes the original data type of the subsequent process,
The procedure manual generation apparatus according to claim 1.
前記リスト記憶部が記憶する処理リストの処理情報は前記型記憶部が記憶する処理型を示す情報であり、
前記処理リストの前記元データ型と、前記生成データ型はそれぞれ前記型記憶部が記憶する処理データ型である、
ことを特徴とする請求項1又は2に記載の手順書生成装置。 A processing data type that is an abstract type of data to be processed in the processing list, and a type storage unit that stores a processing type that is an abstract type of the processing;
The processing information of the processing list stored in the list storage unit is information indicating a processing type stored in the type storage unit,
The original data type and the generated data type of the processing list are processing data types stored in the type storage unit, respectively.
The procedure manual generation apparatus according to claim 1 or 2, characterized in that
前記テスト手順書には、前記テスト因子の水準値の組み合わせに対応する複数のテストの実行手順が記載され、
前記処理型は、前記元データに含まれる前記テスト因子、前記水準値、前記水準値の組み合わせ、の何れかに対応するテスト情報を抽出または削除して前記生成データを生成する選択処理の処理型と、当該テスト情報を変換して前記生成データを生成する変換処理の処理型を含む、
ことを特徴とする請求項3に記載の手順書生成装置。 In the input data, one or more test factors and one or more level values for the test factors are defined,
In the test procedure manual, a plurality of test execution procedures corresponding to combinations of the test factor level values are described,
The processing type is a processing type of selection processing for generating the generated data by extracting or deleting test information corresponding to any of the test factor, the level value, and the combination of the level values included in the original data And a processing type of conversion processing for converting the test information to generate the generated data,
The procedure manual generation apparatus according to claim 3, wherein:
前記処理型は前記選択処理の処理型及び前記変換処理の処理型と異なる、前記選択処理又は前記変換処理の結果生成された生成データから前記テスト手順書に含まれる説明する文字列を生成する文字列生成処理の処理型をさらに含む、
ことを特徴とする請求項4に記載の手順書生成装置。 The test execution procedure described in the test procedure manual includes at least one of a character string explaining the preliminary preparation of the test, a character string explaining the test operation procedure, and a character string explaining the test criterion. Including
The processing type is different from the processing type of the selection processing and the processing type of the conversion processing, and a character that generates a character string to be described included in the test procedure document from generated data generated as a result of the selection processing or the conversion processing Further includes the processing type of the column generation process,
The procedure manual generation device according to claim 4, wherein:
前記変更受付部が受け付けた情報に基づいて、前記処理型又は前記処理データ型を変更する型変更部と、
をさらに有することを特徴とする請求項5に記載の手順書生成装置。 A change accepting unit that accepts information instructing to change the processing type or the processing data type stored in the type storage unit;
A type changing unit that changes the processing type or the processing data type based on the information received by the change receiving unit;
The procedure manual generation apparatus according to claim 5, further comprising:
前記編集受付部が受け付けた処理リストの編集を指示する情報に基づいて、当該処理リストの処理情報を、前記選択処理と、前記変換処理と、前記文字列生成処理を組み合わせて編集する編集部と、
をさらに有することを特徴とする請求項6に記載の手順書生成装置。 An edit reception unit for receiving information instructing editing of the processing list;
An editing unit that edits the processing information of the processing list by combining the selection processing, the conversion processing, and the character string generation processing based on information that instructs editing of the processing list received by the editing reception unit. ,
The procedure manual generation apparatus according to claim 6, further comprising:
ことを特徴とする請求項3乃至7の何れか1項に記載の手順書生成装置。 The processing type or processing data type that is an abstract type stored by the type storage unit includes a parent type that is an original abstract type and a child type that inherits the characteristics of the parent type.
8. The procedure manual generation apparatus according to claim 3, wherein
前記生成部は、前記所定のドメイン固有言語によって記述された前記処理データ型又は前記処理型を解釈して前記処理を実行する、
ことを特徴とする請求項3乃至8の何れか1項に記載の手順書生成装置。 The processing data type or the processing type stored in the type storage unit is described in a predetermined domain specific language,
The generation unit interprets the processing data type or the processing type described in the predetermined domain specific language and executes the processing.
9. The procedure manual generation device according to claim 3, wherein
ことを特徴とする請求項1乃至9の何れか1項に記載の手順書生成装置。 The process list stored in the process list includes processes defined in the process information and defined to execute the process in a self-recursive manner.
The procedure manual generation device according to claim 1, wherein
テスト手順の情報を含む、前記元データ型に含まれるデータ型である入力型の入力データを取得し、
前記取得した処理リストに記憶された処理を、当該処理の結果生成された前記生成データを後の処理の前記元データとして用いて、当該処理リストが定める順に実行して、前記取得した入力データからテスト手順書を生成し、
前記生成したテスト手順書を出力する、
ことを特徴とする手順書生成方法。 Information indicating a process for generating generated data from original data, an original data type that is an abstract type of the original data to be processed, a method for generating the generated data from the original data, and the generated data Process list that is a list of process information that associates the generated data type that is an abstract form of
Obtaining input data of the input type that is the data type included in the original data type, including information on the test procedure,
The process stored in the acquired process list is executed in the order determined by the process list using the generated data generated as a result of the process as the original data of the subsequent process, from the acquired input data Generate a test procedure,
Outputting the generated test procedure manual;
A method for generating a procedure manual.
元データから生成データを生成する処理を示す情報であって、当該処理の対象となる元データの抽象型である元データ型と、当該元データから当該生成データを生成する方法と、当該生成データの抽象形である生成データ型を対応づけた処理情報のリストである処理リストを取得する機能、
テスト手順の情報を含む、前記元データ型に含まれるデータ型である入力型の入力データを取得する機能、
前記取得した処理リストに記憶された処理を、当該処理の結果生成された前記生成データを後の処理の前記元データとして用いて、当該処理リストが定める順に実行して、前記取得した入力データからテスト手順書を生成する機能、
前記生成したテスト手順書を出力する機能、
を実現させることを特徴とするプログラム。 On the computer,
Information indicating a process for generating generated data from original data, an original data type that is an abstract type of the original data to be processed, a method for generating the generated data from the original data, and the generated data A function that acquires a processing list that is a list of processing information that associates a generated data type that is an abstract form of
A function of acquiring input data of an input type that is a data type included in the original data type, including information of a test procedure;
The process stored in the acquired process list is executed in the order determined by the process list using the generated data generated as a result of the process as the original data of the subsequent process, from the acquired input data The ability to generate test procedures,
A function for outputting the generated test procedure;
A program characterized by realizing.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012172787A JP5901465B2 (en) | 2012-08-03 | 2012-08-03 | Procedure manual generation apparatus, procedure manual generation method and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012172787A JP5901465B2 (en) | 2012-08-03 | 2012-08-03 | Procedure manual generation apparatus, procedure manual generation method and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2014032535A JP2014032535A (en) | 2014-02-20 |
| JP5901465B2 true JP5901465B2 (en) | 2016-04-13 |
Family
ID=50282315
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2012172787A Expired - Fee Related JP5901465B2 (en) | 2012-08-03 | 2012-08-03 | Procedure manual generation apparatus, procedure manual generation method and program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP5901465B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP7686540B2 (en) | 2021-11-09 | 2025-06-02 | 株式会社東芝 | GENERATION DEVICE, GENERATION METHOD, AND PROGRAM |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH05158678A (en) * | 1991-12-06 | 1993-06-25 | Nec Corp | Test procedure document preparing system for replacement software |
| JP3464159B2 (en) * | 1998-01-30 | 2003-11-05 | 富士通株式会社 | Test specification creation device and storage medium storing the program |
| JP2002259160A (en) * | 2001-02-27 | 2002-09-13 | Ntt Comware Corp | Test item extraction system device, test item extraction method, recording medium storing test item extraction program, and test item extraction program |
| JP5120565B2 (en) * | 2009-02-20 | 2013-01-16 | 三菱自動車工業株式会社 | Software testing method |
-
2012
- 2012-08-03 JP JP2012172787A patent/JP5901465B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2014032535A (en) | 2014-02-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Pleuss et al. | Model-driven support for product line evolution on feature level | |
| CN105487864B (en) | Method and device for automatic code generation | |
| US9021440B1 (en) | System and method for automated test script generation | |
| US9465590B2 (en) | Code generation framework for application program interface for model | |
| JP5350428B2 (en) | Automatic program generation apparatus, method and computer program | |
| US20130097583A1 (en) | Systems and Methods For Automating the Application of a Software Methodology | |
| US20120041990A1 (en) | System and Method for Generating Dashboard Display in Software Applications | |
| EP3926465B1 (en) | Method and system for creating an app by merging source code | |
| US7644370B2 (en) | Method of componentisation of a graphically defined formula | |
| US12265949B2 (en) | Dynamically controlling case model structure using case fragments | |
| CN104317559A (en) | Visual modeling platform based on GMF | |
| Latsou et al. | A new methodology for automated Petri Net generation: Method application | |
| CN106815022A (en) | A kind of general UI interface creating methods and device based on tree data structure | |
| Atkinson et al. | Harmonizing textual and graphical visualizations of domain specific models | |
| JP2008225898A (en) | Conversion device, conversion program, and conversion method | |
| JP5901465B2 (en) | Procedure manual generation apparatus, procedure manual generation method and program | |
| Djukić et al. | Handling complex representations in visual modeling tools for MDSD/DSM by means of code generator languages | |
| US11188307B2 (en) | Modelizing resources and external data of a program for procedural language coding | |
| JP2010277572A (en) | Code generation program, computer-readable recording medium recording the same, code generation device, and code generation method | |
| Aguiar et al. | Patterns for effectively documenting frameworks | |
| Schröpfer et al. | A Generic Projectional Editor for EMF Models. | |
| CN113704257B (en) | Data table updating method and device | |
| KR101765324B1 (en) | Sources code generating apparatus using structured query language and diagram, and method for processing thereof | |
| Garmendia et al. | Modelling production system families with AutomationML | |
| Botterweck | Multi front-end engineering |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150317 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20151211 |
|
| 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: 20160209 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160308 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 5901465 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |