JP6264009B2 - Program, information processing apparatus and information processing method - Google Patents
Program, information processing apparatus and information processing method Download PDFInfo
- Publication number
- JP6264009B2 JP6264009B2 JP2013257435A JP2013257435A JP6264009B2 JP 6264009 B2 JP6264009 B2 JP 6264009B2 JP 2013257435 A JP2013257435 A JP 2013257435A JP 2013257435 A JP2013257435 A JP 2013257435A JP 6264009 B2 JP6264009 B2 JP 6264009B2
- Authority
- JP
- Japan
- Prior art keywords
- cpu
- data
- extracted
- data group
- row
- 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.)
- Active
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Description
本発明は、ソフトウェアが実行する処理のテストを行うプログラム、情報処理装置及び情報処理方法に関する。 The present invention relates to a program, an information processing apparatus, and an information processing method for testing a process executed by software.
データベースに格納されたデータを抽出条件に従って抽出する処理を行うソフトウェアのテストは、例えば、抽出条件それぞれについて、正常に抽出処理がなされた場合の抽出結果を予め保持しておき、テストの際に、正常な抽出結果の内容と、テスト時の抽出結果のデータ内容とを比較して、抽出処理が正常に行われたか否かを判定する技術が知られている(例えば、特許文献1、特許文献2)。
The software test that performs the process of extracting the data stored in the database according to the extraction condition, for example, for each extraction condition, holding the extraction result when the extraction process is normally performed in advance, A technique is known in which the content of a normal extraction result is compared with the data content of the extraction result at the time of the test to determine whether or not the extraction process has been performed normally (for example,
しかしながら、上記した技術では出力されたデータ毎にテスト結果の正当性の判定を行っているため、抽出されるデータベースのデータ容量の増大に伴って処理に要する時間が増加する。 However, in the above-described technique, the validity of the test result is determined for each output data, so that the time required for processing increases as the data capacity of the extracted database increases.
一つの側面では、本発明は、テスト結果の正当性の判定処理を短時間で行うことができるプログラム、情報処理装置及び情報処理方法を提供することにある。 In one aspect, the present invention provides a program, an information processing apparatus, and an information processing method capable of performing a test result validity determination process in a short time.
一態様のプログラムはデータベースからデータを抽出する処理を行う抽出プログラムにより抽出されたデータ群に対する処理を実行するプログラムであって、第1データ群から第1抽出条件で抽出した第2データ群と前記第1データ群とを併せたデータ群から第2抽出条件で抽出したデータの数を取得し、前記第1データ群から前記第2抽出条件により抽出されるべきデータの数と、前記第2データ群から前記第2抽出条件により抽出されるべきデータの数とを加えた数と、取得した前記データの数とが一致するか否かを判定する処理を情報処理装置に実行させる。 And an aspect of the program is a program for executing processing for data group extracted by the extraction program for performing processing for extracting data from a database, and a second data group extracted by the first extraction condition from the first data group The number of data extracted under the second extraction condition from the data group combined with the first data group is acquired, the number of data to be extracted from the first data group under the second extraction condition, and the second The information processing apparatus is caused to execute processing for determining whether or not the number obtained by adding the number of data to be extracted from the data group according to the second extraction condition matches the number of the acquired data.
一態様によれば、テスト結果の正当性の判定処理を短時間で行うことができる。 According to one aspect, it is possible to perform a test result validity determination process in a short time.
実施の形態1
図1は情報処理装置1のハードウェア群を示すブロック図である。情報処理装置1はソフトウェアに対して行われるテスト結果の正当性を確認するプログラムを実行するコンピュータであり、例えばパーソナルコンピュータ、サーバコンピュータ等である。図1に示す情報処理装置1は、CPU(Central Processing Unit)11、記憶部12、入力部13、出力部14を備える。
FIG. 1 is a block diagram illustrating a hardware group of the
CPU11は、バスを介してハードウェア各部と接続されている。CPU11は例えば一又は複数のCPU又はマルチコアCPU等を備える。CPU11は、記憶部12に記憶された制御プログラム12Pに従いハードウェアの各部を制御する。
The
記憶部12は、ROM(Read Only Memory)及びRAM(Random Access Memory)を備えている。ROMは例えばEEPROM(Electrically Erasable Programmable ROM)又はフラッシュメモリ等の不揮発性のメモリ素子である。またRAMはSRAM(Static Random Access Memory)又はDRAM(Dynamic Random Access Memory)等の揮発性メモリ素子で構成されている。記憶部12は、CPU11が処理を行う際に必要とする種々のデータ、CPU11が実行するプログラム12P、抽出処理を行う抽出プログラム13P及びデータテーブル12Tを格納する。データテーブル12Tは、情報処理装置1が処理に用いるために必要なデータを格納した複数のテーブルから構成されている。
The
入力部13はマウス、キーボード又はタッチパネル等の入力デバイスであり、受け付けた操作情報をCPU11へ出力する。出力部14は表示装置(図示せず)に表示させる画像データを出力する。
The
図2は各種データテーブルの一覧を示すブロック図である。データテーブル12Tは、ランダムテーブルT1、書き換えテーブルT2、ワークテーブルT3、件数テーブルT4、組み合わせテーブルT5、上書きテーブルT6、マスタテーブルT7、正解テーブルT8を備える。 FIG. 2 is a block diagram showing a list of various data tables. The data table 12T includes a random table T1, a rewrite table T2, a work table T3, a number table T4, a combination table T5, an overwrite table T6, a master table T7, and a correct answer table T8.
次に本実施の形態で用いられるデータテーブル12Tについて説明する。図3はランダムテーブルT1のデータ構造の一例を示す説明図である。ランダムテーブルT1はランダムな文字列を各欄に生成したテーブルである。ランダムテーブルT1はデータ項目1列、データ項目2列、データ項目3列等を備える。CPU11は予め記憶部12に記憶されたランダムテーブルT1の行数(NUM_R)、列数(NUM_L)、項目の最少文字数(MINI_L)、項目の最大文字数(MAX_L)等を含む各種設定データを読み込む。CPU11は各種設定データに基づいてランダムな文字列をランダムテーブルT1の各欄に生成することによりランダムテーブルT1を生成する(例えば特開2001−256076号公報参照)。なお、図3に示したランダムテーブルT1は行数を8、列数を3、項目の最少文字数を1、項目の最大文字数を10としたが、行数又は列数を例えば100万行以上としたテーブルを用いてもよい。
Next, the data table 12T used in the present embodiment will be described. FIG. 3 is an explanatory diagram showing an example of the data structure of the random table T1. The random table T1 is a table in which a random character string is generated in each column. The random table T1 includes one data item column, two data item columns, three data item columns, and the like. The
図4は書き換えテーブルT2のデータ構造の一例を示す説明図である。書き換えテーブルT2は抽出する文字列を記憶したテーブルである。書き換えテーブルT2はデータ項目1列、データ項目2列、データ項目3列等を備える。CPU11は書き換えデータの入力を受け付ける。CPU11は入力された書き換えデータから書き換えテーブルT2を生成する。なお、書き換えテーブルT2は予め記憶部12に記憶していてもよい。
FIG. 4 is an explanatory diagram showing an example of the data structure of the rewrite table T2. The rewrite table T2 is a table that stores character strings to be extracted. The rewrite table T2 includes a
図5はワークテーブルT3のデータ構造の一例を示す説明図である。ワークテーブルT3は書き換えテーブルT2から後述する上書きテーブルT6を生成するためのテーブルである。ワークテーブルT3はデータ項目1列、データ項目2列、データ項目3列等を備える。CPU11は生成したテーブルの各欄にランダムで書き換えテーブルT2の各列の行番号を対応づけたデータ群を生成し、生成したデータ群によりワークテーブルT3を生成する。
FIG. 5 is an explanatory diagram showing an example of the data structure of the work table T3. The work table T3 is a table for generating an overwrite table T6 described later from the rewrite table T2. The work table T3 includes a
なお、図5に示したワークテーブルT3は行数を5、列数を3、項目の最少文字数を1、項目の最大文字数を10としたが、行数又は列数を例えば10万行以上としたテーブルを用いてもよい。 In the work table T3 shown in FIG. 5, the number of rows is 5, the number of columns is 3, the minimum number of characters of the item is 1, and the maximum number of characters of the item is 10. However, the number of rows or columns is, for example, 100,000 rows or more. Alternatively, the table may be used.
図6は件数テーブルT4のデータ構造の一例を示す説明図である。件数テーブルT4はワークテーブルT3に書き換えテーブルT2の各列の行番号が記憶された回数を記憶するテーブルである。件数テーブルT4はデータ項目1列、データ項目2列、データ項目3列等を備える。CPU11はワークテーブルT3に書き換えテーブルT2の各列の行番号が記憶された回数を計数する。CPU11は計数した回数を要素毎に件数テーブルT4に記憶する。
FIG. 6 is an explanatory diagram showing an example of the data structure of the number table T4. The number table T4 is a table that stores the number of times the row number of each column of the rewrite table T2 is stored in the work table T3. The number table T4 includes a
具体的にはCPU11が件数テーブルT4を生成する処理の一例は以下の通りである。CPU11はワークテーブルT3の1列目の1行目及び1列目の4行目に「1」が記憶された場合、件数テーブルT4の1列目の1行目に「2」を記憶する。CPU11はワークテーブルT3の2列目の1行目に「1」が記憶された場合、件数テーブルT4の2列目の1行目に「1」を記憶する。CPU11はワークテーブルT3の3列目の1行目に「1」が記憶された場合、件数テーブルT4の3列目の1行目に「1」を記憶する。CPU11は以下同様の処理を各行に対して行う。
Specifically, an example of processing in which the
図7は組み合わせテーブルT5のデータ構造の一例を示す説明図である。組み合わせテーブルT5はデータ群に対応づけられた行番号の組み合わせを示す行番号組み合わせに関するデータを記憶したテーブルである。組み合わせテーブルT5は組み合わせ列、組み合わせ数列等を備える。組み合わせ列には書き換えテーブルT2の各列の行番号を組み合わせることにより行番号組み合わせが記憶される。組み合わせ数列にはワークテーブルT3に同一の行番号組み合わせが記憶された回数を示す組み合わせ数が記憶される。 FIG. 7 is an explanatory diagram showing an example of the data structure of the combination table T5. The combination table T5 is a table that stores data relating to line number combinations indicating combinations of line numbers associated with data groups. The combination table T5 includes a combination column, a combination number column, and the like. In the combination column, the row number combination is stored by combining the row numbers of the respective columns of the rewrite table T2. In the combination number column, the number of combinations indicating the number of times the same row number combination is stored in the work table T3 is stored.
CPU11は書き換え用テーブルT2及びワークテーブルT3を参照し、書き換えテーブルT2の行数を書き換えテーブルT2の列数個組み合わせることにより行番号組み合わせを生成する。CPU11は同一の行番号組み合わせの数を計数する。CPU11は計数した行番号組み合わせの数を組み合わせテーブルT5に記憶する。
The
具体的にはCPU11が組み合わせテーブルT5を生成する処理の一例は以下の通りである。CPU11は書き換え用テーブルT2及びワークテーブルT3を参照する。CPU11は「1,1,1」から「4,4,4」までの全ての組み合わせを組み合わせテーブルT5に記憶する。CPU11はワークテーブルT3から行番号組み合わせ「1,1,1」を計数する。CPU11は行番号組み合わせ「1,1,1」がワークテーブルT3の1行目に記憶された行番号組み合わせを計数し、組み合わせ数列の1行目に「1」を記憶する。CPU11はワークテーブルT3から行番号組み合わせ「2,1,1」を計数する。CPU11は行番号組み合わせ「2,1,1」がワークテーブルT3の各行に記憶されていないと判定し、組み合わせ数列の2行目に「0」を記憶する。CPU11は以下同様の処理を「4,4,4」まで行う。
Specifically, an example of processing in which the
図8は上書きテーブルT6のデータ構造の一例を示す説明図である。上書きテーブルT6はランダムテーブルT1に上書きするためのテーブルである。上書きテーブルT6はデータ項目1列、データ項目2列、データ項目3列等を備える。CPU11はワークテーブルT3に対応づけられた書き換えテーブルT2の各列の行番号に書き換えテーブルT2の各要素を割り振ることにより、上書きテーブルT6を生成する。
FIG. 8 is an explanatory diagram showing an example of the data structure of the overwrite table T6. The overwrite table T6 is a table for overwriting the random table T1. The overwrite table T6 includes a
具体的にはCPU11が組み合わせテーブルT5を生成する処理の一例は以下の通りである。CPU11はワークテーブルT3の1列目の1行目に「1」が記憶されていた場合、書き換えテーブルT2の1列目の1行目の「aaa」を上書きテーブルT6の1列目の1行目に記憶する。CPU11はワークテーブルT3の2列目の1行目に「1」が記憶されていた場合、書き換えテーブルT2の2列目の1行目の「アイウ」を上書きテーブルT6の2列目の1行目に記憶する。CPU11はワークテーブルT3の3列目の1行目に「1」が記憶されていた場合、書き換えテーブルT2の3列目の1行目の「ナポレオン」を上書きテーブルT6の3列目の1行目に記憶する。CPU11は以下同様の処理を各行に対して行う。
Specifically, an example of processing in which the
図9はマスタテーブルT7のデータ構造の一例を示す説明図である。マスタテーブルT7はランダムテーブルT1に上書きテーブルT6を上書きしたデータ群を記憶したテーブルである。マスタテーブルT7はデータ項目1列、データ項目2列、データ項目3列等を備える。CPU11はランダムテーブルT1にランダムで上書きテーブルT6の各行を上書きすることによりマスタテーブルT7を生成する。なお、CPU11はランダムテーブルT1に上書きテーブルT6の各行をそのままの配列で上書きすることによりマスタテーブルT7を生成してもよい。
FIG. 9 is an explanatory diagram showing an example of the data structure of the master table T7. The master table T7 is a table that stores a data group in which the overwrite table T6 is overwritten on the random table T1. The master table T7 includes a
図10は正解テーブルT8のデータ構造の一例を示す説明図である。正解テーブルT8は抽出プログラム13Pにより抽出する要素に関連するデータを記憶したテーブルである。正解テーブルT8は予め記憶部12に記憶されている。正解テーブルT8はテスト番号列、タイプ列、検索列、正解列番号列、正解行番号列、組み合わせ列、抽出数列、テスト番号総数列等を備える。
FIG. 10 is an explanatory diagram showing an example of the data structure of the correct answer table T8. The correct answer table T8 is a table storing data related to elements extracted by the
テスト番号列にはCPU11がテストを行う順番を示すテスト番号が記憶されている。タイプ列には抽出プログラム13PによりCPU11が行う検索の第1抽出条件又は第2抽出条件等の抽出条件が記憶されている。第1抽出条件とはテスト番号に対応づけられた検索の抽出条件である。第2抽出条件とは第1抽出条件に対応づけられたテスト番号の次に行われる検索の抽出条件である。検索の抽出条件とは例えばA1、A2、B等である。A1はデータ群に含まれる文字列と抽出する文字列とが一致することを条件とする。A2はデータ群に含まれる文字列の一部と抽出する文字列とが一致することを条件とする。Bはデータ群に含まれる文字列の組み合わせと抽出する文字列の組み合わせとが一致することを条件とする。
The test number column stores a test number indicating the order in which the
検索列には抽出プログラム13PによりCPU11が検索する文字列を示す検索文字列が記憶されている。検索文字列には例えば「アイウエ」、「aaa,アイウ,ナポレオン」等が記憶される。正解列番号列にはデータ群から抽出条件により抽出される抽出データ群の抽出列番号が予め記憶される。抽出列番号とはデータ群から抽出条件により抽出される抽出データ群の列番号である。正解行番号列には第1、第2データ群等の抽出データ群の行番号が予め記憶される。第1データ群とはデータ群から第1抽出条件により抽出される文字列又は文字列の組み合わせである。第2データ群とはデータ群から第2抽出条件により抽出される文字列又は文字列の組み合わせである。組み合わせ列には抽出プログラム13PによりCPU11が抽出する行番号組み合わせが予め記憶される。抽出数列には抽出プログラム13PによりCPU11が抽出する行数を示す抽出行数が予め記憶される。テスト番号総数列にはテスト番号の総数が予め記憶される。
In the search string, a search character string indicating a character string searched by the
CPU11は前記データ群から前記第2抽出条件により抽出されるべき第1推定データ群の数と、前記第1データ群から前記第2抽出条件により抽出されるべき第2推定データ群の数とを加えた加算データ群の数を推定する。具体的にはCPU11は記憶部12に予め記憶された第1推定データ群及び第2データ群の行番号とデータ群の行番号とが一致した数を計数することにより加算データ群を推定する。CPU11は正解テーブルT8、ワークテーブルT3及び組み合わせテーブルT5に基づいて推定した抽出データ群の数を示す正解行数をSEIKAI()に記憶する。SEIKAI()は正解行数を保存する配列であり、配列のインデックスにはテスト番号が格納される。すなわちSEIKAI()には推定された第1データ群、第2データ群の数が記憶される。
The
図11はテスト結果判定処理を行ったマスタテーブルT7の一例を示す説明図である。以下に、CPU11が行うテスト結果判定処理を図11を参照しながら説明する。
FIG. 11 is an explanatory diagram showing an example of the master table T7 subjected to the test result determination process. The test result determination process performed by the
図11Aはテスト番号が1のテスト結果判定処理を行ったマスタテーブルT7を示す説明図である。図11Aに示すように、マスタテーブルT7をタイプA2により検索文字列「アイウエ」で検索する。CPU11はマスタテーブルT7の6行目及び8行目から「アイウエ」を抽出する。CPU11は抽出した行数を抽出件数(1)に記憶する。抽出件数()は抽出した行数を保存する配列であり、配列のインデックスにはテスト番号が格納される。
FIG. 11A is an explanatory diagram showing a master table T7 that has undergone a test result determination process with a test number of 1. As shown in FIG. 11A, the master table T7 is searched with the search character string “Aiue” using type A2. The
CPU11は抽出件数(1)とSEIKAI(1)とが一致したか否かを判定する。CPU11は抽出件数(1)とSEIKAI(1)とが一致しなかった場合、実施したテストに正当性があるか否かを示す判定(1)にNGを記憶する。判定()の引数は抽出件数を示す。NGは実施したテストに正当性がないことを示す。CPU11は抽出件数(1)とSEIKAI(1)とが一致した場合、判定(1)にOKを記憶する。OKは実施したテストに正当性があることを示す。CPU11は抽出件数(1)とSEIKAI(1)とが一致し、判定(1)にOKを記憶する。
The
CPU11はマスタテーブルT7の6行目に記憶された「ccc」、「アイウエオ」、「エメルソン」をマスタテーブルT7の9行目に追加する。CPU11はマスタテーブルT7の8行目に記憶された「abaa」、「カキクアイウエ」、「ポンテ」をマスタテーブルT7の10行目に追加する。
The
図11Bはテスト番号が2のテスト結果判定処理を行ったマスタテーブルT7を示す説明図である。図11Bに示すように、CPU11はマスタテーブルT7をタイプA1により検索文字列「アイウ」を検索する。CPU11はマスタテーブルT7の8行目から「カキクアイウエ」を誤って抽出する。CPU11は行数1を抽出件数(2)に記憶する。CPU11は抽出件数(2)とSEIKAI(2)とが一致し、判定(2)にOKを記憶する。
FIG. 11B is an explanatory diagram showing a master table T7 that has undergone a test result determination process with a test number of 2. As shown in FIG. 11B, the
CPU11はマスタテーブルT7の8行目に記憶された「abaa」、「カキクアイウエ」、「ポンテ」をマスタテーブルT7の11行目に追加する。
The
図11Cはテスト番号が3のテスト結果判定処理を行ったマスタテーブルT7を示す説明図である。図11Cに示すように、CPU11はマスタテーブルT7をタイプBにより検索文字列「aaa,アイウ,ナポレオン」を検索する。CPU11はマスタテーブルT7の2行目から「aaa」、「アイウ」、「ナポレオン」を抽出する。CPU11は抽出した行数2を抽出件数(3)に記憶する。CPU11は抽出件数(3)とSEIKAI(3)とが一致せず、判定(3)にNGを記憶する。CPU11はマスタテーブルT7の2行目に記憶された「aaa」、「アイウ」、「ナポレオン」をマスタテーブルT7の12行目に追加する。
FIG. 11C is an explanatory diagram showing the master table T7 on which the test result determination process with the
図12はCPU11の処理手順を示すフローチャートである。CPU11はランダムテーブルT1及びワークテーブルT3等の各種設定データを設定する(ステップS1)。具体的にはCPU11はNUM_R、NUM_L、MINI_L、MAX_L等の設定データを設定する。
FIG. 12 is a flowchart showing the processing procedure of the
CPU11は書き換えデータの入力を受け付ける(ステップS2)。CPU11は入力した書き換えデータから書き換えテーブルT2を生成する(ステップS3)。CPU11はテストデータ生成処理を行う(ステップS4)。CPU11は正解件数生成処理を行う(ステップS5)。CPU11はテスト結果判定処理を行い(ステップS6)、処理を終了する。
The
図13〜図16はテストデータ生成処理の手順の一例を示すフローチャートである。CPU11は各種設定データを読み込む(ステップS11)。具体的にはCPU11はNUM_R、NUM_L、MINI_L、MAX_L等の設定データを読み込む。CPU11は各種設定データに基づいてランダムな文字列をランダムテーブルT1の各欄に生成することによりランダムテーブルT1を生成する(ステップS12)。
13 to 16 are flowcharts showing an example of the procedure of the test data generation process. The
CPU11は書き換えテーブルT2を読み込む(ステップS13)。書き換えデータをSOURCE(i,j)に記憶する(ステップS14)。SOURCE()は書き換えデータを保存した配列である。ループ変数iは行番号を格納する配列のインデックスとして用いられる。ループ変数jは列番号を格納する配列のインデックスとして用いられる。
The
CPU11は書き換えテーブルT2における列毎の行番号の総数をN(j)に記憶する(ステップS15)。N(j)は書き換えデータの列毎における行番号の総数を保存した配列である。CPU11は1〜N(j)の数字をWORK(i,j)のj列毎にランダムで記憶する(ステップS16)。WORK()はデータ群であり、書き換えデータの行番号を保存する配列である。CPU11はWORK(i,j)をワークテーブルT3に記憶する(ステップS17)。
The
CPU11はワークテーブルT3を参照し、ワークテーブルT3に書き換えテーブルT2の各列の行番号が記憶された回数を計数する(ステップS18)。CPU11は計数した回数を件数テーブルT4に記憶する(ステップS19)。
The
CPU11はループ変数iを1に設定する(ステップS20)。CPU11はループ変数jを1に設定する(ステップS21)。CPU11は書き換えデータの行番号を保存する変数LにWORK(i,j)の値を記憶する(ステップS22)。CPU11はBASEDATA(i,j)にSOURCE(L,j)を記憶する(ステップS23)。BASEDATA()は上書きデータを保存する配列である。すなわち、CPU11は上書きテーブルT6のi行のj列に書き換えテーブルT2のL行のj列に記憶された要素を記憶する。
The
CPU11はループ変数jを1増加させる(ステップS24)。CPU11はループ変数jがNUM_Rを超えたか否かを判定する(ステップS25)。CPU11はループ変数jがNUM_Rを超えなかったと判定した場合(ステップS25:NO)、ステップS22に戻り、処理を続ける。CPU11はループ変数jがNUM_Rを超えたと判定した場合(ステップS25:YES)、ループ変数iを1増加させる(ステップS26)。CPU11はループ変数iがNUM_Dを超えたか否かを判定する(ステップS27)。CPU11はループ変数iがNUM_Dを超えなかったと判定した場合(ステップS27:NO)、ステップS21に戻り、処理を続ける。
The
CPU11はループ変数iがNUM_Dを超えたと判定した場合(ステップS27:YES)、ワークテーブルT3を参照し、書き換えテーブルT2の行数を書き換えテーブルT2の列数個掛け合わせた組み合わせ総数を計数する(ステップS28)。具体的には以下の式により組み合わせ総数を計数する。
NUM=N(1)×N(2)×……×N(NUM_R)
When the
NUM = N (1) × N (2) × ...... × N (NUM_R)
CPU11は計数した組み合わせ総数を正解テーブルT8に記憶する(ステップS29)。CPU11は書き換えテーブルT2に基づいて行番号組み合わせを生成する(ステップS30)。具体的にはCPU11は書き換えテーブルT2の行数を書き換えテーブルT2の列数個組み合わせることにより行番号組み合わせを生成する。CPU11は生成した行番号組み合わせを組み合わせ番号L(i)及び組み合わせテーブルT5に記憶する(ステップS31)。組み合わせ番号L()は行番号組み合わせを保存する配列である。CPU11はワークテーブルT3に組み合わせ番号L(i)に記憶した同一の行番号組み合わせの数を計数する(ステップS32)。CPU11は計数した同一の行番号組み合わせの数を変数SU及び組み合わせテーブルT5に記憶する(ステップS33)。変数SUは計数した同一の行番号組み合わせの数を記憶する変数である。
The
CPU11はワークテーブルT3からNUM_D個の行番号をランダムに抽出する(ステップS34)。CPU11は抽出した値をLINE_O(i)に記憶する(ステップS35)。LINE_O()はランダムに抽出した行番号を保存した配列である。
The
CPU11はループ変数iを1に設定する(ステップS36)。CPU11は変数LにLINE_O(i)の値を記憶する(ステップS37)。変数Lはランダムに抽出した行番号を保存する変数である。CPU11はループ変数jを1に設定する(ステップS38)。CPU11はDATA(L,j)にBASEDATA(i,j)を記憶する(ステップS39)。DATA()はマスタテーブルT7に保存する配列である。すなわち、CPU11はマスタテーブルT7のL行j列に上書きテーブルT6のi行j列の要素を記憶する。
The
CPU11はループ変数jを1増加させる(ステップS40)。CPU11はループ変数jがNUM_Rを超えているか否かを判定する(ステップS41)。CPU11はループ変数jがNUM_Rを超えていないと判定した場合(ステップS41:NO)、ステップS39に戻り、処理を続ける。CPU11はループ変数jがNUM_Rを超えていると判定した場合(ステップS41:YES)、ループ変数iを1増加させる(ステップS42)。CPU11はループ変数iがNUM_Dを超えているか否かを判定する(ステップS43)。CPU11はループ変数iがNUM_Dを超えていないと判定した場合(ステップS43:NO)、ステップS37に戻り、処理を続ける。CPU11はループ変数iがNUM_Dを超えていると判定した場合(ステップS43:YES)、テストデータ生成処理を終了し、処理を正解行数生成処理に移す。
The
図17〜図20は正解行数生成処理の手順の一例を示すフローチャートである。CPU11はHIT(a,i)を0に初期化する(ステップS51)。HIT()はCPU11がテスト番号を示す変数であるループ変数aにおいて書き換えテーブルT2から行番号iの要素が抽出されるか否かを記憶する配列である。すなわちHIT()はデータ群からループ変数aに対応づけられた抽出条件により行番号iの抽出データ群が抽出されるか否かを記憶している。例えばHIT(a,i)が1であった場合、テスト番号aに対応づけられた抽出条件により行番号iの要素をマスタテーブルT7から抽出することを意味する。あるいはHIT(a,i)が0であった場合、テスト番号aに対応づけられた抽出条件により行番号iの要素をマスタテーブルT7から抽出しないことを意味する。
17 to 20 are flowcharts showing an example of the procedure of the correct answer line number generation process. The
CPU11は正解テーブルT8を読み込む(ステップS52)。CPU11はループ変数aを1に設定する(ステップS53)。CPU11は組み合わせテーブルT5を読み込む(ステップS54)。
The
CPU11は正解テーブルT8におけるタイプ列のa行目がA1であるか否かを判定する(ステップS55)。CPU11はタイプ列のa行目がA1であると判定した場合(ステップS55:YES)、正解テーブルT8における正解行番号列のa行目を変数Mに記憶する(ステップS56)。変数Mは記憶部12に予め記憶された抽出データ群の行番号を保存する変数である。CPU11は正解テーブルT8における正解列番号列のa行目を変数rに記憶する(ステップS57)。変数rは記憶部12に予め記憶された抽出データ群の列番号を保存する変数である。CPU11は検索した回数を示すループ変数iを1に設定する(ステップS58)。CPU11はWORK(i,r)が変数Mであるか否かを判定する(ステップS59)。すなわちCPU11は記憶部12に予め記憶された抽出データ群の行番号とデータ群の行番号とが一致するか否かを判定する
The
CPU11はWORK(i,r)が変数Mでないと判定した場合(ステップS59:NO)、CPU11はループ変数iを1増加させ、(ステップS60)、ステップS59に戻り、処理を続ける。CPU11はWORK(i,r)が変数Mであると判定した場合(ステップS59:YES)、HIT(a,i)に1を記憶させる(ステップS61)。CPU11はHIT_SU(i)に組み合わせ数SUを記憶し(ステップS62)、処理をステップS80に移す。HIT_SU()は組み合わせテーブルT5に記憶した同一の行番号組み合わせの数を保存する配列である。
If the
CPU11は正解テーブルT8におけるタイプ列のa行目がA1でないと判定した場合(ステップS55:NO)、正解テーブルT8におけるタイプ列のa行目がA2であるか否かを判定する(ステップS63)。正解テーブルT8における正解行番号列のa行目をLINE(j)に記憶する(ステップS64)。LINE()は抽出する行番号を保存する配列である。CPU11は正解テーブルT8における正解列番号列のa行目を変数rに記憶する(ステップS65)。CPU11はループ変数jを1に設定する(ステップS66)。
When the
CPU11はループ変数iを1に設定する(ステップS67)。CPU11はWORK(i,r)がLINE(j)と同一であるか否かを判定する(ステップS68)。すなわちCPU11は書き換えデータのi行のr列に保存された行番号がj列において抽出する行番号と一致するか否かを判定する。CPU11はWORK(i,r) がLINE(j)と同一でない判定した場合(ステップS68:NO)、CPU11はループ変数iを1増加させ、(ステップS69)、ステップS68に戻り、処理を続ける。CPU11はWORK(i,r)がLINE(j)と同一であると判定した場合(ステップS68:YES)、HIT(a,i)に1を記憶させる(ステップS70)。すなわちHIT()はデータ群からループ変数aに対応づけられた抽出条件により行番号iの抽出データ群が抽出されるか否かを記憶している。CPU11はHIT_SU(i)に組み合わせ数SUを記憶する(ステップS71)。すなわちCPU11は計数した行番号iの同一の行番号組み合わせを抽出データ群(第1データ群)の数としてHIT_SU(i)に記憶する。
The
CPU11はループ変数jを1増加させる(ステップS72)。CPU11はループ変数jがNUM_Rを超えたか否かを判定する(ステップS73)。CPU11はループ変数jがNUM_Rを超えなかったと判定した場合(ステップS73:NO)、ステップS67に戻り、処理を続ける。CPU11はループ変数jがNUM_Rを超えたと判定した場合(ステップS73:YES)、処理をステップS80に移す。
The
CPU11は正解テーブルT8におけるタイプ列のa行目がA2でないと判定した場合(ステップS63:NO)、抽出する行番号組み合わせをROW(1,2……NUM_R)に記憶する(ステップS74)。ROW()は行番号組み合わせを保存する配列であり、配列のインデックスには列番号が格納される。ROW(1,2……NUM_R)には例えば(1,1,1)等が保存される。CPU11はループ変数iを1に設定する(ステップS75)。CPU11はWORK(i,1,2……NUM_R)がROW(1、2……NUM_R)と同一であるか否かを判定する(ステップS76)。すなわち、CPU11は書き換えデータのi行に保存された行番号組み合わせが抽出する行番号組み合わせと一致するか否かを判定する。
When the
CPU11はWORK(i,1,2……NUM_R)がROW(1,2……NUM_R)と同一でないと判定した場合(ステップS76:NO)、CPU11はループ変数iを1増加させ(ステップS77)、ステップS76に戻り、処理を続ける。CPU11はWORK(i,1,2……NUM_R)がROW(1,2……NUM_R)であると判定した場合(ステップS76:YES)、HIT(a,i)に1を記憶させる(ステップS78)。CPU11はHIT_SU(i)に組み合わせ数SUを記憶し(ステップS79)、処理をステップS80に移す。
When the
CPU11はループ変数aを1増加させる(ステップS80)。CPU11はループ変数aが正解テーブルT8に記憶されたテスト番号総数を示すTEST_NUMを超えたか否かを判定する(ステップS81)。CPU11はループ変数aがTEST_NUMを超えなかったと判定した場合(ステップS81:NO)、処理をステップS54に移す。CPU11はループ変数aがTEST_NUMを超えたと判定した場合(ステップS81:YES)、ループ変数iを1に設定する(ステップS82)。CPU11はループ変数aを1に設定する(ステップS83)。
The
CPU11は書き換えテーブルT2から抽出する行数を示す抽出回数WLを0に設定する(ステップS84)。抽出回数WLはCPU11が行番号iの抽出データ群(第1データ群)を抽出した回数を示す。CPU11はHIT(a,i)が1であるか否かを判定する(ステップS85)。CPU11はHIT(a,i)が1であると判定した場合(ステップS85:YES)、抽出回数WLを1増加させ(ステップS86)、処理をステップS87に移す。すなわちCPU11はHIT(a,i)が1であるか否かを判定し、HIT(a,i)が1であると判定した場合、抽出回数WLを増加させることにより、記憶部12に記憶された抽出データ群(第1データ群)の行番号と一致したデータ群の行番号の数を計数する。CPU11はHIT(a,i)が1でないと判定した場合(ステップS85:NO)、CPU11はループ変数aを1増加させる(ステップS87)。HIT_SUM(a,i)にHIT_SU(i)×抽出回数WLを記憶する(ステップS88)。HIT_SUM()はデータ群から抽出される抽出データ群の数を保存する配列である。すなわちCPU11は抽出データ群(第1データ群)を抽出した回数に同一の行番号組み合わせを乗算することにより、計数したデータ群の行番号の数と記憶部12に記憶された第1データ群の行番号と一致した行番号の数との和を計数する。CPU11はループ変数aがTEST_NUMを超えたか否かを判定する(ステップS89)。
The
CPU11はループ変数aがTEST_NUMを超えなかったと判定した場合(ステップS89:NO)、処理をステップS85に移す。CPU11はループ変数aがTEST_NUMを超えたと判定した場合(ステップS89:YES)、CPU11はループ変数iを1増加させる(ステップS90)。CPU11はiが組み合わせ総数を超えたか否かを判定する(ステップS91)。CPU11はiがNUM_Dを超えなかったと判定した場合(ステップS91:NO)、処理をステップS83に移す。CPU11はiが組み合わせ総数を超えたと判定した場合(ステップS91:YES)、ループ変数aを1に設定する(ステップS92)。
If the
CPU11はループ変数iを1に設定する(ステップS93)。CPU11はマスタテーブルT7からテスト番号毎に推定した抽出行数を示す正解行番号数WKを0に設定する(ステップS94)。CPU11は正解行番号数WKにHIT_SUM(a,i)を追加する(ステップS95)。すなわちCPU11は推定した夫々の抽出データ群の和を計数する。CPU11はループ変数iを1増加させる(ステップS96)。CPU11はループ変数iが組み合わせ総数を超えたか否かを判定する(ステップS97)。CPU11はループ変数iが組み合わせ総数を超えなかったと判定した場合(ステップS97:NO)、処理をステップS95に移す。CPU11はループ変数iが組み合わせ総数を超えたと判定した場合(ステップS97:YES)、CPU11はSEIKAI(a)に正解行番号数WKを記憶する(ステップS98)。
The
CPU11はループ変数aを1増加させる(ステップS99)。CPU11はループ変数aがTEST_NUMを超えたか否かを判定する(ステップS100)。CPU11はループ変数aがTEST_NUMを超えなかったと判定した場合(ステップS100:NO)、処理をステップS93に移す。CPU11はループ変数aがTEST_NUMを超えたと判定した場合(ステップS100:YES)、正解行数生成処理を終了し処理をテスト結果判定処理に移す。
The
図21〜図22はテスト結果判定処理の手順の一例を示すフローチャートである。CPU11はループ変数aを1に設定する(ステップS111)。CPU11は正解テーブルT8を読み込み、抽出プログラム13Pによりテスト項目(a)に基づいて行番号及び行数を抽出(取得)する(ステップS112)。テスト項目()はテスト番号aに対応づけられた抽出条件を保存した配列である。すなわち、CPU11は抽出プログラム13PによりマスタテーブルT7のデータ群からテスト番号aに対応づけられた第1抽出条件により第1データ群を抽出する。
21 to 22 are flowcharts showing an example of the procedure of the test result determination process. The
CPU11は抽出した行数を抽出件数(a)に記憶する(ステップS113)。CPU11は抽出件数(a)とSEIKAI(a)とが同一であるか否かを判定する(ステップS114)。すなわち、CPU11は抽出したデータ群の数と、推定したデータ群の数の和とを比較する抽出した行数と正解行数とを比較することにより同一であるか否かを判定する。CPU11は抽出件数(a)とSEIKAI(a)とが同一でないと判定した場合(ステップS114:NO)、判定(a)にNGを記憶する(ステップS115)。CPU11はテスト番号Kにループ変数aを記憶し(ステップS116)、処理を終了する。
The
CPU11は抽出件数(a)とSEIKAI(a)とが同一であると判定した場合(ステップS114:YES)、判定(a)にOKを記憶する(ステップS117)。マスタテーブルT7の最後の行に抽出した行番号の要素を追加する(ステップS118)。CPU11は正解テーブルT8を読み込み、テスト項目(a+1)に基づいて行番号及び行数を抽出する(ステップS119)。すなわち、CPU11はマスタテーブルT7のデータ群からテスト番号a+1に対応づけられた第2抽出条件により第2データ群を抽出する。
If the
CPU11は抽出した行数を抽出件数(a+1)に記憶する(ステップS120)。CPU11は抽出件数(a+1)とSEIKAI(a+1)とが同一であるか否かを判定する(ステップS121)。すなわち、CPU11は抽出した第2データ群の数と、推定した第1推定データ群及び第2推定データ群の数を加算した加算データ群と一致したか否かを判定する。CPU11は抽出件数(a+1)とSEIKAI(a+1)とが同一でないと判定した場合(ステップS121:NO)、判定(a+1)にNGを記憶する(ステップS122)。CPU11はテスト番号K+1にループ変数a+1を記憶し(ステップS123)、処理を終了する。
The
CPU11は抽出件数(a+1)とSEIKAI(a+1)とが同一であると判定した場合(S121:YES)、判定(a+1)にOKを記憶する(ステップS124)。CPU11はループ変数aを1増加させる(ステップS125)。CPU11はループ変数aがTEST_NUMを超えたか否かを判定する(ステップS126)。CPU11はループ変数aがTEST_NUMを超えなかったと判定した場合(ステップS126:NO)、処理をステップS118に移す。CPU11はループ変数aがTEST_NUMを超えたと判定した場合(ステップS126:YES)、テスト結果判定処理を終了し、処理を終了する。
If the
本実施の形態ではCPU11がワークテーブルT3から抽出した行数と正解行数とが同一であるか否かを判定することにより、テスト結果の正当性の判定処理を短時間で行うことができる。
In the present embodiment, by determining whether or not the number of lines extracted from the work table T3 by the
本実施の形態ではCPU11がWORK(i,r)が変数Mであるか否かを判定する、このことにより、文字列が一致するか否かによりテスト結果の正当性の判定処理を行うことができる。
In the present embodiment, the
本実施の形態ではCPU11がWORK(i,r)がLINE(j)と同一であるか否かを判定する。このことにより文字列の一部が一致するか否かによりテスト結果の正当性の判定処理を行うことができる。
In this embodiment, the
本実施の形態ではCPU11はWORK(i,(1,2……NUM_R))がROW(1、2……NUM_R)と同一であるか否かを判定する。このことにより文字列の組み合わせが一致するか否かによりテスト結果の正当性の判定処理を行うことができる。
In this embodiment, the
実施の形態2
以下本発明の実施の形態2をその実施の形態を示す図面に基づいて詳述する。図23は実施の形態2に係る各種データテーブルの一覧を示すブロック図である。以下、特に説明する構成、作用以外の構成及び作用は実施の形態1と同等であり、簡潔のため記載を省略する。データテーブル12Tはさらに展開テーブルT9を備える。
Hereinafter, a second embodiment of the present invention will be described in detail with reference to the drawings showing the embodiment. FIG. 23 is a block diagram showing a list of various data tables according to the second embodiment. In the following, the configuration and operation other than those specifically described are the same as those of the first embodiment, and the description is omitted for the sake of brevity. The data table 12T further includes a development table T9.
図24は展開テーブルT9のデータ構造の一例を示す説明図である。展開テーブルT9は組み合わせテーブルT5における各行の要素の組み合わせを記憶したテーブルである。展開テーブルT9はデータ項目1列、データ項目2列、データ項目3列等を備える。CPU11は書き換えテーブルT2及び組み合わせテーブルT5に基づいて各行の要素の組み合わせを示す展開データを生成する。CPU11は生成した展開データを展開テーブルT9に記憶することにより展開テーブルT9を生成する。
FIG. 24 is an explanatory diagram showing an example of the data structure of the expansion table T9. The expansion table T9 is a table that stores combinations of elements in each row in the combination table T5. The expansion table T9 includes a
具体的にはCPU11が展開テーブルT9を生成する処理の一例は以下の通りである。CPU11は組み合わせテーブルT5の1列目の1行目に1が記憶されていた場合、書き換えテーブルT2の1列目の1行目に「aaa」が記憶されているので、展開テーブルT9の1列目の1行目に「aaa」を記憶する。CPU11は組み合わせテーブルT5の2列目の1行目に1が記憶されていた場合、書き換えテーブルT2の2列目の1行目に「アイウ」が記憶されているので、展開テーブルT9の2列目の1行目に「アイウ」を記憶する。CPU11は組み合わせテーブルT5の3列目の1行目に1が記憶されていた場合、書き換えテーブルT2の3列目の1行目に「ナポレオン」が記憶されているので、展開テーブルT9の3列目の1行目に「ナポレオン」を記憶する。CPU11は以下同様の処理を各行に対して行う。
Specifically, an example of processing in which the
図25は実施の形態2に係るCPU11の処理手順の一例を示すフローチャートである。ステップS7及びステップS8以外の処理は上述の実施の形態1に係るCPU11の処理手順と同様であるので、簡潔のため説明を省略する。
FIG. 25 is a flowchart illustrating an example of a processing procedure of the
CPU11はステップS6の処理を終了した後、展開テーブル生成処理を行う(ステップS7)。CPU11は障害箇所特定処理を行い(ステップS8)、処理を終了する。
After completing the process in step S6, the
図26は展開テーブル生成処理の手順の一例を示すフローチャートである。CPU11は組み合わせテーブルT5を読み込む(ステップS131)。CPU11は書き換えテーブルT2を読み込む(ステップS132)。CPU11は書き換えテーブルT2及び組み合わせテーブルT5に基づいて各行の要素の組み合わせを示す展開データを生成する(ステップS133)。具体的にはCPU11は組み合わせテーブルT5の各列の行番号に書き換えテーブルT2の各列の行番号に対応した各要素を記憶させることにより展開データを生成する。CPU11は生成した展開データを展開テーブルT9に記憶する(ステップS134)。
FIG. 26 is a flowchart illustrating an example of the procedure of the development table generation process. The
図27はCPUが行う障害箇所特定処理の一例を示す説明図である。図27A1はテスト番号3におけるCPU11が抽出する行番号を推定した正解行番号の要素を列挙した説明図である。
FIG. 27 is an explanatory diagram showing an example of the failure location specifying process performed by the CPU. FIG. 27A1 is an explanatory diagram listing elements of correct line numbers for which the line numbers extracted by the
CPU11はテスト番号Kの1つ前のテスト番号から順にHIT(a,i)が1であるか否かを判定する。HIT_DATA()は正解行番号の要素の組み合わせを保存する配列である。CPU11はHIT(a,i)が1であると判定した場合、展開データのi行をHIT_DATA(i)に記憶する。すなわち、CPU11はHIT(a,i)が1であると判定した場合、展開データのi行をHIT_DATA(i)に記憶する。
The
CPU11はHIT_DATA(i)と一致する要素がOUT_DATA(a,(1,2…OUT_NUM(a))にあるか否かを判定する。OUT_NUM()は正解の行番号を保存する配列である。OUT_DATA(a,(1,2…OUT_NUM(a))は抽出した行の要素の組み合わせを保存する配列である。CPU11はHIT_DATA(i)と一致する要素がOUT_DATA(a,(1,2…OUT_NUM(a))にないと判定した場合、各種情報を出力する。
The
CPU11の具体的な処理を以下に示す。CPU11は図27A1に示したテスト番号3における正解の行の要素の組み合わせ「aaa,アイウ,ナポレオン」と図27B1に示した抽出した行の要素の組み合わせ「abaa,カキクアイウエ,ポンテ」とが一致しなかったと判定する。CPU11は正解の行番号である2行と抽出した行番号である8行と正解の行の組み合わせ「aaa,アイウ,ナポレオン」とテスト番号2とを出力部14に出力する。
Specific processing of the
図28〜図30は障害箇所特定処理の手順の一例を示すフローチャートである。CPU11はループ変数aをテスト番号Kから1を引算した数に設定する(ステップS141)。CPU11はループ変数iを1に設定する(ステップS142)。CPU11はSUMに0を設定する(ステップS143)。SUMは正解行数を示す変数である。
28 to 30 are flowcharts showing an example of the procedure of the fault location specifying process. The
CPU11はHIT(a,i)が1であるか否かを判定する(ステップS144)。CPU11はHIT(a,i)が1でないと判定した場合(ステップS144:NO)、ステップS147に処理を移す。CPU11はHIT(a,i)が1であると判定した場合(ステップS144:YES)、展開テーブルT9のi行をHIT_DATA(i)に記憶する(ステップS145)。すなわちCPU11は展開テーブルT9のi行を抽出した行の要素の組み合わせとして保存する。CPU11はSUMをSUM+HIT_SUM(a,i)増加させる(ステップS146)。CPU11はループ変数iを1増加させる(ステップS147)。
The
CPU11はループ変数iがNUM_Dを超えたか否かを判定する(ステップS148)。CPU11はループ変数iがNUM_Dを超えなかったと判定した場合(ステップS148:NO)、ステップS144に処理を移す。CPU11はループ変数iがNUM_Dを超えたと判定した場合(ステップS148:YES)、OUT_NUM(a)及び展開データに基づいて、OUT_DATA(a,(1,2…OUT_NUM(a)))を生成する(ステップS149)。OUT_DATA()は抽出した行の要素を保存する配列である。具体的にはCPU11はOUT_NUM(a)に展開テーブルT9の要素を記憶することによりOUT_DATA(a,(1,2…OUT_NUM(a)))を生成する。
The
CPU11はループ変数CLに1を設定する(ステップS150)。CPU11はHIT_DATA(CL)と一致する要素がOUT_DATA(a,(1,2…OUT_NUM(a))にあるか否か判定する(ステップS151)。すなわち、CPU11は抽出した抽出データ群(第1データ群)の数と推定した抽出データ群の数とを比較とを比較して一致するか否かを判定する。CPU11はHIT_DATA(CL)と一致する要素がOUT_DATA(a,(1,2…OUT_NUM(a))にあると判定した場合(ステップS151:YES)、ステップS154に処理を移す。
The
CPU11はHIT_DATA(CL)と一致する要素がOUT_DATA(a,(1,2…OUT_NUM(a))にないと判定した場合(ステップS151:NO)、HIT_DATA(CL)、HIT_SUM(a,CL)、OUT_DATA(a,(1,2…OUT_NUM(a)))、ループ変数aを出力部14に出力する(ステップS152)。すなわちCPU11は行番号、正解行数、抽出した行番号、誤った抽出を行ったテスト番号を出力部14に出力する。CPU11はFLAGをONにする(ステップS153)。
When the
CPU11はCLを1増加する(ステップS154)。CPU11はiがNUM_Dを超えているか否かを判定する(ステップS155)。CPU11はiがNUM_Dを超えていないと判定した場合(ステップS155:NO)、処理をステップS151に移す。CPU11はiがNUM_Dを超えていると判定した場合(ステップS155:YES)、FLAGがONであるか否かを判定する(ステップS156)。CPU11はFLAGがONであると判定した場合(ステップS156:YES)、障害箇所特定処理を終了し、処理を終了する。
The
CPU11はFLAGがONでないと判定した場合(ステップS156:NO)、ループ変数aを1減少させる(ステップS157)。CPU11はループ変数aがテスト番号kを超えたか否かを判定する(ステップS158)。CPU11はループ変数aがテスト番号kを超えなかったと判定した場合(ステップS158:NO)、ステップS142に処理を移す。CPU11はループ変数aがテスト番号kを超えたと判定した場合(ステップS158:YES)、障害箇所特定処理を終了し、処理を終了する。
If the
本実施の形態では誤った抽出を行ったテスト番号を短時間で抽出することができる。 In the present embodiment, it is possible to extract test numbers that have been erroneously extracted in a short time.
本実施の形態ではユーザが誤った抽出を行ったテストの詳細な情報を短時間で確認することができる。 In the present embodiment, it is possible to confirm detailed information of a test in which the user has made an erroneous extraction in a short time.
実施の形態3
以下本発明の実施の形態3をその実施の形態を示す図面に基づいて詳述する。図31は実施の形態3に係る情報処理装置1のハードウェア群を示すブロック図である。以下、特に説明する構成、作用以外の構成及び作用は実施の形態1と同等であり、簡潔のため記載を省略する。
情報処理装置1を動作させるためのプログラムは、ディスクドライブ等の読み取り部15にCD−ROM、DVD(Digital Versatile Disc)ディスク、メモリーカード、又はUSB(Universal Serial Bus)メモリ等の可搬型記録媒体16Aを読み取らせて記憶部12に記憶してもよい。また当該プログラムを記憶したフラッシュメモリ等の半導体メモリ16Bを情報処理装置1内に実装しても良い。通信部17は、例えば無線LANカード又は携帯電話用通信モジュール等であり、通信網Nを介して他のサーバコンピュータに接続されている。当該プログラムは、通信部17によりインターネット等の通信網Nを介して接続される他のサーバコンピュータ(図示せず)からダウンロードすることも可能である。以下にその内容を説明する。
A program for operating the
図31に示す情報処理装置1は、上述した各種ソフトウェア処理を実行するプログラムを、可搬型記録媒体16A又は半導体メモリ16Bから読み取り、あるいは、通信網Nを介して他のサーバコンピュータ(図示せず)からダウンロードする。当該プログラムは、プログラム12Pとしてインストールされ、記憶部12にロードして実行される。これより上述した情報処理装置1として機能する。
The
図32は実施の形態3に係る情報処理装置1のハードウェア群を示すブロック図である。CPU11がプログラム12Pを実行することにより、情報処理装置1は以下のように動作する。取得部11aはデータ群から前記抽出プログラム13Pにより第1抽出条件で抽出した第1データ群及び該データ群から前記抽出プログラム13Pにより第2抽出条件で抽出した第2データ群の数を取得する。推定部11bは前記データ群から前記第2抽出条件により抽出されるべき第1推定データ群の数と、前記第1データ群から前記第2抽出条件により抽出されるべき第2推定データ群の数とを加えた加算データ群の数を推定する。データ判定部11cは推定した加算データ群の数と、取得した第2データ群の数とが一致するか否かを判定する。
FIG. 32 is a block diagram illustrating a hardware group of the
以上の実施の形態1から2を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
抽出処理を行う抽出プログラムにより抽出されたデータ群に対する処理を実行するプログラムであって、
データ群から前記抽出プログラムにより第1抽出条件で抽出した第1データ群及び該データ群から前記抽出プログラムにより第2抽出条件で抽出した第2データ群の数を取得し、
前記データ群から前記第2抽出条件により抽出されるべき第1推定データ群の数と、前記第1データ群から前記第2抽出条件により抽出されるべき第2推定データ群の数とを加えた加算データ群の数を推定し、
推定した加算データ群の数と、取得した第2データ群の数とが一致するか否かを判定する処理を情報処理装置に実行させるプログラム。
(付記2)
前記加算データ群の数は、記憶部に予め記憶された第1推定データ群及び第2推定データ群の行番号と、前記データ群の行番号とが一致した数を計数することにより推定する
付記1に記載のプログラム。
(付記3)
前記第1抽出条件又は第2抽出条件はデータ群に含まれる文字列と抽出する文字列とが一致することを条件とし、
前記第1データ群又は第2データ群は前記第1抽出条件又は第2抽出条件における一致した文字列とする
付記1又は付記2に記載のプログラム。
(付記4)
前記第1抽出条件又は第2抽出条件はデータ群に含まれる文字列の一部と抽出する文字列とが一致することを条件とする
付記1から付記3のいずれか1つに記載のプログラム。
(付記5)
前記第1抽出条件又は第2抽出条件はデータ群に含まれる文字列の組み合わせと抽出する文字列の組み合わせとが一致することを条件とし、
前記第1データ群又は第2データ群は前記第1抽出条件又は第2抽出条件における一致した文字列の組み合わせとする
付記1から付記4のいずれか1つに記載のプログラム。
(付記6)
前記第1データ群の要素と前記第1推定データ群の要素とを比較する
付記1から付記5のいずれか1つに記載のプログラム。
(付記7)
前記第1データ群の要素と前記第1推定データ群の要素とが比較して一致しなかった場合、前記第1データ群の行番号と前記第1推定データ群の行番号とを出力する
付記1から付記6のいずれか1つに記載のプログラム。
(付記8)
抽出処理を行う抽出プログラムにより抽出されたデータ群に対する処理を実行する情報処理装置であって、
データ群から前記抽出プログラムにより第1抽出条件で抽出した第1データ群及び該データ群から前記抽出プログラムにより第2抽出条件で抽出した第2データ群の数を取得する取得部と、
前記データ群から前記第2抽出条件により抽出されるべき第1推定データ群の数と、前記第1データ群から前記第2抽出条件により抽出されるべき第2推定データ群の数とを加えた加算データ群の数を推定する推定部と、
推定した加算データ群の数と、取得した第2データ群の数とが一致するか否かを判定するデータ判定部とを備える情報処理装置。
(付記9)
抽出処理を行う抽出プログラムにより抽出されたデータ群に対する処理を実行する情報処理装置を用いた情報処理方法であって、
データ群から前記抽出プログラムにより第1抽出条件で抽出した第1データ群及び該データ群から前記抽出プログラムにより第2抽出条件で抽出した第2データ群の数を取得し、
前記データ群から前記第2抽出条件により抽出されるべき第1推定データ群の数と、前記第1データ群から前記第2抽出条件により抽出されるべき第2推定データ群の数とを加えた加算データ群の数を推定し、
推定した加算データ群の数と、取得した第2データ群の数とが一致するか否かを判定する情報処理方法。
With respect to the embodiments including the above first and second embodiments, the following additional notes are disclosed.
(Appendix 1)
A program that executes processing on a data group extracted by an extraction program that performs extraction processing,
Obtaining the number of first data group extracted under the first extraction condition by the extraction program from the data group and the number of second data group extracted under the second extraction condition by the extraction program from the data group;
The number of first estimation data groups to be extracted from the data group by the second extraction condition and the number of second estimation data groups to be extracted from the first data group by the second extraction condition are added Estimate the number of additional data groups,
A program that causes an information processing apparatus to execute a process of determining whether or not the estimated number of added data groups matches the acquired number of second data groups.
(Appendix 2)
The number of the added data groups is estimated by counting the number of line numbers of the first estimated data group and the second estimated data group stored in advance in the storage unit and the row numbers of the data group. The program according to 1.
(Appendix 3)
The first extraction condition or the second extraction condition is a condition that a character string included in the data group matches a character string to be extracted,
The program according to
(Appendix 4)
The program according to any one of
(Appendix 5)
The first extraction condition or the second extraction condition is that the combination of character strings included in the data group matches the combination of character strings to be extracted,
The program according to any one of
(Appendix 6)
The program according to any one of
(Appendix 7)
If the elements of the first data group and the elements of the first estimated data group do not match, the line number of the first data group and the line number of the first estimated data group are output. The program according to any one of 1 to appendix 6.
(Appendix 8)
An information processing apparatus that executes processing on a data group extracted by an extraction program that performs extraction processing,
An acquisition unit that acquires a first data group extracted from the data group by the extraction program using the first extraction condition and a second data group extracted from the data group by the extraction program using the second extraction condition;
The number of first estimation data groups to be extracted from the data group by the second extraction condition and the number of second estimation data groups to be extracted from the first data group by the second extraction condition are added An estimation unit for estimating the number of added data groups;
An information processing apparatus comprising: a data determination unit that determines whether or not the estimated number of added data groups matches the acquired number of second data groups.
(Appendix 9)
An information processing method using an information processing apparatus that executes processing on a data group extracted by an extraction program that performs extraction processing,
Obtaining the number of first data group extracted under the first extraction condition by the extraction program from the data group and the number of second data group extracted under the second extraction condition by the extraction program from the data group;
The number of first estimation data groups to be extracted from the data group by the second extraction condition and the number of second estimation data groups to be extracted from the first data group by the second extraction condition are added Estimate the number of additional data groups,
An information processing method for determining whether or not the estimated number of added data groups matches the acquired number of second data groups.
今回開示された実施の形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。 The embodiment disclosed this time is to be considered as illustrative in all points and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the meanings described above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.
11 CPU
12 記憶部
12P 制御プログラム
13P 抽出プログラム
13 入力部
14 出力部
T1 ランダムテーブル
T2 書き換えテーブル
T3 ワークテーブル
T4 件数テーブル
T5 組み合わせテーブル
T6 上書きテーブル
T7 マスタテーブル
T8 正解テーブル
12T データテーブル
11 CPU
12
Claims (5)
第1データ群から第1抽出条件で抽出した第2データ群と前記第1データ群とを併せたデータ群から第2抽出条件で抽出したデータの数を取得し、
前記第1データ群から前記第2抽出条件により抽出されるべきデータの数と、前記第2データ群から前記第2抽出条件により抽出されるべきデータの数とを加えた数と、取得した前記データの数とが一致するか否かを判定する処理を情報処理装置に実行させるプログラム。 A program for executing processing for data group extracted by the extraction program for performing processing for extracting data from a database,
Obtaining the number of data extracted under the second extraction condition from the data group combining the second data group extracted from the first data group under the first extraction condition and the first data group;
The number obtained by adding the number of data to be extracted from the first data group by the second extraction condition and the number of data to be extracted from the second data group by the second extraction condition, and the acquired A program that causes an information processing apparatus to execute processing for determining whether or not the number of data matches.
前記第2データ群又は前記第2抽出条件で抽出したデータ群は前記第1抽出条件又は第2抽出条件における一致した文字列を含むデータ群とする
請求項1に記載のプログラム。 The first extraction condition or the second extraction condition is a condition that a character string included in the data group matches a character string to be extracted,
The program of claim 1, wherein the second data Gunmata is the extracted data group in the second extraction conditions to the data group including a character string that matches in the first extraction condition and the second extraction condition.
請求項1又は請求項2に記載のプログラム。 The program according to claim 1, wherein the first extraction condition or the second extraction condition is that a part of a character string included in the data group matches a character string to be extracted.
第1データ群から第1抽出条件で抽出した第2データ群と前記第1データ群とを併せたデータ群から第2抽出条件で抽出したデータの数を取得する取得部と、
前記第1データ群から前記第2抽出条件により抽出されるべきデータの数と、前記第2データ群から前記第2抽出条件により抽出されるべきデータの数とを加えた加算データの数を推定する推定部と、
推定した加算データの数と、前記取得部が取得した前記データの数とが一致するか否かを判定するデータ判定部とを備える情報処理装置。 An information processing apparatus for executing processing for data group extracted by the extraction program for performing processing for extracting data from a database,
An acquisition unit for acquiring the number of data extracted under the second extraction condition from a data group obtained by combining the second data group extracted from the first data group under the first extraction condition and the first data group;
Estimating the number of added data by adding the number of data to be extracted from the first data group under the second extraction condition and the number of data to be extracted from the second data group according to the second extraction condition An estimator to
An information processing apparatus comprising: a data determination unit that determines whether or not the estimated number of addition data matches the number of data acquired by the acquisition unit.
第1データ群から第1抽出条件で抽出した第2データ群と前記第1データ群とを併せたデータ群から第2抽出条件で抽出したデータの数を取得し、
前記第1データ群から前記第2抽出条件により抽出されるべきデータの数と、前記第2データ群から前記第2抽出条件により抽出されるべきデータの数とを加えた加算データの数を推定し、
推定した加算データの数と、取得した前記データの数とが一致するか否かを判定する情報処理方法。 An information processing method using an information processing apparatus for executing processing for data group extracted by the extraction program for performing processing for extracting data from a database,
Obtaining the number of data extracted under the second extraction condition from the data group combining the second data group extracted from the first data group under the first extraction condition and the first data group;
Estimating the number of added data by adding the number of data to be extracted from the first data group under the second extraction condition and the number of data to be extracted from the second data group according to the second extraction condition And
An information processing method for determining whether or not the estimated number of added data matches the acquired number of data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013257435A JP6264009B2 (en) | 2013-12-12 | 2013-12-12 | Program, information processing apparatus and information processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013257435A JP6264009B2 (en) | 2013-12-12 | 2013-12-12 | Program, information processing apparatus and information processing method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015114910A JP2015114910A (en) | 2015-06-22 |
JP6264009B2 true JP6264009B2 (en) | 2018-01-24 |
Family
ID=53528638
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013257435A Active JP6264009B2 (en) | 2013-12-12 | 2013-12-12 | Program, information processing apparatus and information processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6264009B2 (en) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3201945B2 (en) * | 1995-01-10 | 2001-08-27 | インターナショナル・ビジネス・マシーンズ・コーポレーション | How to compare database tables |
JP2010108030A (en) * | 2008-10-28 | 2010-05-13 | Nec Corp | Information processing apparatus |
US9600513B2 (en) * | 2011-06-09 | 2017-03-21 | International Business Machines Corporation | Database table comparison |
-
2013
- 2013-12-12 JP JP2013257435A patent/JP6264009B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2015114910A (en) | 2015-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5669630B2 (en) | Test case generation method, program and system | |
CN109804363B (en) | Connection using format modification by way of example | |
US9571276B2 (en) | Derivation of a device-specific value | |
CN111971931B (en) | Method for verifying transactions in a blockchain network and nodes constituting the network | |
CN108229156A (en) | URL attack detection methods, device and electronic equipment | |
CN107622008B (en) | Traversal method and device for application page | |
CN110474900B (en) | Game protocol testing method and device | |
US20150295722A1 (en) | Key generation apparatus and method for generating a key | |
CN107133244B (en) | Method and device for testing database migration | |
JP2008243034A (en) | Software behavior modeling device, software behavior modeling method, software behavior verification device and software behavior verification method | |
US20150254496A1 (en) | Discriminant function specifying device, discriminant function specifying method, and biometric identification device | |
CN107832227B (en) | Interface parameter testing method, device, equipment and storage medium of business system | |
CN115185998A (en) | Target field searching method and device, server and computer readable storage medium | |
WO2007132564A1 (en) | Data processing device and method | |
JP6264009B2 (en) | Program, information processing apparatus and information processing method | |
CN110011964B (en) | Webpage environment detection method and device | |
KR102503366B1 (en) | How to generate values unique to electronic circuits, which electronic circuits generate these values and how to use them | |
CN112016067A (en) | User identity verification method and device | |
EP3284206B1 (en) | Method of securing the execution of a program | |
US20190294637A1 (en) | Similar data search device, similar data search method, and recording medium | |
CN105786789B (en) | A kind of calculation method and device of text similarity | |
CN112363933A (en) | Automatic verification method and device for word paragraph table, computer equipment and storage medium | |
KR102046249B1 (en) | Method for Feature Selection of Machine Learning Based Malware Detection, RECORDING MEDIUM and Apparatus FOR PERFORMING THE METHOD | |
CN108153659B (en) | Program vulnerability detection method and related device | |
CN112395594A (en) | Method, device and equipment for processing instruction execution sequence |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160905 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170620 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170627 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170824 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170912 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171106 |
|
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: 20171121 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20171204 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6264009 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |