JP6264009B2 - Program, information processing apparatus and information processing method - Google Patents

Program, information processing apparatus and information processing method Download PDF

Info

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
Application number
JP2013257435A
Other languages
Japanese (ja)
Other versions
JP2015114910A (en
Inventor
由香 神▲崎▼
由香 神▲崎▼
敬藏 小池
敬藏 小池
元雄 吉沢
元雄 吉沢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2013257435A priority Critical patent/JP6264009B2/en
Publication of JP2015114910A publication Critical patent/JP2015114910A/en
Application granted granted Critical
Publication of JP6264009B2 publication Critical patent/JP6264009B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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, Patent Document 1, Patent Document) 2).

特開2004−280231号公報JP 2004-280231 A 特開2007−011512号公報JP 2007-011512 A

しかしながら、上記した技術では出力されたデータ毎にテスト結果の正当性の判定を行っているため、抽出されるデータベースのデータ容量の増大に伴って処理に要する時間が増加する。   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.

情報処理装置のハードウェア群を示すブロック図である。It is a block diagram which shows the hardware group of information processing apparatus. 各種データテーブルの一覧を示すブロック図である。It is a block diagram which shows the list of various data tables. ランダムテーブルのデータ構造の一例を示す説明図である。It is explanatory drawing which shows an example of the data structure of a random table. 書き換えテーブルのデータ構造の一例を示す説明図である。It is explanatory drawing which shows an example of the data structure of a rewriting table. ワークテーブルのデータ構造の一例を示す説明図である。It is explanatory drawing which shows an example of the data structure of a work table. 件数テーブルのデータ構造の一例を示す説明図である。It is explanatory drawing which shows an example of the data structure of a number table. 組み合わせテーブルのデータ構造の一例を示す説明図である。It is explanatory drawing which shows an example of the data structure of a combination table. 上書きテーブルのデータ構造の一例を示す説明図である。It is explanatory drawing which shows an example of the data structure of an overwrite table. マスタテーブルのデータ構造の一例を示す説明図である。It is explanatory drawing which shows an example of the data structure of a master table. 正解テーブルのデータ構造の一例を示す説明図である。It is explanatory drawing which shows an example of the data structure of a correct answer table. テスト結果判定処理を行ったマスタテーブルの一例を示す説明図である。It is explanatory drawing which shows an example of the master table which performed the test result determination process. CPUの処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of CPU. テストデータ生成処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of a test data generation process. テストデータ生成処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of a test data generation process. テストデータ生成処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of a test data generation process. テストデータ生成処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of a test data generation process. 正解行数生成処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of a correct line number production | generation process. 正解行数生成処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of a correct line number production | generation process. 正解行数生成処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of a correct line number production | generation process. 正解行数生成処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of a correct line number production | generation process. テスト結果判定処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of a test result determination process. テスト結果判定処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of a test result determination process. 実施の形態2に係る各種データテーブルの一覧を示すブロック図である。10 is a block diagram showing a list of various data tables according to Embodiment 2. FIG. 展開テーブルのデータ構造の一例を示す説明図である。It is explanatory drawing which shows an example of the data structure of an expansion | deployment table. 実施の形態2に係るCPUの処理手順を示すフローチャートである。10 is a flowchart illustrating a processing procedure of a CPU according to the second embodiment. 展開テーブル生成処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of an expansion | deployment table production | generation process. CPUが行う障害箇所特定処理の一例を示す説明図である。It is explanatory drawing which shows an example of the fault location specific process which CPU performs. 障害箇所特定処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of a fault location specific process. 障害箇所特定処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of a fault location specific process. 障害箇所特定処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of a fault location specific process. 実施の形態3に係る情報処理装置のハードウェア群を示すブロック図である。FIG. 10 is a block diagram illustrating a hardware group of an information processing device according to a third embodiment. 実施の形態3に係る情報処理装置ハードウェア群の機能ブロック図である。FIG. 10 is a functional block diagram of an information processing device hardware group according to a third embodiment.

実施の形態1
図1は情報処理装置1のハードウェア群を示すブロック図である。情報処理装置1はソフトウェアに対して行われるテスト結果の正当性を確認するプログラムを実行するコンピュータであり、例えばパーソナルコンピュータ、サーバコンピュータ等である。図1に示す情報処理装置1は、CPU(Central Processing Unit)11、記憶部12、入力部13、出力部14を備える。
Embodiment 1
FIG. 1 is a block diagram illustrating a hardware group of the information processing apparatus 1. The information processing apparatus 1 is a computer that executes a program for confirming the validity of a test result performed on software, such as a personal computer or a server computer. An information processing apparatus 1 illustrated in FIG. 1 includes a CPU (Central Processing Unit) 11, a storage unit 12, an input unit 13, and an output unit 14.

CPU11は、バスを介してハードウェア各部と接続されている。CPU11は例えば一又は複数のCPU又はマルチコアCPU等を備える。CPU11は、記憶部12に記憶された制御プログラム12Pに従いハードウェアの各部を制御する。   The CPU 11 is connected to each part of hardware via a bus. The CPU 11 includes, for example, one or a plurality of CPUs or a multi-core CPU. The CPU 11 controls each part of the hardware according to the control program 12P stored in the storage unit 12.

記憶部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 storage unit 12 includes a ROM (Read Only Memory) and a RAM (Random Access Memory). The ROM is a nonvolatile memory element such as an EEPROM (Electrically Erasable Programmable ROM) or a flash memory. The RAM is composed of a volatile memory element such as SRAM (Static Random Access Memory) or DRAM (Dynamic Random Access Memory). The storage unit 12 stores various data required when the CPU 11 performs processing, a program 12P executed by the CPU 11, an extraction program 13P that performs extraction processing, and a data table 12T. The data table 12T is composed of a plurality of tables storing data necessary for the information processing apparatus 1 to use for processing.

入力部13はマウス、キーボード又はタッチパネル等の入力デバイスであり、受け付けた操作情報をCPU11へ出力する。出力部14は表示装置(図示せず)に表示させる画像データを出力する。   The input unit 13 is an input device such as a mouse, a keyboard, or a touch panel, and outputs received operation information to the CPU 11. The output unit 14 outputs image data to be displayed on a display device (not shown).

図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 CPU 11 reads various setting data including the number of rows (NUM_R), the number of columns (NUM_L), the minimum number of characters of items (MINI_L), the maximum number of characters of items (MAX_L), and the like stored in the storage unit 12 in advance. The CPU 11 generates a random table T1 by generating a random character string in each column of the random table T1 based on various setting data (see, for example, JP 2001-256076 A). In the random table T1 shown in FIG. 3, the number of rows is 8, the number of columns is 3, the minimum number of items is 1, and the maximum number of items is 10, but the number of rows or columns is, for example, 1 million rows or more. Alternatively, the table may be used.

図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 data item column 1, a data item column 2, a data item column 3, and the like. The CPU 11 accepts input of rewrite data. The CPU 11 generates a rewrite table T2 from the input rewrite data. Note that the rewrite table T2 may be stored in the storage unit 12 in advance.

図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 data item column 1, a data item column 2, a data item column 3, and the like. The CPU 11 generates a data group in which each column of the generated table is randomly associated with the row number of each column of the rewrite table T2, and generates the work table T3 with the generated data group.

なお、図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 data item column 1, a data item column 2, a data item column 3, and the like. The CPU 11 counts the number of times the row number of each column of the rewrite table T2 is stored in the work table T3. The CPU 11 stores the counted number for each element in the number table T4.

具体的には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 CPU 11 generates the number table T4 is as follows. When “1” is stored in the first row of the first column and the fourth row of the first column of the work table T3, the CPU 11 stores “2” in the first row of the first column of the number table T4. When “1” is stored in the first row of the second column of the work table T3, the CPU 11 stores “1” in the first row of the second column of the number table T4. When “1” is stored in the first row of the third column of the work table T3, the CPU 11 stores “1” in the first row of the third column of the number table T4. The CPU 11 performs the same processing for each row.

図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 CPU 11 refers to the rewriting table T2 and the work table T3, and generates a row number combination by combining the number of rows of the rewriting table T2 with the number of columns of the rewriting table T2. The CPU 11 counts the number of the same row number combinations. The CPU 11 stores the counted number of row number combinations in the combination table T5.

具体的には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 CPU 11 generates the combination table T5 is as follows. The CPU 11 refers to the rewriting table T2 and the work table T3. The CPU 11 stores all combinations from “1, 1, 1” to “4, 4, 4” in the combination table T5. The CPU 11 counts the line number combination “1, 1, 1” from the work table T3. The CPU 11 counts the row number combinations in which the row number combination “1, 1, 1” is stored in the first row of the work table T3, and stores “1” in the first row of the combination number sequence. The CPU 11 counts the line number combination “2, 1, 1” from the work table T3. The CPU 11 determines that the row number combination “2, 1, 1” is not stored in each row of the work table T3, and stores “0” in the second row of the combination number sequence. The CPU 11 then performs the same processing up to “4, 4, 4”.

図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 data item column 1, a data item column 2, a data item column 3, and the like. The CPU 11 generates the overwrite table T6 by assigning each element of the rewrite table T2 to the row number of each column of the rewrite table T2 associated with the work table T3.

具体的には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 CPU 11 generates the combination table T5 is as follows. When “1” is stored in the first row of the first column of the work table T3, the CPU 11 replaces “aaa” in the first row of the rewrite table T2 with the first row of the first column of the overwrite table T6. Remember in the eyes. When “1” is stored in the first row of the second column of the work table T3, the CPU 11 replaces the “first row” of the first row of the rewrite table T2 with the first row of the second column of the overwrite table T6. Remember in the eyes. When “1” is stored in the first row of the third column of the work table T3, the CPU 11 sets “Napoleon” of the first row of the third column of the rewrite table T2 to the first row of the third column of the overwrite table T6. Remember in the eyes. The CPU 11 performs the same processing for each row.

図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 data item column 1, a data item column 2, a data item column 3, and the like. The CPU 11 generates the master table T7 by overwriting each row of the overwrite table T6 at random on the random table T1. Note that the CPU 11 may generate the master table T7 by overwriting the random table T1 with each row of the overwrite table T6 as it is.

図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 extraction program 13P. The correct answer table T8 is stored in the storage unit 12 in advance. The correct answer table T8 includes a test number column, a type column, a search column, a correct column number column, a correct row number column, a combination column, an extracted number column, a test number total column, and the like.

テスト番号列には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 CPU 11 performs the test. The type column stores extraction conditions such as a first extraction condition or a second extraction condition for search performed by the CPU 11 by the extraction program 13P. The first extraction condition is a search extraction condition associated with a test number. The second extraction condition is an extraction condition for a search performed next to the test number associated with the first extraction condition. The search extraction conditions are, for example, A1, A2, B, and the like. A1 is a condition that the character string included in the data group matches the character string to be extracted. A2 is a condition that a part of the character string included in the data group matches the character string to be extracted. B is a condition that the combination of character strings included in the data group matches the combination of character strings to be extracted.

検索列には抽出プログラム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 CPU 11 by the extraction program 13P is stored. For example, “Aiue”, “aaa, Aiu, Napoleon”, etc. are stored in the search character string. In the correct column number column, the extraction column number of the extracted data group extracted from the data group according to the extraction condition is stored in advance. The extracted column number is a column number of the extracted data group extracted from the data group according to the extraction condition. In the correct answer row number column, the row numbers of the extracted data groups such as the first and second data groups are stored in advance. The first data group is a character string or a combination of character strings extracted from the data group according to the first extraction condition. The second data group is a character string or a combination of character strings extracted from the data group according to the second extraction condition. In the combination column, row number combinations extracted by the CPU 11 by the extraction program 13P are stored in advance. In the extraction number column, the number of extracted lines indicating the number of lines extracted by the CPU 11 by the extraction program 13P is stored in advance. The total number of test numbers is stored in advance in the total test number column.

CPU11は前記データ群から前記第2抽出条件により抽出されるべき第1推定データ群の数と、前記第1データ群から前記第2抽出条件により抽出されるべき第2推定データ群の数とを加えた加算データ群の数を推定する。具体的にはCPU11は記憶部12に予め記憶された第1推定データ群及び第2データ群の行番号とデータ群の行番号とが一致した数を計数することにより加算データ群を推定する。CPU11は正解テーブルT8、ワークテーブルT3及び組み合わせテーブルT5に基づいて推定した抽出データ群の数を示す正解行数をSEIKAI()に記憶する。SEIKAI()は正解行数を保存する配列であり、配列のインデックスにはテスト番号が格納される。すなわちSEIKAI()には推定された第1データ群、第2データ群の数が記憶される。   The CPU 11 determines the number of first estimation data groups to be extracted from the data group according to the second extraction condition and the number of second estimation data groups to be extracted from the first data group according to the second extraction condition. Estimate the number of added data groups. Specifically, the CPU 11 estimates the added data group by counting the number of coincidence between the row numbers of the first estimated data group and the second data group and the data group stored in advance in the storage unit 12. The CPU 11 stores the number of correct answers indicating the number of extracted data groups estimated based on the correct answer table T8, the work table T3, and the combination table T5 in SEIKAI (). SEIKAI () is an array that stores the number of correct rows, and a test number is stored in the array index. That is, the estimated number of the first data group and the second data group is stored in SEIKAI ().

図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 CPU 11 will be described below with reference to FIG.

図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 CPU 11 extracts “Aiue” from the sixth and eighth rows of the master table T7. The CPU 11 stores the number of extracted lines in the number of extracted cases (1). The number of extracted cases () is an array for storing the number of extracted rows, and the test number is stored in the index of the array.

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 CPU 11 determines whether or not the number of extracted cases (1) and SEIKAI (1) match. CPU11 memorize | stores NG in determination (1) which shows whether the implemented test is correct, when extraction number (1) and SEIKAI (1) do not correspond. The argument of judgment () indicates the number of extractions. NG indicates that the test performed is not valid. CPU11 memorize | stores OK in determination (1), when the number of extraction cases (1) and SEIKAI (1) correspond. OK indicates that the test performed is valid. The CPU 11 stores the number of extractions (1) and SEIKAI (1) coincident and OK in the determination (1).

CPU11はマスタテーブルT7の6行目に記憶された「ccc」、「アイウエオ」、「エメルソン」をマスタテーブルT7の9行目に追加する。CPU11はマスタテーブルT7の8行目に記憶された「abaa」、「カキクアイウエ」、「ポンテ」をマスタテーブルT7の10行目に追加する。   The CPU 11 adds “ccc”, “Iueo”, and “Emerson” stored in the sixth row of the master table T7 to the ninth row of the master table T7. The CPU 11 adds “abaa”, “Kakikuaiue”, and “Ponte” stored in the eighth row of the master table T7 to the tenth row of the master table T7.

図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 CPU 11 searches the master table T7 for the search character string “Aiu” using type A1. The CPU 11 erroneously extracts “Kakikuaiue” from the eighth row of the master table T7. The CPU 11 stores the number of rows 1 in the number of extracted cases (2). The CPU 11 stores the number of extracted cases (2) and SEIKAI (2), and stores OK in the determination (2).

CPU11はマスタテーブルT7の8行目に記憶された「abaa」、「カキクアイウエ」、「ポンテ」をマスタテーブルT7の11行目に追加する。   The CPU 11 adds “abaa”, “Kakikuaiue”, and “Ponte” stored in the eighth row of the master table T7 to the eleventh row of the master table T7.

図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 test number 3 is performed. As shown in FIG. 11C, the CPU 11 searches the master table T7 for a search character string “aaa, Aiu, Napoleon” by using type B. The CPU 11 extracts “aaa”, “Aiu”, and “Napoleon” from the second row of the master table T7. The CPU 11 stores the extracted number of rows 2 in the number of extracted cases (3). The CPU 11 stores NG in the determination (3) because the number of extracted cases (3) does not match the SEIKAI (3). The CPU 11 adds “aaa”, “Aiu”, and “Napoleon” stored in the second row of the master table T7 to the twelfth row of the master table T7.

図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 CPU 11. The CPU 11 sets various setting data such as a random table T1 and a work table T3 (step S1). Specifically, the CPU 11 sets setting data such as NUM_R, NUM_L, MINI_L, and MAX_L.

CPU11は書き換えデータの入力を受け付ける(ステップS2)。CPU11は入力した書き換えデータから書き換えテーブルT2を生成する(ステップS3)。CPU11はテストデータ生成処理を行う(ステップS4)。CPU11は正解件数生成処理を行う(ステップS5)。CPU11はテスト結果判定処理を行い(ステップS6)、処理を終了する。   The CPU 11 accepts input of rewrite data (step S2). The CPU 11 generates a rewrite table T2 from the input rewrite data (step S3). The CPU 11 performs test data generation processing (step S4). The CPU 11 performs a correct answer number generation process (step S5). The CPU 11 performs a test result determination process (step S6) and ends the process.

図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 CPU 11 reads various setting data (step S11). Specifically, the CPU 11 reads setting data such as NUM_R, NUM_L, MINI_L, and MAX_L. The CPU 11 generates a random table T1 by generating a random character string in each column of the random table T1 based on various setting data (step S12).

CPU11は書き換えテーブルT2を読み込む(ステップS13)。書き換えデータをSOURCE(i,j)に記憶する(ステップS14)。SOURCE()は書き換えデータを保存した配列である。ループ変数iは行番号を格納する配列のインデックスとして用いられる。ループ変数jは列番号を格納する配列のインデックスとして用いられる。   The CPU 11 reads the rewrite table T2 (step S13). The rewrite data is stored in SOURCE (i, j) (step S14). SOURCE () is an array storing rewrite data. The loop variable i is used as an index of an array that stores row numbers. The loop variable j is used as an index of an array that stores column numbers.

CPU11は書き換えテーブルT2における列毎の行番号の総数をN(j)に記憶する(ステップS15)。N(j)は書き換えデータの列毎における行番号の総数を保存した配列である。CPU11は1〜N(j)の数字をWORK(i,j)のj列毎にランダムで記憶する(ステップS16)。WORK()はデータ群であり、書き換えデータの行番号を保存する配列である。CPU11はWORK(i,j)をワークテーブルT3に記憶する(ステップS17)。   The CPU 11 stores the total number of row numbers for each column in the rewrite table T2 in N (j) (step S15). N (j) is an array storing the total number of row numbers for each column of rewrite data. The CPU 11 stores the numbers 1 to N (j) at random for every j columns of WORK (i, j) (step S16). WORK () is a data group, and is an array for storing the row numbers of rewrite data. The CPU 11 stores WORK (i, j) in the work table T3 (step S17).

CPU11はワークテーブルT3を参照し、ワークテーブルT3に書き換えテーブルT2の各列の行番号が記憶された回数を計数する(ステップS18)。CPU11は計数した回数を件数テーブルT4に記憶する(ステップS19)。   The CPU 11 refers to the work table T3 and counts the number of times the row number of each column of the rewrite table T2 is stored in the work table T3 (step S18). The CPU 11 stores the counted number in the number table T4 (step S19).

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 CPU 11 sets the loop variable i to 1 (step S20). The CPU 11 sets the loop variable j to 1 (step S21). The CPU 11 stores the value of WORK (i, j) in the variable L that stores the line number of the rewrite data (step S22). The CPU 11 stores SOURCE (L, j) in BASEDATA (i, j) (step S23). BASEDATA () is an array for storing overwrite data. That is, the CPU 11 stores the element stored in the j column of the L row of the rewrite table T2 in the j column of the i row of the overwrite table T6.

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 CPU 11 increments the loop variable j by 1 (step S24). The CPU 11 determines whether or not the loop variable j exceeds NUM_R (step S25). If the CPU 11 determines that the loop variable j has not exceeded NUM_R (step S25: NO), the CPU 11 returns to step S22 and continues the process. When the CPU 11 determines that the loop variable j exceeds NUM_R (step S25: YES), the CPU 11 increments the loop variable i by 1 (step S26). The CPU 11 determines whether or not the loop variable i exceeds NUM_D (step S27). When the CPU 11 determines that the loop variable i has not exceeded NUM_D (step S27: NO), the CPU 11 returns to step S21 and continues the process.

CPU11はループ変数iがNUM_Dを超えたと判定した場合(ステップS27:YES)、ワークテーブルT3を参照し、書き換えテーブルT2の行数を書き換えテーブルT2の列数個掛け合わせた組み合わせ総数を計数する(ステップS28)。具体的には以下の式により組み合わせ総数を計数する。
NUM=N(1)×N(2)×……×N(NUM_R)
When the CPU 11 determines that the loop variable i exceeds NUM_D (step S27: YES), the CPU 11 refers to the work table T3 and counts the total number of combinations obtained by multiplying the number of rows of the rewrite table T2 by the number of columns of the rewrite table T2 ( Step S28). Specifically, the total number of combinations is counted by the following formula.
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 CPU 11 stores the counted total number of combinations in the correct answer table T8 (step S29). The CPU 11 generates a line number combination based on the rewrite table T2 (step S30). Specifically, the CPU 11 generates a row number combination by combining the number of rows of the rewrite table T2 by the number of columns of the rewrite table T2. The CPU 11 stores the generated line number combination in the combination number L (i) and the combination table T5 (step S31). The combination number L () is an array that stores row number combinations. The CPU 11 counts the number of the same row number combinations stored in the combination number L (i) in the work table T3 (step S32). The CPU 11 stores the counted number of the same row number combinations in the variable SU and the combination table T5 (step S33). The variable SU is a variable for storing the number of the same row number combinations counted.

CPU11はワークテーブルT3からNUM_D個の行番号をランダムに抽出する(ステップS34)。CPU11は抽出した値をLINE_O(i)に記憶する(ステップS35)。LINE_O()はランダムに抽出した行番号を保存した配列である。   The CPU 11 randomly extracts NUM_D line numbers from the work table T3 (step S34). The CPU 11 stores the extracted value in LINE_O (i) (step S35). LINE_O () is an array that stores randomly extracted row numbers.

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 CPU 11 sets the loop variable i to 1 (step S36). The CPU 11 stores the value of LINE_O (i) in the variable L (step S37). The variable L is a variable for storing randomly extracted line numbers. The CPU 11 sets the loop variable j to 1 (step S38). The CPU 11 stores BASEDATA (i, j) in DATA (L, j) (step S39). DATA () is an array stored in the master table T7. That is, the CPU 11 stores the element in the i row and j column of the overwrite table T6 in the L row and j column of the master table T7.

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 CPU 11 increments the loop variable j by 1 (step S40). The CPU 11 determines whether or not the loop variable j exceeds NUM_R (step S41). When the CPU 11 determines that the loop variable j does not exceed NUM_R (step S41: NO), the CPU 11 returns to step S39 and continues the process. When the CPU 11 determines that the loop variable j exceeds NUM_R (step S41: YES), the CPU 11 increments the loop variable i by 1 (step S42). The CPU 11 determines whether or not the loop variable i exceeds NUM_D (step S43). When the CPU 11 determines that the loop variable i does not exceed NUM_D (step S43: NO), the CPU 11 returns to step S37 and continues the process. If the CPU 11 determines that the loop variable i exceeds NUM_D (step S43: YES), the CPU 11 ends the test data generation process and shifts the process to the correct line number generation process.

図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 CPU 11 initializes HIT (a, i) to 0 (step S51). HIT () is an array for storing whether or not the element of the line number i is extracted from the rewrite table T2 in the loop variable a which is a variable indicating the test number. That is, HIT () stores whether or not the extracted data group of line number i is extracted from the data group according to the extraction condition associated with the loop variable a. For example, when HIT (a, i) is 1, it means that the element of the line number i is extracted from the master table T7 according to the extraction condition associated with the test number a. Alternatively, when HIT (a, i) is 0, it means that the element of row number i is not extracted from master table T7 due to the extraction condition associated with test number a.

CPU11は正解テーブルT8を読み込む(ステップS52)。CPU11はループ変数aを1に設定する(ステップS53)。CPU11は組み合わせテーブルT5を読み込む(ステップS54)。   The CPU 11 reads the correct answer table T8 (step S52). The CPU 11 sets the loop variable a to 1 (step S53). The CPU 11 reads the combination table T5 (step S54).

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 CPU 11 determines whether or not the a-th row of the type column in the correct answer table T8 is A1 (step S55). If the CPU 11 determines that the a-th row of the type column is A1 (step S55: YES), the CPU 11 stores the a-th row of the correct row number column in the correct answer table T8 in the variable M (step S56). The variable M is a variable for storing the row number of the extracted data group stored in advance in the storage unit 12. The CPU 11 stores the a-th row of the correct column number sequence in the correct table T8 in the variable r (step S57). The variable r is a variable for storing the column number of the extracted data group stored in advance in the storage unit 12. The CPU 11 sets a loop variable i indicating the number of searches to 1 (step S58). The CPU 11 determines whether or not WORK (i, r) is a variable M (step S59). That is, the CPU 11 determines whether or not the row number of the extracted data group stored in advance in the storage unit 12 matches the row number of the data group.

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 CPU 11 determines that WORK (i, r) is not the variable M (step S59: NO), the CPU 11 increments the loop variable i by 1 (step S60), returns to step S59, and continues the processing. When the CPU 11 determines that WORK (i, r) is the variable M (step S59: YES), it stores 1 in HIT (a, i) (step S61). The CPU 11 stores the number of combinations SU in HIT_SU (i) (step S62), and moves the process to step S80. HIT_SU () is an array for storing the number of the same row number combinations stored in the combination table T5.

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 CPU 11 determines that the a-th row of the type column in the correct answer table T8 is not A1 (step S55: NO), the CPU 11 determines whether the a-th row of the type column in the correct answer table T8 is A2 (step S63). . The a-th row of the correct answer row number column in the correct answer table T8 is stored in LINE (j) (step S64). LINE () is an array for storing the row numbers to be extracted. The CPU 11 stores the a-th row of the correct answer column number column in the correct answer table T8 in the variable r (step S65). The CPU 11 sets the loop variable j to 1 (step S66).

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 CPU 11 sets the loop variable i to 1 (step S67). The CPU 11 determines whether WORK (i, r) is the same as LINE (j) (step S68). That is, the CPU 11 determines whether or not the row number stored in the r column of the i row of the rewrite data matches the row number extracted in the j column. If the CPU 11 determines that WORK (i, r) is not the same as LINE (j) (step S68: NO), the CPU 11 increments the loop variable i by 1 (step S69), returns to step S68, and continues the processing. When the CPU 11 determines that WORK (i, r) is the same as LINE (j) (step S68: YES), 1 is stored in HIT (a, i) (step S70). That is, HIT () stores whether or not the extracted data group of line number i is extracted from the data group according to the extraction condition associated with the loop variable a. The CPU 11 stores the number of combinations SU in HIT_SU (i) (step S71). That is, the CPU 11 stores the same row number combination of the counted row numbers i in HIT_SU (i) as the number of extracted data groups (first data group).

CPU11はループ変数jを1増加させる(ステップS72)。CPU11はループ変数jがNUM_Rを超えたか否かを判定する(ステップS73)。CPU11はループ変数jがNUM_Rを超えなかったと判定した場合(ステップS73:NO)、ステップS67に戻り、処理を続ける。CPU11はループ変数jがNUM_Rを超えたと判定した場合(ステップS73:YES)、処理をステップS80に移す。   The CPU 11 increments the loop variable j by 1 (step S72). The CPU 11 determines whether or not the loop variable j exceeds NUM_R (step S73). If the CPU 11 determines that the loop variable j has not exceeded NUM_R (step S73: NO), the CPU 11 returns to step S67 and continues the process. If the CPU 11 determines that the loop variable j exceeds NUM_R (step S73: YES), the process proceeds to step S80.

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 CPU 11 determines that the a-th row of the type column in the correct answer table T8 is not A2 (step S63: NO), the CPU 11 stores the row number combination to be extracted in ROW (1, 2... NUM_R) (step S74). ROW () is an array for storing row number combinations, and column numbers are stored in the array index. For example, (1, 1, 1) and the like are stored in ROW (1, 2... NUM_R). The CPU 11 sets the loop variable i to 1 (step S75). The CPU 11 determines whether WORK (i, 1, 2... NUM_R) is the same as ROW (1, 2... NUM_R) (step S76). That is, the CPU 11 determines whether or not the line number combination stored in the i line of the rewrite data matches the extracted line number combination.

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 CPU 11 determines that WORK (i, 1, 2... NUM_R) is not the same as ROW (1, 2... NUM_R) (step S76: NO), the CPU 11 increments the loop variable i by 1 (step S77). Returning to step S76, the processing is continued. When the CPU 11 determines that WORK (i, 1, 2... NUM_R) is ROW (1, 2... NUM_R) (step S76: YES), 1 is stored in HIT (a, i) (step S78). ). The CPU 11 stores the number of combinations SU in HIT_SU (i) (step S79), and moves the process to step S80.

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 CPU 11 increments the loop variable a by 1 (step S80). The CPU 11 determines whether or not the loop variable a has exceeded TEST_NUM indicating the total number of test numbers stored in the correct answer table T8 (step S81). If the CPU 11 determines that the loop variable a has not exceeded TEST_NUM (step S81: NO), the process proceeds to step S54. When the CPU 11 determines that the loop variable a exceeds TEST_NUM (step S81: YES), the CPU 11 sets the loop variable i to 1 (step S82). The CPU 11 sets the loop variable a to 1 (step S83).

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 CPU 11 sets the extraction number WL indicating the number of rows to be extracted from the rewrite table T2 to 0 (step S84). The number of extractions WL indicates the number of times that the CPU 11 has extracted the extraction data group (first data group) of row number i. The CPU 11 determines whether or not HIT (a, i) is 1 (step S85). If the CPU 11 determines that HIT (a, i) is 1 (step S85: YES), the CPU 11 increments the number of extractions WL by 1 (step S86), and moves the process to step S87. That is, the CPU 11 determines whether or not HIT (a, i) is 1, and when it is determined that HIT (a, i) is 1, the CPU 11 stores the number of extractions WL in the storage unit 12 by increasing it. The number of row numbers of the data group that matches the row number of the extracted data group (first data group) is counted. When the CPU 11 determines that HIT (a, i) is not 1 (step S85: NO), the CPU 11 increases the loop variable a by 1 (step S87). HIT_SUM (a) × number of extractions WL is stored in HIT_SUM (a, i) (step S88). HIT_SUM () is an array that stores the number of extracted data groups extracted from the data group. That is, the CPU 11 multiplies the number of extraction data groups (first data group) by the same combination of row numbers, thereby calculating the number of row numbers of the counted data groups and the first data group stored in the storage unit 12. Count the sum of the line number and the number of line numbers that matched. The CPU 11 determines whether or not the loop variable a exceeds TEST_NUM (step S89).

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 CPU 11 determines that the loop variable a has not exceeded TEST_NUM (step S89: NO), the process proceeds to step S85. If the CPU 11 determines that the loop variable a exceeds TEST_NUM (step S89: YES), the CPU 11 increments the loop variable i by 1 (step S90). The CPU 11 determines whether i exceeds the total number of combinations (step S91). If the CPU 11 determines that i has not exceeded NUM_D (step S91: NO), the process proceeds to step S83. When the CPU 11 determines that i exceeds the total number of combinations (step S91: YES), it sets the loop variable a to 1 (step S92).

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 CPU 11 sets the loop variable i to 1 (step S93). The CPU 11 sets the correct line number WK indicating the number of extracted lines estimated for each test number from the master table T7 to 0 (step S94). The CPU 11 adds HIT_SUM (a, i) to the correct answer line number WK (step S95). That is, the CPU 11 counts the sum of each estimated extraction data group. The CPU 11 increments the loop variable i by 1 (step S96). The CPU 11 determines whether or not the loop variable i has exceeded the total number of combinations (step S97). If the CPU 11 determines that the loop variable i has not exceeded the total number of combinations (step S97: NO), the process proceeds to step S95. If the CPU 11 determines that the loop variable i has exceeded the total number of combinations (step S97: YES), the CPU 11 stores the correct line number WK in SEIKAI (a) (step S98).

CPU11はループ変数aを1増加させる(ステップS99)。CPU11はループ変数aがTEST_NUMを超えたか否かを判定する(ステップS100)。CPU11はループ変数aがTEST_NUMを超えなかったと判定した場合(ステップS100:NO)、処理をステップS93に移す。CPU11はループ変数aがTEST_NUMを超えたと判定した場合(ステップS100:YES)、正解行数生成処理を終了し処理をテスト結果判定処理に移す。   The CPU 11 increments the loop variable a by 1 (step S99). The CPU 11 determines whether or not the loop variable a exceeds TEST_NUM (step S100). If the CPU 11 determines that the loop variable a does not exceed TEST_NUM (step S100: NO), the process proceeds to step S93. When the CPU 11 determines that the loop variable a exceeds TEST_NUM (step S100: YES), the CPU 11 ends the correct line number generation process and shifts the process to the test result determination process.

図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 CPU 11 sets the loop variable a to 1 (step S111). The CPU 11 reads the correct answer table T8 and extracts (acquires) the line number and the number of lines based on the test item (a) by the extraction program 13P (step S112). The test item () is an array storing extraction conditions associated with the test number a. That is, the CPU 11 extracts the first data group from the data group of the master table T7 by the extraction program 13P according to the first extraction condition associated with the test number a.

CPU11は抽出した行数を抽出件数(a)に記憶する(ステップS113)。CPU11は抽出件数(a)とSEIKAI(a)とが同一であるか否かを判定する(ステップS114)。すなわち、CPU11は抽出したデータ群の数と、推定したデータ群の数の和とを比較する抽出した行数と正解行数とを比較することにより同一であるか否かを判定する。CPU11は抽出件数(a)とSEIKAI(a)とが同一でないと判定した場合(ステップS114:NO)、判定(a)にNGを記憶する(ステップS115)。CPU11はテスト番号Kにループ変数aを記憶し(ステップS116)、処理を終了する。   The CPU 11 stores the extracted number of rows in the number of extracted cases (a) (step S113). The CPU 11 determines whether or not the number of extracted cases (a) and SEIKAI (a) are the same (step S114). That is, the CPU 11 determines whether or not they are the same by comparing the number of extracted rows that compares the number of extracted data groups with the sum of the estimated number of data groups and the number of correct rows. When the CPU 11 determines that the number of extracted cases (a) and SEIKAI (a) are not the same (step S114: NO), it stores NG in the determination (a) (step S115). The CPU 11 stores the loop variable a in the test number K (step S116) and ends the process.

CPU11は抽出件数(a)とSEIKAI(a)とが同一であると判定した場合(ステップS114:YES)、判定(a)にOKを記憶する(ステップS117)。マスタテーブルT7の最後の行に抽出した行番号の要素を追加する(ステップS118)。CPU11は正解テーブルT8を読み込み、テスト項目(a+1)に基づいて行番号及び行数を抽出する(ステップS119)。すなわち、CPU11はマスタテーブルT7のデータ群からテスト番号a+1に対応づけられた第2抽出条件により第2データ群を抽出する。   If the CPU 11 determines that the number of extracted cases (a) and SEIKAI (a) are the same (step S114: YES), it stores OK in the determination (a) (step S117). The extracted row number element is added to the last row of the master table T7 (step S118). The CPU 11 reads the correct answer table T8 and extracts the line number and the number of lines based on the test item (a + 1) (step S119). That is, the CPU 11 extracts the second data group from the data group of the master table T7 according to the second extraction condition associated with the test number a + 1.

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 CPU 11 stores the extracted number of rows in the number of extracted cases (a + 1) (step S120). The CPU 11 determines whether or not the number of extracted cases (a + 1) is the same as SEIKAI (a + 1) (step S121). That is, the CPU 11 determines whether or not the extracted number of the second data group matches the added data group obtained by adding the estimated number of the first estimated data group and the second estimated data group. When the CPU 11 determines that the number of extracted cases (a + 1) and SEIKAI (a + 1) are not the same (step S121: NO), the CPU 11 stores NG in the determination (a + 1) (step S122). The CPU 11 stores the loop variable a + 1 in the test number K + 1 (step S123) and ends the process.

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 CPU 11 determines that the number of extractions (a + 1) and SEIKAI (a + 1) are the same (S121: YES), it stores OK in the determination (a + 1) (step S124). The CPU 11 increments the loop variable a by 1 (step S125). The CPU 11 determines whether or not the loop variable a exceeds TEST_NUM (step S126). If the CPU 11 determines that the loop variable a has not exceeded TEST_NUM (step S126: NO), the process proceeds to step S118. If the CPU 11 determines that the loop variable a exceeds TEST_NUM (step S126: YES), the CPU 11 ends the test result determination process and ends the process.

本実施の形態ではCPU11がワークテーブルT3から抽出した行数と正解行数とが同一であるか否かを判定することにより、テスト結果の正当性の判定処理を短時間で行うことができる。   In the present embodiment, by determining whether or not the number of lines extracted from the work table T3 by the CPU 11 is the same as the number of correct answer lines, the test result validity determination process can be performed in a short time.

本実施の形態ではCPU11がWORK(i,r)が変数Mであるか否かを判定する、このことにより、文字列が一致するか否かによりテスト結果の正当性の判定処理を行うことができる。   In the present embodiment, the CPU 11 determines whether or not WORK (i, r) is a variable M. With this, the process of determining the validity of the test result is performed depending on whether or not the character strings match. it can.

本実施の形態ではCPU11がWORK(i,r)がLINE(j)と同一であるか否かを判定する。このことにより文字列の一部が一致するか否かによりテスト結果の正当性の判定処理を行うことができる。   In this embodiment, the CPU 11 determines whether WORK (i, r) is the same as LINE (j). As a result, it is possible to perform a test result validity determination process based on whether or not a part of the character string matches.

本実施の形態ではCPU11はWORK(i,(1,2……NUM_R))がROW(1、2……NUM_R)と同一であるか否かを判定する。このことにより文字列の組み合わせが一致するか否かによりテスト結果の正当性の判定処理を行うことができる。   In this embodiment, the CPU 11 determines whether or not WORK (i, (1, 2... NUM_R)) is the same as ROW (1, 2... NUM_R). As a result, it is possible to determine whether the test result is valid depending on whether the character string combinations match.

実施の形態2
以下本発明の実施の形態2をその実施の形態を示す図面に基づいて詳述する。図23は実施の形態2に係る各種データテーブルの一覧を示すブロック図である。以下、特に説明する構成、作用以外の構成及び作用は実施の形態1と同等であり、簡潔のため記載を省略する。データテーブル12Tはさらに展開テーブルT9を備える。
Embodiment 2
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 data item column 1, a data item column 2, a data item column 3, and the like. CPU11 produces | generates the expansion | deployment data which show the combination of the element of each line based on the rewriting table T2 and the combination table T5. The CPU 11 generates the expansion table T9 by storing the generated expansion data in the expansion table T9.

具体的には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 CPU 11 generates the expansion table T9 is as follows. When 1 is stored in the first row of the first column of the combination table T5, the CPU 11 stores “aaa” in the first row of the first column of the rewrite table T2, so that one column of the expansion table T9. “Aaa” is stored in the first line of the eye. When 1 is stored in the first row of the second column of the combination table T5, the CPU 11 stores “Ai” in the first row of the second column of the rewrite table T2, so that the second column of the expansion table T9. “Aiu” is stored in the first line of the eye. When 1 is stored in the first row of the third column of the combination table T5, the CPU 11 stores “Napoleon” in the first row of the third column of the rewrite table T2, so that the third column of the expansion table T9. “Napoleon” is stored in the first line of the eye. The CPU 11 performs the same processing for each row.

図25は実施の形態2に係るCPU11の処理手順の一例を示すフローチャートである。ステップS7及びステップS8以外の処理は上述の実施の形態1に係るCPU11の処理手順と同様であるので、簡潔のため説明を省略する。   FIG. 25 is a flowchart illustrating an example of a processing procedure of the CPU 11 according to the second embodiment. Processing other than step S7 and step S8 is the same as the processing procedure of the CPU 11 according to the above-described first embodiment, and thus the description is omitted for the sake of brevity.

CPU11はステップS6の処理を終了した後、展開テーブル生成処理を行う(ステップS7)。CPU11は障害箇所特定処理を行い(ステップS8)、処理を終了する。   After completing the process in step S6, the CPU 11 performs a development table generation process (step S7). The CPU 11 performs a failure location identification process (step S8) and ends the process.

図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 CPU 11 reads the combination table T5 (step S131). The CPU 11 reads the rewrite table T2 (step S132). Based on the rewrite table T2 and the combination table T5, the CPU 11 generates expanded data indicating the combination of elements in each row (step S133). Specifically, the CPU 11 generates expanded data by storing each element corresponding to the row number of each column of the rewrite table T2 in the row number of each column of the combination table T5. The CPU 11 stores the generated expansion data in the expansion table T9 (step S134).

図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 CPU 11 in test number 3 are estimated.

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 CPU 11 determines whether or not HIT (a, i) is 1 in order from the test number immediately preceding the test number K. HIT_DATA () is an array that stores combinations of elements with correct line numbers. When the CPU 11 determines that HIT (a, i) is 1, the CPU 11 stores i rows of the decompressed data in HIT_DATA (i). That is, when the CPU 11 determines that HIT (a, i) is 1, the CPU 11 stores i rows of decompressed data in HIT_DATA (i).

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 CPU 11 determines whether or not there is an element that matches HIT_DATA (i) in OUT_DATA (a, (1, 2... OUT_NUM (a)). OUT_NUM () is an array for storing the correct line number. (A, (1, 2... OUT_NUM (a)) is an array that stores combinations of extracted row elements. The CPU 11 determines that an element that matches HIT_DATA (i) is OUT_DATA (a, (1, 2... OUT_NUM ( When it is determined not to be in a)), various information is output.

CPU11の具体的な処理を以下に示す。CPU11は図27A1に示したテスト番号3における正解の行の要素の組み合わせ「aaa,アイウ,ナポレオン」と図27B1に示した抽出した行の要素の組み合わせ「abaa,カキクアイウエ,ポンテ」とが一致しなかったと判定する。CPU11は正解の行番号である2行と抽出した行番号である8行と正解の行の組み合わせ「aaa,アイウ,ナポレオン」とテスト番号2とを出力部14に出力する。   Specific processing of the CPU 11 is shown below. The CPU 11 does not match the combination “aa, Aiu, Napoleon” of the correct line element in the test number 3 shown in FIG. It is determined that The CPU 11 outputs the combination “aaa, Aiu, Napoleon” and the test number 2 to the output unit 14, which is the correct line number 2, the extracted line number 8, and the correct line.

図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 CPU 11 sets the loop variable a to the number obtained by subtracting 1 from the test number K (step S141). The CPU 11 sets the loop variable i to 1 (step S142). The CPU 11 sets SUM to 0 (step S143). SUM is a variable indicating the number of correct answers.

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 CPU 11 determines whether or not HIT (a, i) is 1 (step S144). If the CPU 11 determines that HIT (a, i) is not 1 (step S144: NO), the process proceeds to step S147. When the CPU 11 determines that HIT (a, i) is 1 (step S144: YES), the CPU 11 stores i row of the expansion table T9 in HIT_DATA (i) (step S145). That is, the CPU 11 stores the i row of the expansion table T9 as a combination of extracted row elements. The CPU 11 increases SUM by SUM + HIT_SUM (a, i) (step S146). The CPU 11 increments the loop variable i by 1 (step S147).

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 CPU 11 determines whether or not the loop variable i exceeds NUM_D (step S148). If the CPU 11 determines that the loop variable i has not exceeded NUM_D (step S148: NO), the process proceeds to step S144. If the CPU 11 determines that the loop variable i exceeds NUM_D (step S148: YES), it generates OUT_DATA (a, (1, 2,... OUT_NUM (a))) based on OUT_NUM (a) and the expanded data ( Step S149). OUT_DATA () is an array for storing the extracted row elements. Specifically, the CPU 11 generates OUT_DATA (a, (1, 2... OUT_NUM (a))) by storing the elements of the expansion table T9 in OUT_NUM (a).

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 CPU 11 sets 1 to the loop variable CL (step S150). The CPU 11 determines whether there is an element in OUT_DATA (a, (1, 2,... OUT_NUM (a)) that matches HIT_DATA (CL) (step S151), that is, the CPU 11 extracts the extracted data group (first data). The CPU 11 determines whether or not the number of the extracted data groups matches the comparison with the comparison, and the CPU 11 determines whether the element that matches HIT_DATA (CL) is OUT_DATA (a, (1, 2,..., OUT_NUM). If it is determined that (a)) is present (step S151: YES), the process proceeds to step S154.

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 CPU 11 determines that there is no element that matches HIT_DATA (CL) in OUT_DATA (a, (1, 2... OUT_NUM (a)) (step S151: NO), HIT_DATA (CL), HIT_SUM (a, CL), OUT_DATA (a, (1, 2... OUT_NUM (a))) and the loop variable a is output to the output unit 14 (step S152), that is, the CPU 11 performs line number, correct line number, extracted line number, and incorrect extraction. The performed test number is output to the output unit 14. The CPU 11 turns on FLAG (step S153).

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 CPU 11 increases CL by 1 (step S154). The CPU 11 determines whether i exceeds NUM_D (step S155). If the CPU 11 determines that i does not exceed NUM_D (step S155: NO), the process proceeds to step S151. If the CPU 11 determines that i exceeds NUM_D (step S155: YES), it determines whether or not FLAG is ON (step S156). When the CPU 11 determines that the FLAG is ON (step S156: YES), the CPU 11 ends the fault location specifying process and ends the process.

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 CPU 11 determines that FLAG is not ON (step S156: NO), the CPU 11 decreases the loop variable a by 1 (step S157). The CPU 11 determines whether or not the loop variable a has exceeded the test number k (step S158). If the CPU 11 determines that the loop variable a has not exceeded the test number k (step S158: NO), the process proceeds to step S142. When the CPU 11 determines that the loop variable a has exceeded the test number k (step S158: YES), the CPU 11 ends the failure location specifying process and ends the process.

本実施の形態では誤った抽出を行ったテスト番号を短時間で抽出することができる。   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と同等であり、簡潔のため記載を省略する。
Embodiment 3
Embodiment 3 of the present invention will be described below in detail with reference to the drawings showing the embodiment. FIG. 31 is a block diagram illustrating a hardware group of the information processing apparatus 1 according to the third 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.

情報処理装置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 information processing apparatus 1 is stored in a reading unit 15 such as a disk drive in a portable recording medium 16A such as a CD-ROM, a DVD (Digital Versatile Disc) disk, a memory card, or a USB (Universal Serial Bus) memory. May be read and stored in the storage unit 12. Further, a semiconductor memory 16B such as a flash memory storing the program may be mounted in the information processing apparatus 1. The communication unit 17 is, for example, a wireless LAN card or a mobile phone communication module, and is connected to another server computer via the communication network N. The program can be downloaded from another server computer (not shown) connected by the communication unit 17 via the communication network N such as the Internet. The contents will be described below.

図31に示す情報処理装置1は、上述した各種ソフトウェア処理を実行するプログラムを、可搬型記録媒体16A又は半導体メモリ16Bから読み取り、あるいは、通信網Nを介して他のサーバコンピュータ(図示せず)からダウンロードする。当該プログラムは、プログラム12Pとしてインストールされ、記憶部12にロードして実行される。これより上述した情報処理装置1として機能する。   The information processing apparatus 1 shown in FIG. 31 reads a program for executing the above-described various software processes from the portable recording medium 16A or the semiconductor memory 16B, or another server computer (not shown) via the communication network N. Download from. The program is installed as a program 12P, loaded into the storage unit 12, and executed. This functions as the information processing apparatus 1 described above.

図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 information processing apparatus 1 according to the third embodiment. When the CPU 11 executes the program 12P, the information processing apparatus 1 operates as follows. The obtaining unit 11a obtains the number of the first data group extracted under the first extraction condition by the extraction program 13P from the data group and the number of the second data group extracted under the second extraction condition from the data group by the extraction program 13P. The estimation unit 11b includes the number of first estimation data groups to be extracted from the data group according to the second extraction condition and the number of second estimation data groups to be extracted from the first data group according to the second extraction condition. And the number of added data groups is estimated. The data determination unit 11c determines whether or not the estimated number of added data groups matches the acquired number of second data groups.

以上の実施の形態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 Supplementary Note 1 or Supplementary Note 2, wherein the first data group or the second data group is a matched character string in the first extraction condition or the second extraction condition.
(Appendix 4)
The program according to any one of appendix 1 to appendix 3, 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.
(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 Supplementary Note 1 to Supplementary Note 4, wherein the first data group or the second data group is a combination of character strings that match in the first extraction condition or the second extraction condition.
(Appendix 6)
The program according to any one of appendix 1 to appendix 5, which compares the elements of the first data group and the elements of the first estimated data group.
(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 storage unit 12P control program 13P extraction program 13 input unit 14 output unit T1 random table T2 rewrite table T3 work table T4 count table T5 combination table T6 overwrite table T7 master table T8 correct answer table 12T data table

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.
前記第1抽出条件又は第2抽出条件はデータ群に含まれる文字列と抽出する文字列とが一致することを条件とし、
前記第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抽出条件はデータ群に含まれる文字列の一部と抽出する文字列とが一致することを条件とする
請求項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.
JP2013257435A 2013-12-12 2013-12-12 Program, information processing apparatus and information processing method Active JP6264009B2 (en)

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)

* Cited by examiner, † Cited by third party
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

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