JP7391766B2 - Test script generation system, test script generation method, electronic control device - Google Patents
Test script generation system, test script generation method, electronic control device Download PDFInfo
- Publication number
- JP7391766B2 JP7391766B2 JP2020095023A JP2020095023A JP7391766B2 JP 7391766 B2 JP7391766 B2 JP 7391766B2 JP 2020095023 A JP2020095023 A JP 2020095023A JP 2020095023 A JP2020095023 A JP 2020095023A JP 7391766 B2 JP7391766 B2 JP 7391766B2
- Authority
- JP
- Japan
- Prior art keywords
- test script
- script
- test
- recommendation
- extraction unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000013515 script Methods 0.000 title claims description 419
- 238000012360 testing method Methods 0.000 title claims description 307
- 238000000034 method Methods 0.000 title claims description 69
- 238000000605 extraction Methods 0.000 claims description 124
- 230000015572 biosynthetic process Effects 0.000 claims description 33
- 238000003786 synthesis reaction Methods 0.000 claims description 31
- 238000004458 analytical method Methods 0.000 claims description 26
- 239000000284 extract Substances 0.000 claims description 22
- 238000005516 engineering process Methods 0.000 claims description 7
- 238000010801 machine learning Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 description 57
- 238000010586 diagram Methods 0.000 description 33
- 238000012986 modification Methods 0.000 description 29
- 230000004048 modification Effects 0.000 description 29
- 230000006870 function Effects 0.000 description 23
- 230000000694 effects Effects 0.000 description 9
- 238000012804 iterative process Methods 0.000 description 8
- 101100328887 Caenorhabditis elegans col-34 gene Proteins 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000011056 performance test Methods 0.000 description 3
- 101100524639 Toxoplasma gondii ROM3 gene Proteins 0.000 description 2
- 230000007488 abnormal function Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 230000002194 synthesizing effect Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明は、テストスクリプト生成システム、テストスクリプト生成方法、および電子制御装置に関する。 The present invention relates to a test script generation system, a test script generation method, and an electronic control device.
ソフトウエアの大規模化や高度化に伴い、ソフトウエアのテスト項目が増加している。テストの全てを手作業で行うことは困難なので、テストを実行するためのプログラムであるテストスクリプトを自動生成するニーズがある。特許文献1にはプログラム部品を組み合わせて所望のプログラムを合成するプログラム合成装置において、予め分類されたプログラム部品を記憶する部品記憶手段と、前記プログラム部品の分類に基づき所望のプログラムの概略処理手順を指定する処理手順指定手段と、前記部品記憶手段に記憶されたプログラム部品から前記概略処理手順に対応するプログラム部品を選択する部品選択手段と、前記部品選択手段で選択されたプログラム部品を結合してプログラムを合成する合成手段と、前記合成手段で合成されたプログラムの性能を評価する評価手段と、を具備することを特徴とするプログラム合成装置が開示されている。
As software becomes larger and more sophisticated, the number of software test items is increasing. Since it is difficult to perform all tests manually, there is a need to automatically generate test scripts, which are programs for executing tests.
特許文献1に記載されている発明では、概略処理手順が指定されていることが前提であり、テスト条件の漏れに対処できない。
The invention described in
本発明の第1の態様によるテストスクリプト生成システムは、テストを実行するためのプログラムであるテストスクリプトを複数取得する入力部と、前記テストスクリプトを複数のパートに分割する分割部と、前記複数のパートに対応するキーワードを抽出して属性として関連付けるキーワード抽出部と、前記テストスクリプト、前記複数のパート、および前記属性を記憶する記憶部と、予め定義された2以上の属性カテゴリに基づいて作成された整理表の各セルに対して前記テストスクリプトを割り当てるテストスクリプト整理部と、前記整理表において前記テストスクリプトが割り当てられていない少なくとも1つのセルをターゲットエリアとし、前記ターゲットエリアとはいずれか第1の属性カテゴリの属性値が異なるベーススクリプトを選択し、前記ターゲットエリアおよび前記ベーススクリプトと比較して前記第1の属性カテゴリとは異なる第2の属性カテゴリの属性値が異なる1組の参考スクリプトを選択するレコメンド抽出部と、前記レコメンド抽出部が選択する前記ベーススクリプトおよび前記1組の参考スクリプトに基づき前記ターゲットエリアに対応する新たなテストスクリプトを作成するレコメンド合成部と、を備える。
本発明の第2の態様によるテストスクリプト生成方法は、テストを実行するためのプログラムであるテストスクリプトを複数取得する入力部を有する電子制御装置が実行するテストスクリプト生成方法であって、テストスクリプトを複数のパートに分割することと、複数のパートに対応するキーワードを抽出して属性として関連付けることと、予め定義された2以上の属性カテゴリに基づいて作成された整理表の各セルに対して前記テストスクリプトを割り当てることと、整理表においてテストスクリプトが割り当てられていない少なくとも1つのセルをターゲットエリアとし、ターゲットエリアとはいずれか第1の属性カテゴリの属性値が異なるベーススクリプトを選択し、ターゲットエリアおよびベーススクリプトと比較して第1の属性カテゴリとは異なる第2の属性カテゴリの属性値が異なる1組の参考スクリプトの選択を行うことと、選択により選択されるベーススクリプトおよび1組の参考スクリプトに基づきターゲットエリアに対応する新たなテストスクリプトを作成することとを含む。
本発明の第3の態様による電子制御装置は、テストを実行するためのプログラムであるテストスクリプトを複数取得する入力部と、テストスクリプトを複数のパートに分割する分割部と、複数のパートに対応するキーワードを抽出して属性として関連付けるキーワード抽出部と、テストスクリプト、複数のパート、および属性を記憶する記憶部と、予め定義された2以上の属性カテゴリに基づいて作成された整理表の各セルに対してテストスクリプトを割り当てるテストスクリプト整理部と、整理表においてテストスクリプトが割り当てられていない少なくとも1つのセルをターゲットエリアとし、ターゲットエリアとはいずれか第1の属性カテゴリの属性値が異なるベーススクリプトを選択し、ターゲットエリアおよびベーススクリプトと比較して第1の属性カテゴリとは異なる第2の属性カテゴリの属性値が異なる1組の参考スクリプトを選択するレコメンド抽出部と、レコメンド抽出部が選択するベーススクリプトおよび1組の参考スクリプトに基づきターゲットエリアに対応する新たなテストスクリプトを作成するレコメンド合成部と、を備える。
A test script generation system according to a first aspect of the present invention includes: an input unit that acquires a plurality of test scripts that are programs for executing a test; a dividing unit that divides the test script into a plurality of parts; a keyword extraction unit that extracts keywords corresponding to parts and associates them as attributes; a storage unit that stores the test script, the plurality of parts, and the attributes; a test script organizer that allocates the test script to each cell in the organized table; and at least one cell to which the test script is not assigned in the organized table is set as a target area, and the target area is any one of the first a set of reference scripts having different attribute values in a second attribute category different from the first attribute category compared to the target area and the base script; The present invention includes a recommendation extraction unit that selects a recommendation extraction unit, and a recommendation synthesis unit that creates a new test script corresponding to the target area based on the base script and the set of reference scripts selected by the recommendation extraction unit.
A test script generation method according to a second aspect of the present invention is a test script generation method executed by an electronic control device having an input unit for acquiring a plurality of test scripts, which are programs for executing a test. dividing into multiple parts, extracting keywords corresponding to multiple parts and associating them as attributes, and performing the above for each cell of a sorting table created based on two or more predefined attribute categories. Assign a test script, set at least one cell to which no test script is assigned in the organizing table as a target area, select a base script that has a different attribute value in the first attribute category from the target area, and and selecting a set of reference scripts having different attribute values in a second attribute category different from the first attribute category compared to the base script, and the base script and the set of reference scripts selected by the selection. This includes creating new test scripts that correspond to the target area based on the
An electronic control device according to a third aspect of the present invention includes an input unit that acquires a plurality of test scripts that are programs for executing a test, a division unit that divides the test script into a plurality of parts, and is compatible with the plurality of parts. a keyword extraction unit that extracts keywords to be used and associate them as attributes; a storage unit that stores test scripts, multiple parts, and attributes; and each cell of a sorting table created based on two or more predefined attribute categories. A test script organizer that assigns test scripts to a test script, and a base script that has at least one cell to which no test script is assigned in the organizer table as a target area, and that has a different attribute value in the first attribute category than the target area. and a recommendation extraction unit that selects a set of reference scripts that have different attribute values in a second attribute category that is different from the first attribute category when compared with the target area and base script; The present invention includes a recommendation synthesis unit that creates a new test script corresponding to a target area based on a base script and a set of reference scripts.
本発明によれば、漏れているテスト条件に対応するテストスクリプトを生成できる。 According to the present invention, a test script corresponding to missing test conditions can be generated.
―第1の実施の形態―
以下、図1~図18を参照して、電子制御装置の第1の実施の形態を説明する。
-First embodiment-
A first embodiment of the electronic control device will be described below with reference to FIGS. 1 to 18.
(ハードウエア構成)
図1は、電子制御装置1のハードウエア構成図である。電子制御装置1は、中央演算装置であるCPU2と、読み出し専用の記憶装置であるROM3と、読み書き可能な記憶装置であるRAM4と、不揮発性の記憶装置である記憶部5と、を備える。CPU2がROM3に格納されるプログラムをRAM4に展開して実行することで後述する複数の機能を実現する。
(Hardware configuration)
FIG. 1 is a hardware configuration diagram of the
ただしCPU2、ROM3、およびRAM4の組み合わせの代わりに書き換え可能な論理回路であるFPGA(Field Programmable Gate Array)や特定用途向け集積回路であるASIC(Application Specific Integrated Circuit)により実現されてもよい。またCPU2、ROM3、およびRAM4の組み合わせの代わりに、異なる構成の組み合わせ、たとえばCPU2、ROM3、RAM4とFPGAの組み合わせにより実現されてもよい。
However, instead of the combination of the
(機能構成)
図2は、電子制御装置1の機能構成図である。電子制御装置1はその機能として、入力部11と、分割部12と、キーワード抽出部13と、テストスクリプト整理部15と、レコメンド抽出部16と、レコメンド合成部17と、レコメンド出力部18と、を備える。記憶部5には、テストスクリプト記憶部51と、スニペット記憶部52と、属性カテゴリ記憶部54とが含まれる。
(Functional configuration)
FIG. 2 is a functional configuration diagram of the
入力部11は電子制御装置1の外部からテストスクリプトを取得する。入力部11はたとえば、通信インタフェース、記憶媒体読み取り装置、およびキーボードのいずれかである。入力部11が取得したテストスクリプトは、テストスクリプト記憶部51に格納される。ただし取得したテストスクリプトを一時的にRAM6に保存してもよい。
The
テストスクリプトとは、プログラムのテストの手順を記載した文章である。本実施の形態では、テストスクリプトにはスニペットの区切りを示す情報やスニペットの処理内容を示すキーワードの情報が含まれている。また本実施の形態では、テストスクリプトはテキストファイルであり、先頭から末尾に順番に処理が実行されることを前提とする。ただしテストスクリプトはコンピュータが処理可能であればよく、人間には理解が困難な記載がされていてもよいし、あらかじめ処理規則が定められていれば、記載の順番と処理の順番は一致しなくてもよい。 A test script is a document that describes the procedure for testing a program. In this embodiment, the test script includes information indicating the delimitation of snippets and keyword information indicating the processing content of the snippets. Further, in this embodiment, it is assumed that the test script is a text file, and that processing is executed in order from the beginning to the end. However, test scripts only need to be processable by a computer; they may contain descriptions that are difficult for humans to understand, and if processing rules are determined in advance, the order of description and processing order may not match. It's okay.
分割部12は、テストスクリプト記憶部51に格納されたテストスクリプトを処理対象とし、それぞれのテストスクリプトを1以上のスニペットに分割してその情報をスニペット記憶部52に格納する。スニペットとは、テストスクリプトを何らかの基準に沿って切り分けたものである。キーワード抽出部13は、それぞれのスニペットからキーワードを抽出し、抽出したキーワードの情報をスニペット記憶部52に格納する。テストスクリプト整理部15は、テストスクリプト記憶部51に格納されたテストスクリプトを属性情報に基づき整理する。
The dividing
レコメンド抽出部16は、作成対象であるターゲットエリアに対応するテストスクリプトを作成するために必要なテストスクリプトへの処理操作を特定する。レコメンド合成部17は、レコメンド抽出部16が特定した処理操作を既存のテストスクリプトに適用してレコメンド候補テストスクリプトを作成する。レコメンド出力部18は、レコメンド合成部17が作成したレコメンド候補テストスクリプトを、新たに提案するテストスクリプトとして出力する。なおレコメンド出力部18の出力は、そのまま新たなテストスクリプトとして使用されてもよいし、オペレータが取捨選択してもよい。
The
図3は、テストスクリプト記憶部51の概念図である。テストスクリプト記憶部51には、それぞれのテストスクリプトが識別子であるテストスクリプトIDと関連付けられて格納される。なお図3はテストスクリプト記憶部51に格納される情報を概念的に示しているにすぎず、複数の表を組み合わせることで図3に示す情報が得られてもよいし、情報の格納形式は表形式に限定されない。以下では特に説明しないが、図4以降も同様である。
FIG. 3 is a conceptual diagram of the test
図4は、スニペット記憶部52の概念図である。スニペット記憶部52には、それぞれのスニペットの情報が格納される。スニペット記憶部52はたとえば複数のレコードを有するテーブルとして概念的に説明でき、スニペットを特定する情報と、スニペットの属性情報とを含んで構成される。スニペットを特定する情報とは、スニペットの識別子であるスニペットID、テストスクリプト記憶部51にも含まれるテストスクリプトID、開始行番号、および終了行番号である。
FIG. 4 is a conceptual diagram of the
図4に示す例では、スニペットIDが「1」のスニペットは、テストスクリプトIDが「1」のスクリプトの「1」行目から「25」行目に記載されていることがわかる。さらにそのスニペットは、「データ設定」、「正常系機能テスト」、「機能A」の属性値を持つことがわかる。 In the example shown in FIG. 4, it can be seen that the snippet with the snippet ID "1" is written from the "1" line to the "25" line of the script with the test script ID "1". Furthermore, it can be seen that the snippet has attribute values of "data setting", "normal system function test", and "function A".
図5は、属性カテゴリ記憶部54の概念図である。属性カテゴリ記憶部54には、属性カテゴリの一覧、および属性カテゴリごとの属性値の一覧が格納される。図5は一例にすぎず、属性カテゴリは少なくとも2つあればよく、上限はない。属性カテゴリごとの属性値は少なくとも2つあればよく、属性カテゴリごとに属性値の数が異なってもよい。属性カテゴリはさらに、テストレベルやテストベースが挙げられる。テストレベルの属性値はたとえば、単体テスト、結合テスト、およびシステムテストが挙げられる。またベストベースの属性値は、仕様ベースや経験ベースなどが挙げられる。図4の各スニペットの属性値は、図5の属性値一覧から選択される。
FIG. 5 is a conceptual diagram of the attribute
(処理概要)
図6は電子制御装置1によるテストスクリプト作成処理の概要を示す図である。テストスクリプト作成処理は以下に説明する2つの繰り返し処理、すなわちL1およびL2を含む。
(Outline of processing)
FIG. 6 is a diagram showing an overview of the test script creation process by the
電子制御装置1はまず、電子制御装置1の外部で作成されたそれぞれのテストスクリプトに対して繰り返し処理L1を実行する。繰り返し処理L1は、入力部11、分割部12、およびキーワード抽出部13が動作する。繰り返し処理L1では、最初に入力部11が1つのテストスクリプトを取得する。分割部12は、入力部11が取得したテストスクリプトを1以上のスニペットに分割する。キーワード抽出部13は、分割部12により分割されたスニペットのそれぞれに対して、キーワードの抽出を行う。詳しくは後述するが、抽出されたキーワードに基づきスニペットの属性値も決定される。キーワード抽出部13の処理が完了すると、次のテストスクリプトを処理対象として再び入力部11が動作する。
The
繰り返し処理L1が完了すると、入力部11が取得したテストスクリプトがテストスクリプト記憶部51に格納され、分割部12およびキーワード抽出部13の処理結果がスニペット記憶部52に格納される。テストスクリプト記憶部51に格納された情報は繰り返し処理L2において参照される。スニペット記憶部52に格納された情報はテストスクリプト整理部15により参照される。属性カテゴリ記憶部54に格納されている情報は、テストスクリプト整理部15および繰り返し処理L2において参照される。
When the iterative process L1 is completed, the test script acquired by the
テストスクリプト整理部15は、スニペット記憶部52および属性カテゴリ記憶部54を参照して、入力部11に入力されたテストスクリプトの相関関係をスニペットの属性の観点から整理する。具体的にはテストスクリプト整理部15は、属性カテゴリ記憶部54に記載された属性カテゴリから2以上の属性カテゴリを選択し、選択した属性カテゴリにおける属性値の組合せとテストスクリプトの対応とを整理する。テストスクリプト整理部15が選択する属性カテゴリは、あらかじめオペレータが指定してもよいし、自動処理により決定してもよい。
The test
次の繰り返し処理L2では、テストスクリプト整理部15が選択した属性カテゴリの属性値の全ての組合せを対象として処理が行われる。具体的にはテストスクリプトを作成する対象となるターゲットを順番に変更して、レコメンド抽出部16およびレコメンド合成部17が動作する。たとえばテストスクリプト整理部15が選択した属性カテゴリが「テスト種別」と「機能」であり、「テスト種別」の属性値が4つ、「機能」の属性値が5つ存在する場合には、その組み合わせは20通りなので、繰り返し処理L2は20回実行される。
In the next iterative process L2, processing is performed for all combinations of attribute values of the attribute categories selected by the
レコメンド抽出部16は、作成対象であるターゲットエリアに対応するテストスクリプトを作成するために必要な、既存のテストスクリプトへの処理操作を特定する。レコメンド合成部17は、レコメンド抽出部16が特定した処理操作を既存のテストスクリプトに適用してレコメンド候補テストスクリプトを作成する。繰り返し処理L2が完了すると、レコメンド出力部18はレコメンド合成部17が作成したレコメンド候補テストスクリプトを出力する。
The
(分割部)
図7は分割部12の処理を示すフローチャートであり、図8は分割部12およびキーワード抽出部13の処理を示す具体例である。分割部12はまずステップS121において、入力部11が読み込んだテストスクリプトをスニペットに分割する。本実施の形態におけるスニペットの分割は、テストスクリプトに記載される特定の文字列、たとえば「//SNIPPET」を区切り文字として用いることで実現できる。たとえば図8に示す例では、図示左側のテストスクリプトには文字列「//SNIPPET」が2つ含まれているので、「//SNIPPET」を区切りとして3つのスニペットに分割される。
(divided part)
FIG. 7 is a flowchart showing the processing of the dividing
続くステップS122において分割部12は、ステップS121において分割したそれぞれのスニペットにスニペットIDを付与する。スニペットIDはそれぞれのスニペットを識別可能であれば文字の種類および文字数は任意である。図8に示す例では連番の数字「1」~「3」をそれぞれのスニペットに付与している。以上が分割部12の処理である。
In subsequent step S122, the dividing
(キーワード抽出部)
図9はキーワード抽出部13の処理を示すフローチャートである。キーワード抽出部13は、入力部11が読み込んだ1つのテストスクリプトを処理対象として図9に示す処理を実行する。キーワード抽出部13はまずステップS131において、テストスクリプトに含まれるスニペットを1つ選択する。ただし本ステップにおいて選択するスニペットは、過去に本ステップにおいて選択していないスニペットである。続くステップS132ではキーワード抽出部13は、テキストデータを読み進める。たとえばキーワード抽出部13は、ステップS131において選択したスニペットの現在の読み込み位置から1行だけ読み込む。
(Keyword extraction part)
FIG. 9 is a flowchart showing the processing of the
続くステップS133ではキーワード抽出部13は、キーワードを発見したか否かを判断する。キーワードはたとえば、図8の例に示すように「//TestscriptKeyword:」や「//keyword:」に続いて記載される場合には、ステップS133ではステップS132において読み込んだ情報に「//TestscriptKeyword:」や「//keyword:」が含まれるか否かを判断する。キーワード抽出部13はステップS133において、キーワードを発見したと判断する場合にはステップS134に進み、キーワードを発見しないと判断する場合はステップS137に進む。
In the following step S133, the
ステップS134ではキーワード抽出部13は、キーワードの対象がテストスクリプト全体であるのか、それともスニペットのみであるのかを判断する。たとえばキーワード抽出部13は、ステップS132において読み込んだ情報に「//TestscriptKeyword:」が含まれる場合にはキーワードの対象がテストスクリプト全体であると判断する。また、たとえばキーワード抽出部13は、ステップS132において読み込んだ情報に「//keyword:」が含まれる場合にはキーワードの対象がスニペットのみであると判断する。キーワード抽出部13は、キーワードの対象がテストスクリプト全体であると判断する場合はステップS135に進み、キーワードの対象がスニペットであると判断する場合はステップS136に進む。
In step S134, the
ステップS135ではキーワード抽出部13は、当該テストスクリプトから生じた全スニペットに当該キーワードを属性値として付与してステップS137に進む。ステップS136ではキーワード抽出部13は、対象スニペットに当該キーワードを属性値として付与してステップS137に進む。
In step S135, the
ステップS137ではキーワード抽出部13は、ステップS131において選択したスニペット内に未確認のテキストが存在するか否かを判断する。キーワード抽出部13は未確認のテキストが存在すると判断する場合はステップS132に戻り、未確認のテキストが存在しないと判断する場合はステップS138に進む。ステップS138ではキーワード抽出部13は、入力部11が読み込んだ処理対象のテストスクリプトに未確認のスニペットが存在するか否かを判断する。キーワード抽出部13は、未確認のスニペットが存在すると判断する場合はステップS131に戻り、未確認のスニペットが存在しないと判断する場合は図9に示す処理を終了する。
In step S137, the
(テストスクリプト整理部)
図10はテストスクリプト整理部15の処理を示すフローチャートである。以下では図11に示す具体例を参照して図10の処理を説明する。テストスクリプト整理部15は、まずステップS151において採用する属性カテゴリを決定する。テストスクリプト整理部15で扱う属性カテゴリは、テストスクリプト全体を対象とする属性値を含む属性カテゴリである。採用する属性カテゴリは、あらかじめ定められていてもよいし、キーワード抽出部13が「//TestscriptKeyword:」から抽出した全ての属性値の属性カテゴリでもよい。さらにステップS151においてテストスクリプト整理部15は、決定した属性カテゴリの数に応じた次元数の整理表を作成する。図11では、2つの属性カテゴリが決定された2次元の整理表を示している。なお図11では説明の便宜のために各セルにC11~C54の名称を付している。
(Test Script Organizing Department)
FIG. 10 is a flowchart showing the processing of the
続くステップS152ではテストスクリプト整理部15は、ステップS151において作成した整理表の各次元に各属性のカテゴリを関連付ける。図11に示す例では、第1の次元、たとえば行に機能を関連付け、第2の次元、たとえば列にテスト種別を割り当てている。
In the following step S152, the
続くステップS153ではテストスクリプト整理部15は、ステップS151において作成した整理表のカラムにそれぞれの属性カテゴリの属性値を設定してステップS154に進む。図11に示す例では、それぞれの行に機能A~機能Eの5つの属性値を設定し、それぞれの列に正常系機能テスト、異常系機能テスト、時間精度性能テスト、および処理速度性能テストの4つの属性値を設定する。そのため図11に示す例では、5と4の積である総計20のセルが存在する。繰り返し処理L2では、それぞれのセルをターゲットとして処理が行われる。
In the following step S153, the
ステップS154ではテストスクリプト整理部15は、未整理のテストスクリプトが存在するか否かを判断する。ステップS154を初回に実行する場合には必ず肯定判断がされる。テストスクリプト整理部15は、未整理のテストスクリプトが存在すると判断する場合はステップS155に進み、未整理のテストスクリプトが存在しないと判断する場合は図10に示す処理を終了する。ステップS155ではテストスクリプト整理部15は、未整理のテストスクリプトを1つ選択する。続くステップS156ではテストスクリプト整理部15は、ステップS155において選択したテストスクリプトに付与されているスニペット属性の属性値を確認する。
In step S154, the
続くステップS157ではテストスクリプト整理部15は、整理表内の属性値の組合せに対応する箇所にテストスクリプトを関連付ける。たとえば図11に示す例では、機能Aおよび正常系機能テストのスニペット属性を有する「テストスクリプト1」が左上のセルに関連付けられる様子を示している。その後テストスクリプト整理部15はステップS154に戻る。
In the following step S157, the
(レコメンド抽出部)
図12は、レコメンド抽出部16の処理を示すフローチャートである。レコメンド抽出部16は、テストスクリプト整理部15が決定する2以上の属性カテゴリの組合せ(以下では「ターゲットエリア」と呼ぶ)のそれぞれを順番にターゲットとして図12に示す処理を実行する。すなわち図12に示す処理を開始する時点で、ターゲットエリアは特定されている。以下では図11に示す例において左上のC11のセルがターゲットエリアとして特定されている場合を例に説明する。まずレコメンド抽出部16は、ステップS161においてベーススクリプトを抽出する。ステップS161の詳細は後述する。なおステップS161において抽出されるベーススクリプトは1または複数である。
(Recommendation extraction part)
FIG. 12 is a flowchart showing the processing of the
続くステップS162ではレコメンド抽出部16は、ベーススクリプトを1つ選択する。続くステップS163ではレコメンド抽出部16は、ステップS162において選択したベーススクリプト(以下、「選択ベーススクリプト」)に対する参考スクリプトのペアを抽出する。ステップS163の詳細は後述する。なおステップS163において抽出される参考スクリプトのペアは1または複数である。続くステップS164ではレコメンド抽出部16は、参考するスクリプトのペアを1つ選択する。続くステップS165ではレコメンド抽出部16は、ステップS164において選択した参考スクリプトとターゲットエリアとの差分からレコメンド候補スニペットを抽出する。ステップS165の詳細は後述する。
In the following step S162, the
続くステップS166ではレコメンド抽出部16は、未確認の参考スクリプトが他に存在するか否かを判断する。レコメンド抽出部16は、未確認の参考スクリプトが他に存在すると判断する場合はステップS164に戻り、未確認の参考スクリプトが他に存在しないと判断する場合はステップS167に進む。ステップS167ではレコメンド抽出部16は、未確認のベーススクリプトが他に存在するか否かを判断する。レコメンド抽出部16は、未確認のベーススクリプトが他に存在すると判断する場合はステップS162に戻り、未確認のベーススクリプトが他に存在しないと判断する場合は図12に示す処理を終了する。
In the following step S166, the
図13は、図12のステップS161の詳細を示すフローチャートである。ステップS161-1ではレコメンド抽出部16は、属性カテゴリを1つ選択する。たとえば図11に示す例において「機能」の属性カテゴリを選択する。続くステップS161-2ではレコメンド抽出部16は、選択した属性カテゴリの属性値を、ターゲットエリアとは異なる値に変更する。たとえば図11に示す例においてターゲットエリアがC11のセルの場合には、ステップS161-1において選択した属性カテゴリ「機能」の属性値をターゲットエリアの「機能A」とは異なる値、たとえば「機能B」を選択する。
FIG. 13 is a flowchart showing details of step S161 in FIG. 12. In step S161-1, the
続くステップS161-3ではレコメンド抽出部16は、ステップS161-2において選択した属性値と、ターゲットエリアのステップS161-1において選択していない属性カテゴリの属性値との組合せに対応するテストスクリプトが存在するか否かを判断する。図11に示す例において、ステップS161-2において選択した属性値は「機能B」であり、ターゲットエリアのステップS161-1において選択していない属性カテゴリの属性値は「正常系機能テスト」である。図11に示す例では、「機能B」と「正常系機能テスト」の組合せに対応する「テストスクリプト5」が存在するので本ステップは肯定判断される。ステップS161-3においてレコメンド抽出部16は肯定判断する場合はステップS161-4に進み、否定判断する場合はステップS161-1に戻る。
In the following step S161-3, the
ステップS161-4ではレコメンド抽出部16は、ステップS161-3において存在を確認したテストスクリプトをベーススクリプトの1つとして抽出する。念のために記載すると、このベーススクリプトは普遍的なものではなく、処理対象とするターゲットエリアごとに定められるものである。
In step S161-4, the
続くステップS161-5ではレコメンド抽出部16は、当該ベーススクリプトに含まれるスニペットの属性値を記録する。続くステップS161-6ではレコメンド抽出部16は、他に未確認のテストスクリプト属性の属性カテゴリや属性値が存在するか否かを判断する。レコメンド抽出部16はステップS161-6において肯定判断する場合にはステップS161-1に戻り、否定判断する場合には図13に示す処理を終了する。
In the following step S161-5, the
すなわちレコメンド抽出部16は、ターゲットエリアからいずれか1つの属性カテゴリの属性値のみが異なるテストスクリプトをベーススクリプトとして抽出する。図11に示す例では、上述した「テストスクリプト5」だけでなく、「テストスクリプト13」、「テストスクリプト2」、および「テストスクリプト3」、がベーススクリプトとして抽出される。以上が図13の説明である。
That is, the
図14は、図12のステップS163の詳細を示すフローチャートである。前述のようにステップS163の処理が開始される前にステップS162においていずれかのベーススクリプトが「選択ベーススクリプト」として選択されている。以下の図14の具体例では図11において左上に存在するC11のセルがターゲットエリアに設定され、その下のC21のセルが選択ベーススクリプトとして選択されていることを前提として説明する。 FIG. 14 is a flowchart showing details of step S163 in FIG. 12. As described above, before the process of step S163 is started, one of the base scripts is selected as the "selected base script" in step S162. The specific example shown in FIG. 14 below will be explained on the assumption that the cell C11 located at the upper left in FIG. 11 is set as the target area, and the cell C21 below it is selected as the selection base script.
図14においてレコメンド抽出部16はまずステップS163-1において、ターゲットエリアと選択ベーススクリプトとで属性値が一致する属性カテゴリを1つ選択する。以下ではここで選択する属性カテゴリを「選択属性カテゴリ」と呼ぶ。たとえば図11の例では、ターゲットエリアと選択ベーススクリプトとで属性値が一致する属性カテゴリは「テスト種別」の1つだけなので、この「テスト種別」が選択属性カテゴリとして選択される。
In FIG. 14, the
続くステップS163-2ではレコメンド抽出部16は、ターゲットエリアと選択ベーススクリプトに対して選択属性カテゴリの属性値を同一の別の値に変更したセルを選択する。たとえば図11の例において、選択属性カテゴリである「テスト種別」の属性値を「異常系機能テスト」に変更したセルC12およびセルC22を選択する。
In the subsequent step S163-2, the
続くステップS163-3ではレコメンド抽出部16は、ステップS163-2において選択したセルに対応するテストスクリプトが両方存在するか否かを判断する。たとえば図11に示す例では、セルC12に対応する「テストスクリプト2」が存在し、セルC22に対応する「テストスクリプト6」が存在するので肯定判断される。レコメンド抽出部16は、ステップS163-3において肯定判断する場合はステップS163-4に進み、否定判断する場合はステップS163-7に進む。
In the following step S163-3, the
ステップS163-4ではレコメンド抽出部16は、ステップS163-3において存在を確認した2つのテストスクリプトの類似度を算出する。この類似度は、キーワード抽出部13が「//keyword:」から抽出した属性値に基づいて行われる。類似度の算出はたとえばレーベンシュタイン等のアルゴリズムを用いることができる。たとえば、各属性値に何らかの1文字を割り当てておき、各テストスクリプトに含まれるスニペットの属性値を対応する文字に置き換えることで文字列が得られる。この文字列に対してレーベンシュタイン等のアルゴリズムを用いることができる。続くステップS163-5ではレコメンド抽出部16は、算出した類似度が所定の閾値以上であるか否かを判断する。レコメンド抽出部16は、閾値以上と判断する場合にはステップS163-6に進み、閾値未満と判断する場合はステップS163-7に進む。
In step S163-4, the
ステップS163-6ではレコメンド抽出部16は、ステップS163-3において存在を確認した2つのテストスクリプトを参考スクリプトのペアとしてステップS163-7に進む。ステップS163-7ではレコメンド抽出部16は、他に未確認の属性カテゴリや属性値が存在するか否かを判断する。レコメンド抽出部16は、未確認の属性カテゴリまたは未確認の属性値が存在すると判断する場合はステップS163-1に戻り、未確認の属性カテゴリおよび属性値が存在しないと判断する場合は図14に示す処理を終了する。すなわちレコメンド抽出部16は、ステップS163-1およびステップS163-2において全ての組合せを網羅するように属性カテゴリおよび属性値を変更する。以上が図14に示す処理の説明である。
In step S163-6, the
図15は、図12のステップS165の詳細を示すフローチャートである。図15の処理は、図11だけでなく図16に示すテストスクリプトの具体例も参照して説明する。ステップS165-1ではレコメンド抽出部16は、各参考スクリプトに含まれるスニペットの属性値を取得する。
FIG. 15 is a flowchart showing details of step S165 in FIG. 12. The process in FIG. 15 will be described with reference not only to FIG. 11 but also to a specific example of the test script shown in FIG. 16. In step S165-1, the
続くステップS165-2ではレコメンド抽出部16は、各参考スクリプトの属性値をスニペットの記載順に並べる。続くステップS165-3ではレコメンド抽出部16は、ステップS165-2において並べた2つの参考スクリプトの属性値が完全に一致するか否かを判断する。レコメンド抽出部16は完全に一致すると判断する場合はステップS165-5に進み、何らかの相違点があると判断する場合はステップS165-4に進む。
In the subsequent step S165-2, the
ステップS165-4ではレコメンド抽出部16は、参考スクリプトの相違情報、すなわち2つの参考スクリプトの相違が、追加、削除、および変更のいずれに該当するか、およびその相違内容を記録してステップS165-5に進む。本ステップの処理内容を図16を参照して具体的に説明する。
In step S165-4, the
図16では(a)~(c)の3つの例を示しており、いずれの例も図示左側がターゲットエリアと属性値の重複が比較的少ない参考スクリプトのスニペットの属性値を示しており、図示右側がターゲットエリアと属性値の重複が比較的多い参考スクリプトのスニペットの属性値を示している。ターゲットエリアがセルC11、参考スクリプトのペアが「テストスクリプト2」と「テストスクリプト6」の場合には、図示左側が「テストスクリプト6」、図示右側が「テストスクリプト2」のスニペットの属性値に該当する。
Figure 16 shows three examples (a) to (c), and in each example, the left side of the illustration shows the attribute value of the snippet of the reference script with relatively little overlap between the target area and the attribute value. The right side shows the attribute values of the reference script snippet, which has a relatively large number of overlapping attribute values with the target area. If the target area is cell C11 and the reference script pair is "
図16(a)に示す例では、「テストスクリプト6」はスニペットの属性値が先頭から順番に、「A、B、C」であり、「テストスクリプト2」スニペットの属性値が先頭から順番に、「A、C」である。そのためレコメンド抽出部16は、種別を「削除」、内容を「AとCの間を削除」と記録する。
In the example shown in FIG. 16(a), the attribute values of the snippets of "
図16(b)に示す例では、「テストスクリプト6」はスニペットの属性値が先頭から順番に、「A、C」であり、「テストスクリプト2」スニペットの属性値が先頭から順番に、「A、B、C」である。そのためレコメンド抽出部16は、種別を「追加」、内容を「AとCの間にBを追加」と記録する。
In the example shown in FIG. 16(b), the attribute values of the snippets of "
図16(c)に示す例では、「テストスクリプト6」はスニペットの属性値が先頭から順番に、「A、B、C」であり、「テストスクリプト2」スニペットの属性値が先頭から順番に、「A、D、C」である。そのためレコメンド抽出部16は、種別を「変更」、内容を「AとCの間をDに変更」と記録する。以上がステップS165-4の具体例である。
In the example shown in FIG. 16(c), the attribute values of the snippets of "
ステップS165-5ではレコメンド抽出部16は、スニペット属性の列の最後まで確認済であるか否かを判断し、確認済であると判断する場合は図15に示す処理を終了し、全ての確認が完了していないと判断する場合はステップS165-2に戻る。以上が図15に示す処理の説明である。
In step S165-5, the
(レコメンド合成部)
図17は、レコメンド合成部17の処理を示すフローチャートである。図17の処理を図18に示す具体例も参照して説明する。図17に示す処理を開始する時点で、ターゲットエリアは特定されている。以下では図11に示す例において左上のC11のセルがターゲットエリアとして特定されている場合を例に説明する。
(Recommendation synthesis department)
FIG. 17 is a flowchart showing the processing of the
まずレコメンド合成部17は、ステップS171においてターゲットエリアに対応するベーススクリプトと参考スクリプトの組合せを1つ選択する。図11に示す例では、ターゲットエリアがセルC11であり、ステップS171ではたとえばベーススクリプトとしてセルC21に関連付けられる「テストスクリプト5」が選択され、参考スクリプトとして「テストスクリプト2」および「テストスクリプト6」が選択される。
First, the
続くステップS172ではレコメンド合成部17は、ベーススクリプトと参考スクリプトの両方について、コードおよびスニペットの情報を取得する。続くステップS173ではレコメンド合成部17は、参考スクリプトの相違情報、すなわち、追加、削除、および変更のいずれであるかの情報と、相違の内容の情報とを取得する。続くステップS175ではレコメンド合成部17は、ベーススクリプトのスニペットの属性値の並びに対して参考スクリプトの相違情報と同じ属性の並びを検索する。たとえば図11および図16に示す例において、「テストスクリプト6」に対する「テストスクリプト2」の相違点が「AとCの間を削除」の場合は、「テストスクリプト5」から「A、*、C」の並びを検索する。ただしここで「*」は任意の属性値を意味する。ここで、「*」に対応する属性値は1つの属性値であってもよいし、複数の属性値の並びであってもよい。
In the subsequent step S172, the
続くステップS176ではレコメンド合成部17は、ステップS175における検索により発見されたか否かを判断し、発見されたと判断する場合はステップS177に進み、発見されないと判断する場合はステップS178に進む。ステップS177ではレコメンド合成部17は、参考スクリプトの相違情報を適用してレコメンド候補テストスクリプトを作成する。ここで図18を参照して具体例を説明する。図18には(a)~(c)の3つの例が示してあり、この3つは図16の(a)~(c)にそれぞれ対応する。すなわちそれぞれの例において参考スクリプトの相違情報が異なる。
In the following step S176, the
図18(a)に示す例は図16(a)に対応しており、ベーススクリプトである「テストスクリプト5」のスニペットの属性値が先頭から順番に、「A、E、C」の場合にステップS176では次の処理が行われる。すなわち参考スクリプトの相違情報が「AとCの間を削除」なので、「A、C」が生成される。
The example shown in FIG. 18(a) corresponds to FIG. 16(a), and the attribute values of the snippet of the base script "
図18(b)に示す例は図16(b)に対応しており、ベーススクリプトである「テストスクリプト5」のスニペットの属性値が先頭から順番に、「A、C」の場合にステップS176では次の処理が行われる。すなわち参考スクリプトの相違情報が「AとCの間にBを追加」なので、「A、B、C」が生成される。
The example shown in FIG. 18(b) corresponds to FIG. 16(b), and if the attribute values of the snippets of the base script "
図18(c)に示す例は図16(c)に対応しており、ベーススクリプトである「テストスクリプト5」のスニペットの属性値が先頭から順番に、「A、E、C」の場合にステップS176では次の処理が行われる。すなわち参考スクリプトの相違情報が「AとCの間をDに変更」なので、「A、D、C」が生成される。以上がステップS176の具体例である。
The example shown in FIG. 18(c) corresponds to FIG. 16(c), and if the attribute values of the snippet of the base script "
続くステップS178ではレコメンド合成部17は、他にチェックすべき組み合わせが存在するか否かを判断する。レコメンド合成部17は、他にチェックすべき組み合わせが存在すると判断する場合はステップS171に戻り、他にチェックすべき組み合わせが存在しないと判断する場合は図17に示す処理を終了する。
In the following step S178, the
上述した第1の実施の形態によれば、次の作用効果が得られる。
(1)電子制御装置1は、テストを実行するためのプログラムであるテストスクリプトを複数取得する入力部11と、テストスクリプトを複数のパート、すなわち複数のスニペットに分割する分割部と12、複数のパートに対応するキーワードを抽出して属性として関連付けるキーワード抽出部13と、テストスクリプト、複数のパート、および属性を記憶する記憶部5と、予め定義された2以上の属性カテゴリに基づいて作成された整理表の各セルに対してテストスクリプトを割り当てるテストスクリプト整理部15と、整理表においてテストスクリプトが割り当てられていない少なくとも1つのセルをターゲットエリアとし、ターゲットエリアとはいずれか第1の属性カテゴリの属性値が異なるベーススクリプトを選択し、ターゲットエリアおよびベーススクリプトと比較して第1の属性カテゴリとは異なる第2の属性カテゴリの属性値が異なる1組の参考スクリプトを選択するレコメンド抽出部16と、レコメンド抽出部16が選択するベーススクリプトおよび1組の参考スクリプトに基づきターゲットエリアに対応する新たなテストスクリプトを作成するレコメンド合成部17と、を備える。
According to the first embodiment described above, the following effects can be obtained.
(1) The
レコメンド抽出部16は、少なくともテストスクリプトが割り当てられていないセル、換言すると漏れている属性値の組合せをターゲットエリアとする。そのため、漏れているテスト条件に対応するテストスクリプトを生成できる。
The
(2)レコメンド抽出部16は、ベーススクリプトと参考スクリプトとが類似する場合に1組の参考スクリプトの相違を相違情報として抽出する。レコメンド合成部17は、ベーススクリプトおよび相違情報に基づきターゲットエリアに対応する新たなテストスクリプトを作成する。
(2) When the base script and the reference script are similar, the
(3)分割部12は、テストスクリプトにコメント文として記載された所定の文字列、たとえば「//SNIPPET」に基づいてテストスクリプトを複数のパートに分割する。そのため電子制御装置1は、テストスクリプトの分割を確実に実行できる。
(3) The dividing
(4)キーワード抽出部13は、テストスクリプトに含まれる所定の文字列、たとえば「//TestscriptKeyword:」や「//keyword:」に基づいてキーワードを抽出する。そのため電子制御装置1は、キーワードの抽出を確実に実行できる。
(4) The
(5)レコメンド抽出部16は、整理表の全てのセルをターゲットエリアとする。そのため、すでに作成されている同一の属性値の組合せを対象とするテストスクリプトに対して、別のテストスクリプトを提案することができる。
(5) The
(変形例1)
上述した第1の実施の形態では、テストスクリプト整理部15が整理して得られる全ての属性カテゴリの組合せをターゲットエリアとした。具体的には、図11に示すC11~C54の全てのセルを処理対象とした。しかし電子制御装置1は、テストスクリプトが存在しないセルのみをターゲットエリアに設定してもよい。たとえば図11に示す例では、セルC14、C33、およびC52のみをターゲットエリアに設定してもよい。
(Modification 1)
In the first embodiment described above, the target area is the combination of all attribute categories obtained by sorting by the test
この変形例1によれば、テストスクリプトの生成が最も求められるのは存在しないテスト条件なので、少ない処理で大きな成果が得られる。 According to the first modification, the generation of a test script is most required for a test condition that does not exist, so a great result can be obtained with a small amount of processing.
(変形例2)
上述した第1の実施の形態では、テストスクリプト整理部15が整理して得られる全ての属性カテゴリの組合せをターゲットエリアとした。具体的には、図11に示すC11~C54の全てのセルを処理対象とした。しかし電子制御装置1は、特定の属性値だけをターゲットエリアに設定してもよい。たとえば「時間精度性能テスト」の属性値を有する図11におけるC13、C23、C33、C43、およびC53のセルのみをターゲットエリアに設定してもよい。
(Modification 2)
In the first embodiment described above, the target area is the combination of all attribute categories obtained by sorting by the test
この変形例2によれば、次の作用効果が得られる。
(6)レコメンド抽出部16は、所定の属性値に対応するセルをターゲットエリアとする。そのため電子制御装置1は、注目する特定の条件のみテストを拡充することができる。
According to this
(6) The
(変形例3)
上述した第1の実施の形態では、ベーススクリプトの選択に特に制限を設けなかった。しかしレコメンド抽出部16は、特定の条件を満たすテストスクリプトのみをベーススクリプトとして採用してもよい。たとえばレコメンド抽出部16は、ターゲットエリアごとに特定の属性値を有するテストスクリプトのみをベーススクリプトとして採用してもよい。
(Modification 3)
In the first embodiment described above, no particular restrictions were placed on the selection of base scripts. However, the
図19は、本変形例を実現するために記憶部5に追加で格納されるベーススクリプト選択情報T1の一例を示す図である。ベーススクリプト選択情報T1では、ターゲットエリアの属性値とベーススクリプトの属性値との組合せごとに、ベーススクリプトとして採用することの許可および不許可が記載されている。ただし図19は一例にすぎず、不許可を原則としてベーススクリプト選択情報T1に許可とする組合せのみを記載してもよいし、許可を原則としてベーススクリプト選択情報T1に不許可とする組合せのみを記載してもよい。
FIG. 19 is a diagram showing an example of base script selection information T1 that is additionally stored in the
この変形例3によれば、次の作用効果が得られる。
(7)レコメンド抽出部16は、所定の属性値を有するテストスクリプトをベーススクリプトに選択する。そのため電子制御装置1は、特定のテストスクリプトをベースとして新たなテストスクリプトを作成できる。
According to this
(7) The
(変形例4)
上述した第1の実施の形態では、参考スクリプトの選択に特に制限を設けなかった。しかしレコメンド抽出部16は、特定の条件を満たすテストスクリプトのみを参考スクリプトとして採用してもよい。さらにレコメンド抽出部16は、特定の条件を満たすテストスクリプトのみをベーススクリプトとして採用したうえで、別の特定の条件を満たすテストスクリプトのみを参考スクリプトとして採用してもよい。
(Modification 4)
In the first embodiment described above, no particular restrictions were placed on the selection of reference scripts. However, the
図20は、本変形例による電子制御装置1の動作の一例を説明する図である。機能A~Cが類似しており、点線枠で示すセルをターゲットエリアとする場合に、参考スクリプトに関する条件として、機能Bと機能Cに限定してもよい。この場合は、参考スクリプトの範囲は実線枠に限定される。さらに、ベーススクリプトとして「テストスクリプト1」を選択した場合は、その参考スクリプトは「テストスクリプト5」と「テストスクリプト7」のペア、または「テストスクリプト9」と「テストスクリプト11」のペアに限定される。
FIG. 20 is a diagram illustrating an example of the operation of the
図21は、本変形例を実現するために記憶部5に追加で格納される参考スクリプト選択情報T2の一例を示す図である。参考スクリプト選択情報T2では、ターゲットエリアの属性値と参考スクリプトの属性値との組合せごとに、参考スクリプトとして採用することの許可および不許可が記載されている。ただし図21は一例にすぎず、不許可を原則として参考スクリプト選択情報T2に許可とする組合せのみを記載してもよいし、許可を原則として参考スクリプト選択情報T2に不許可とする組合せのみを記載してもよい。
FIG. 21 is a diagram showing an example of reference script selection information T2 that is additionally stored in the
この変形例4によれば、次の作用効果が得られる。
(8)レコメンド抽出部16は、所定の属性値を有するテストスクリプトを参考スクリプトに選択する。そのため電子制御装置1は、特定のテストスクリプトを参考スクリプトとして新たなテストスクリプトを作成できる。
According to this
(8) The
(変形例5)
上述した第1の実施の形態では、テストスクリプト整理部15が決定する2以上の属性カテゴリの組合せのそれぞれを順番にターゲットとして1回ずつ、レコメンド抽出部16およびレコメンド合成部17が処理を行った。換言すると第1の実施の形態では、各ターゲットエリアを対象に1回しか処理を行わなかった。しかしレコメンド抽出部16およびレコメンド合成部17は、同一のターゲットエリアを対象に複数回の処理を行ってもよい。なお以下では、全てのターゲットエリアを対象に1回目の処理を行うことを「1週目」と表現し、同様に2回目を「2週目」と呼ぶ。
(Modification 5)
In the first embodiment described above, the
図22は、本変形例の電子制御装置1の動作を説明する図である。図22に示す例では、第1の実施の形態において示した図11とは異なり、入力部11に入力されるテストスクリプトの数が少ない。具体的には、テストスクリプトはC11,C12,C14,C21,C33,C34,C41,C42,およびC54のセルにのみ関連付けられている。この例においては、レコメンド抽出部16およびレコメンド合成部17が全ターゲットエリアを対象に1週目の処理を行っても、図22において実線の四角を描画したセルでしかレコメンド候補テストスクリプトを作成できない。
FIG. 22 is a diagram illustrating the operation of the
この場合に、C23およびC43では当初からテストスクリプトが存在しないので、該当するテストを実施できない点で特に問題となる。そこで本変形例では、1週目の処理により新たに作成されたレコメンド候補テストスクリプトを入力部11が取得したテストスクリプトと同列に扱って2週目の処理を行う。これにより、たとえばC23をターゲットエリアとする場合には、1週目に作成されたC13に対応するレコメンド候補テストスクリプトをベーススクリプト、C11およびC21に対応するテストスクリプトを参考スクリプトとして作成できる。
In this case, a particular problem arises in that the C23 and C43 do not have test scripts from the beginning, so the corresponding tests cannot be performed. Therefore, in this modified example, the second week's process is performed by treating the recommendation candidate test script newly created by the first week's process in the same manner as the test script acquired by the
この変形例5によれば、少ないテストスクリプトを用いて多数のテストスクリプトを生成できる。 According to this fifth modification, a large number of test scripts can be generated using a small number of test scripts.
(変形例6)
上述した第1の実施の形態では、分割部12はテストスクリプトに記載された所定の文字列に基づいてテストスクリプトを複数のスニペットに分割した。しかし分割部12は、機械学習およびコードクローン解析技術の少なくとも一方を用いることで、テストスクリプトを複数のスニペットに分割してもよい。
(Modification 6)
In the first embodiment described above, the dividing
この変形例6によれば、次の作用効果が得られる。
(9)分割部12は、機械学習およびコードクローン解析技術の少なくとも一方を用いてテストスクリプトを複数のパートに分割する。そのため、テストスクリプトにあらかじめ特別な処理を施す必要がなく、テストスクリプトの事前準備が容易である。
According to this
(9) The dividing
(変形例7)
上述した第1の実施の形態では、キーワード抽出部13はテストスクリプトに記載された所定の文字列に基づいてテストスクリプトからキーワードを抽出した。しかしキーワード抽出部13は、機械学習およびコードクローン解析技術の少なくとも一方を用いることで、テストスクリプトからキーワードを抽出してもよい。
(Modification 7)
In the first embodiment described above, the
この変形例7によれば、次の作用効果が得られる。
(10)キーワード抽出部13は、機械学習およびコードクローン解析技術の少なくとも一方を用いてキーワード抽出を行う。そのため、テストスクリプトにあらかじめ特別な処理を施す必要がなく、テストスクリプトの事前準備が容易である。
According to this
(10) The
―第2の実施の形態―
図23~図29を参照して、電子制御装置の第2の実施の形態を説明する。以下の説明では、第1の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第1の実施の形態と同じである。本実施の形態では、主に、スニペット類似分析部をさらに備え、記憶部にスニペット関係情報記憶部が含まれる点で、第1の実施の形態と異なる。
-Second embodiment-
A second embodiment of the electronic control device will be described with reference to FIGS. 23 to 29. In the following description, the same components as in the first embodiment are given the same reference numerals, and differences will be mainly explained. Points not particularly described are the same as the first embodiment. The present embodiment differs from the first embodiment mainly in that a snippet similarity analysis section is further provided, and the storage section includes a snippet related information storage section.
図23は、第2の実施の形態における電子制御装置1Aの機能構成図である。第1の実施の形態との相違点は、スニペット類似分析部14を有する点、および記憶部5にスニペット関係情報記憶部53を有する点である。スニペット類似分析部14はスニペット同士の類似性を類似スコアとして算出する。スニペット関係情報記憶部53にはスニペット類似分析部14が算出した結果が格納される。
FIG. 23 is a functional configuration diagram of the
図24は、スニペット関係情報記憶部53の概念図である。スニペット関係情報記憶部53にはスニペットIDのペアと、そのペアの類似スコアとの組合せが格納される。スニペット関係情報記憶部53は、スニペット類似分析部14により情報が書き込まれる。
FIG. 24 is a conceptual diagram of the snippet related
図25は、電子制御装置1Aによるテストスクリプト作成処理の概要を示す図である。第1の実施の形態との相違点は、図示右側にスニペット類似分析部14およびスニペット関係情報記憶部53が追加されている点である。スニペット関係情報記憶部53に格納される情報はレコメンド抽出部16において利用される。
FIG. 25 is a diagram showing an overview of the test script creation process by the
(スニペット類似分析部)
図26は、スニペット類似分析部14の処理を示すフローチャートである。ステップS141ではスニペット類似分析部14は、異なるテストスクリプトからスニペットを1個ずつ選択する。続くステップS142ではスニペット類似分析部14は、ステップS141において選択した2つのスニペット間の類似スコアを算出する。この類似スコアの算出には、たとえばコードクローン解析技術を用いることができる。続くステップS143ではスニペット類似分析部14は、他に未確認のスニペットの組合せが存在するか否かを判断する。スニペット類似分析部14は未確認のスニペットの組合せが存在すると判断する場合はステップS141に戻り、未確認のスニペットの組合せが存在しないと判断する場合は図26に示す処理を終了する。
(Snippet Similarity Analysis Department)
FIG. 26 is a flowchart showing the processing of the snippet
すなわちスニペット類似分析部14は、分割部12が分割したスニペットのおおよそ全ての組合せについて類似スコアを算出する。例外としてスニペット類似分析部14は、同一のテストスクリプトに存在するスニペット同士の類似スコアは算出しない。ただしここでは不要な計算を抑制することを目的として、同一のテストスクリプトに存在するスニペット同士の類似スコアを計算しないだけであり、同一のテストスクリプトに存在するスニペット同士の類似スコアを計算してもよい。
That is, the snippet
(レコメンド抽出部)
図27は、第2の実施の形態におけるレコメンド抽出部16の処理を示すフローチャートであり、第1の実施の形態における図14に相当する。第1の実施の形態との違いは、ステップS163-4がステップS163A-4に置き換わっている点であり、その他のステップの処理は第1の実施の形態と同様である。ステップS163A-4では、スニペット類似分析部14が算出する類似スコアを用いて参考スクリプトのペアとベーススクリプトの類似度を計算する。本ステップの処理を図28を参照して詳述する。
(Recommendation extraction part)
FIG. 27 is a flowchart showing the processing of the
図28は、図27におけるステップS163A-4の詳細を示すフローチャートである。まずステップS163A-4-1ではレコメンド抽出部16は、2つのテストスクリプト内の各スニペットに含まれるスニペット属性の列から類似度を計算する。この計算にはたとえばレーベンシュタイン等のアルゴリズムが利用できる。続くステップS163A-4-2ではレコメンド抽出部16は、参考スクリプトとベーススクリプトにおいて、共通する属性を持つスニペットを抽出する。
FIG. 28 is a flowchart showing details of step S163A-4 in FIG. 27. First, in step S163A-4-1, the
続くステップS163A-4-3ではレコメンド抽出部16は、共通する属性を持つスニペット間の類似スコアを取得する。続くステップS163A-4-4ではレコメンド抽出部16は、類似スコアが高い場合はスニペット属性の列から計算した類似度を上げる。以上が図28に示す処理の説明である。
In the following step S163A-4-3, the
図29は、本実施の形態の効果の一例を説明する図である。図29に示す例では、属性値Bを含むベーススクリプトに対して実装が異なる2つの参考スクリプトのペアが存在する。第1参考スクリプトは属性値B’を含み、第2参考スクリプトは属性値B’’を含む。属性値B、B’、B’’のスクリプトを比較するとBに対するB’の類似度の方が、Bに対するB’’の類似度の方が高い。本実施の形態では図28に示す処理により、ベーススクリプトと類似する参考スクリプトは類似度が上がるので、第2参考スクリプトが選択される。そのため本変形例では、レコメンド候補はベーススクリプトとの相違を小さくできる。 FIG. 29 is a diagram illustrating an example of the effects of this embodiment. In the example shown in FIG. 29, there are two pairs of reference scripts with different implementations for the base script including attribute value B. The first reference script includes an attribute value B', and the second reference script includes an attribute value B''. When comparing the scripts of attribute values B, B', and B'', the degree of similarity of B' to B is higher than that of B'' to B. In this embodiment, through the process shown in FIG. 28, the degree of similarity of reference scripts similar to the base script increases, so the second reference script is selected. Therefore, in this modification, the difference between the recommendation candidate and the base script can be reduced.
上述した第2の実施の形態によれば、次の作用効果が得られる。
(11)電子制御装置1Aは、複数のパート間のコードの類似の度合いを示す類似スコアを算出するスニペット類似分析部14を備える。レコメンド抽出部16は、類似スコアに基づき参考スクリプトを選択する。そのため電子制御装置1Aは、新たに作成するテストスクリプトのベーススクリプトとの相違を小さくできる。
According to the second embodiment described above, the following effects can be obtained.
(11) The
上述した各実施の形態および変形例において、電子制御装置が有する構成および機能は、複数のハードウエア装置、すなわちシステムによって実現されてもよい。たとえば2台以上のコンピュータにより図2に示した機能が実現されてもよい。 In each of the embodiments and modifications described above, the configuration and functions of the electronic control device may be realized by a plurality of hardware devices, that is, systems. For example, the functions shown in FIG. 2 may be realized by two or more computers.
上述した各実施の形態および変形例において、機能ブロックの構成は一例に過ぎない。別々の機能ブロックとして示したいくつかの機能構成を一体に構成してもよいし、1つの機能ブロック図で表した構成を2以上の機能に分割してもよい。また各機能ブロックが有する機能の一部を他の機能ブロックが備える構成としてもよい。 In each of the embodiments and modifications described above, the configuration of the functional blocks is merely an example. Several functional configurations shown as separate functional blocks may be integrated, or a configuration shown in one functional block diagram may be divided into two or more functions. Further, a configuration may be adopted in which some of the functions of each functional block are provided in other functional blocks.
上述した各実施の形態および変形例において、電子制御装置1が実行するプログラムはROM2に格納されるとしたが、プログラムは記憶部5に格納されていてもよい。また、電子制御装置1が不図示の入出力インタフェースを備え、必要なときに入出力インタフェースと電子制御装置1が利用可能な媒体を介して、他の装置からプログラムが読み込まれてもよい。ここで媒体とは、例えば入出力インタフェースに着脱可能な記憶媒体、または通信媒体、すなわち有線、無線、光などのネットワーク、または当該ネットワークを伝搬する搬送波やディジタル信号、を指す。また、プログラムにより実現される機能の一部または全部がハードウエア回路やFPGAにより実現されてもよい。
In each of the embodiments and modifications described above, the program executed by the
上述した各実施の形態および変形例は、それぞれ組み合わせてもよい。上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。 Each of the embodiments and modifications described above may be combined. Although various embodiments and modifications have been described above, the present invention is not limited to these. Other embodiments considered within the technical spirit of the present invention are also included within the scope of the present invention.
1、1A…電子制御装置
5…記憶部
11…入力部
12…分割部
13…キーワード抽出部
14…スニペット類似分析部
15…テストスクリプト整理部
16…レコメンド抽出部
17…レコメンド合成部
18…レコメンド出力部
1, 1A...
Claims (13)
前記テストスクリプトを複数のパートに分割する分割部と、
前記複数のパートに対応するキーワードを抽出して属性として関連付けるキーワード抽出部と、
前記テストスクリプト、前記複数のパート、および前記属性を記憶する記憶部と、
予め定義された2以上の属性カテゴリに基づいて作成された整理表の各セルに対して前記テストスクリプトを割り当てるテストスクリプト整理部と、
前記整理表において前記テストスクリプトが割り当てられていない少なくとも1つのセルをターゲットエリアとし、前記ターゲットエリアとはいずれか第1の属性カテゴリの属性値が異なるベーススクリプトを選択し、前記ターゲットエリアおよび前記ベーススクリプトと比較して前記第1の属性カテゴリとは異なる第2の属性カテゴリの属性値が異なる1組の参考スクリプトを選択するレコメンド抽出部と、
前記レコメンド抽出部が選択する前記ベーススクリプトおよび前記1組の参考スクリプトに基づき前記ターゲットエリアに対応する新たなテストスクリプトを作成するレコメンド合成部と、を備えるテストスクリプト生成システム。 an input section that obtains multiple test scripts that are programs for executing tests;
a dividing unit that divides the test script into multiple parts;
a keyword extraction unit that extracts keywords corresponding to the plurality of parts and associates them as attributes;
a storage unit that stores the test script, the plurality of parts, and the attributes;
a test script organizer that assigns the test script to each cell of a organizer table created based on two or more predefined attribute categories;
Select at least one cell to which the test script is not assigned in the sorting table as a target area, select a base script that has a different attribute value in the first attribute category from the target area, and select the target area and the base script. a recommendation extraction unit that selects a set of reference scripts that have different attribute values in a second attribute category that is different from the first attribute category when compared with the script;
A test script generation system comprising: a recommendation synthesis unit that creates a new test script corresponding to the target area based on the base script selected by the recommendation extraction unit and the set of reference scripts.
前記レコメンド抽出部は、前記ベーススクリプトと前記参考スクリプトとが類似する場合に前記1組の参考スクリプトの相違を相違情報として抽出し、
前記レコメンド合成部は、前記ベーススクリプトおよび前記相違情報に基づき前記ターゲットエリアに対応する前記新たなテストスクリプトを作成するテストスクリプト生成システム。 The test script generation system according to claim 1,
The recommendation extraction unit extracts a difference between the set of reference scripts as difference information when the base script and the reference script are similar;
The recommendation synthesis unit is a test script generation system that creates the new test script corresponding to the target area based on the base script and the difference information.
前記複数のパート間のコードの類似の度合いを示す類似スコアを算出するスニペット類似分析部をさらに備え、
前記レコメンド抽出部は、前記類似スコアに基づき前記参考スクリプトを選択するテストスクリプト生成システム。 The test script generation system according to claim 2,
further comprising a snippet similarity analysis unit that calculates a similarity score indicating the degree of code similarity between the plurality of parts,
The recommendation extraction unit is a test script generation system that selects the reference script based on the similarity score.
前記分割部は、前記テストスクリプトにコメント文として記載された所定の文字列に基づいて前記テストスクリプトを前記複数のパートに分割するテストスクリプト生成システム。 The test script generation system according to claim 1,
The dividing unit is a test script generation system that divides the test script into the plurality of parts based on a predetermined character string written as a comment sentence in the test script.
前記キーワード抽出部は、前記テストスクリプトに含まれる所定の文字列に基づいてキーワードを抽出するテストスクリプト生成システム。 The test script generation system according to claim 1,
The keyword extraction unit is a test script generation system that extracts keywords based on a predetermined character string included in the test script.
前記レコメンド抽出部は、所定の属性値に対応する前記セルを前記ターゲットエリアとするテストスクリプト生成システム。 The test script generation system according to claim 1,
The recommendation extraction unit is a test script generation system in which the target area is the cell corresponding to a predetermined attribute value.
前記レコメンド抽出部は、所定の属性値を有するテストスクリプトを前記ベーススクリプトに選択するテストスクリプト生成システム。 The test script generation system according to claim 1,
The recommendation extraction unit is a test script generation system that selects a test script having a predetermined attribute value as the base script.
前記レコメンド抽出部は、所定の属性値を有するテストスクリプトを前記参考スクリプトに選択するテストスクリプト生成システム。 The test script generation system according to claim 1,
The recommendation extraction unit is a test script generation system that selects a test script having a predetermined attribute value as the reference script.
前記分割部は、機械学習およびコードクローン解析技術の少なくとも一方を用いて前記テストスクリプトを前記複数のパートに分割するテストスクリプト生成システム。 The test script generation system according to claim 1,
The dividing unit is a test script generation system that divides the test script into the plurality of parts using at least one of machine learning and code clone analysis technology.
前記キーワード抽出部は、機械学習およびコードクローン解析技術の少なくとも一方を用いてキーワード抽出を行うテストスクリプト生成システム。 The test script generation system according to claim 1,
The keyword extraction unit is a test script generation system that extracts keywords using at least one of machine learning and code clone analysis technology.
前記レコメンド抽出部は、前記整理表の全てのセルを前記ターゲットエリアとするテストスクリプト生成システム。 The test script generation system according to claim 1,
The recommendation extraction unit is a test script generation system that uses all cells of the organizing table as the target area.
前記テストスクリプトを複数のパートに分割することと、
前記複数のパートに対応するキーワードを抽出して属性として関連付けることと、
予め定義された2以上の属性カテゴリに基づいて作成された整理表の各セルに対して前記テストスクリプトを割り当てることと、
前記整理表において前記テストスクリプトが割り当てられていない少なくとも1つのセルをターゲットエリアとし、前記ターゲットエリアとはいずれか第1の属性カテゴリの属性値が異なるベーススクリプトを選択し、前記ターゲットエリアおよび前記ベーススクリプトと比較して前記第1の属性カテゴリとは異なる第2の属性カテゴリの属性値が異なる1組の参考スクリプトの選択を行うことと、
前記選択により選択される前記ベーススクリプトおよび前記1組の参考スクリプトに基づき前記ターゲットエリアに対応する新たなテストスクリプトを作成することとを含む、テストスクリプト生成方法。 A test script generation method executed by an electronic control device having an input unit for acquiring a plurality of test scripts that are programs for executing tests, the method comprising:
dividing the test script into multiple parts;
Extracting keywords corresponding to the plurality of parts and associating them as attributes;
Assigning the test script to each cell of a organizing table created based on two or more predefined attribute categories;
Select at least one cell to which the test script is not assigned in the sorting table as a target area, select a base script that has a different attribute value in the first attribute category from the target area, and select the target area and the base script. Selecting a set of reference scripts having different attribute values in a second attribute category different from the first attribute category compared to the script;
A test script generation method comprising: creating a new test script corresponding to the target area based on the base script selected by the selection and the set of reference scripts.
前記テストスクリプトを複数のパートに分割する分割部と、
前記複数のパートに対応するキーワードを抽出して属性として関連付けるキーワード抽出部と、
前記テストスクリプト、前記複数のパート、および前記属性を記憶する記憶部と、
予め定義された2以上の属性カテゴリに基づいて作成された整理表の各セルに対して前記テストスクリプトを割り当てるテストスクリプト整理部と、
前記整理表において前記テストスクリプトが割り当てられていない少なくとも1つのセルをターゲットエリアとし、前記ターゲットエリアとはいずれか第1の属性カテゴリの属性値が異なるベーススクリプトを選択し、前記ターゲットエリアおよび前記ベーススクリプトと比較して前記第1の属性カテゴリとは異なる第2の属性カテゴリの属性値が異なる1組の参考スクリプトを選択するレコメンド抽出部と、
前記レコメンド抽出部が選択する前記ベーススクリプトおよび前記1組の参考スクリプトに基づき前記ターゲットエリアに対応する新たなテストスクリプトを作成するレコメンド合成部と、を備える電子制御装置。
an input section that obtains multiple test scripts that are programs for executing tests;
a dividing unit that divides the test script into multiple parts;
a keyword extraction unit that extracts keywords corresponding to the plurality of parts and associates them as attributes;
a storage unit that stores the test script, the plurality of parts, and the attributes;
a test script organizer that assigns the test script to each cell of a organizer table created based on two or more predefined attribute categories;
Select at least one cell to which the test script is not assigned in the sorting table as a target area, select a base script that has a different attribute value in the first attribute category from the target area, and select the target area and the base script. a recommendation extraction unit that selects a set of reference scripts that have different attribute values in a second attribute category that is different from the first attribute category when compared with the script;
An electronic control device comprising: a recommendation synthesis section that creates a new test script corresponding to the target area based on the base script selected by the recommendation extraction section and the set of reference scripts.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020095023A JP7391766B2 (en) | 2020-05-29 | 2020-05-29 | Test script generation system, test script generation method, electronic control device |
DE112021001800.0T DE112021001800T5 (en) | 2020-05-29 | 2021-02-01 | CHECKSCRIPT GENERATION SYSTEM, CHECKSCRIPT GENERATION METHOD AND ELECTRONIC CONTROL DEVICE |
PCT/JP2021/003608 WO2021240886A1 (en) | 2020-05-29 | 2021-02-01 | Test script generation system, test script generation method, and electronic control device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020095023A JP7391766B2 (en) | 2020-05-29 | 2020-05-29 | Test script generation system, test script generation method, electronic control device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021189798A JP2021189798A (en) | 2021-12-13 |
JP7391766B2 true JP7391766B2 (en) | 2023-12-05 |
Family
ID=78744190
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020095023A Active JP7391766B2 (en) | 2020-05-29 | 2020-05-29 | Test script generation system, test script generation method, electronic control device |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP7391766B2 (en) |
DE (1) | DE112021001800T5 (en) |
WO (1) | WO2021240886A1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002342117A (en) | 2001-05-17 | 2002-11-29 | Fujitsu Ltd | Device, method and program for supporting test specification generation and recording medium |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3601949B2 (en) | 1996-09-17 | 2004-12-15 | 株式会社東芝 | Program synthesizing apparatus and program synthesizing method |
-
2020
- 2020-05-29 JP JP2020095023A patent/JP7391766B2/en active Active
-
2021
- 2021-02-01 WO PCT/JP2021/003608 patent/WO2021240886A1/en active Application Filing
- 2021-02-01 DE DE112021001800.0T patent/DE112021001800T5/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002342117A (en) | 2001-05-17 | 2002-11-29 | Fujitsu Ltd | Device, method and program for supporting test specification generation and recording medium |
Also Published As
Publication number | Publication date |
---|---|
DE112021001800T5 (en) | 2023-02-16 |
JP2021189798A (en) | 2021-12-13 |
WO2021240886A1 (en) | 2021-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8176050B2 (en) | Method and apparatus of supporting creation of classification rules | |
JP2017004123A (en) | Determination apparatus, determination method, and determination program | |
US20220101643A1 (en) | Information processing device, discerning method, and discerning program | |
JP6977724B2 (en) | Signature creation device, signature creation method, signature creation program, and software judgment system | |
US10438097B2 (en) | Recognition device, recognition method, and computer program product | |
JP2016009344A (en) | Test case generation program, test case generation method, and test case generation device | |
JP2010061176A (en) | Text mining device, text mining method, and text mining program | |
JP7391766B2 (en) | Test script generation system, test script generation method, electronic control device | |
US11262994B2 (en) | Method and device for identifying type of variable in binary | |
CN106776348B (en) | Test case management method and device | |
JP7256935B2 (en) | Dictionary creation device and dictionary creation method | |
CN111488400B (en) | Data classification method, device and computer readable storage medium | |
JP5439235B2 (en) | Document classification method, document classification device, and program | |
CN110990834A (en) | Static detection method, system and medium for android malicious software | |
WO2018096686A1 (en) | Verification program, verification device, verification method, index generation program, index generation device, and index generation method | |
CN110837494B (en) | Method and device for identifying unspecified diagnosis coding errors of medical record home page | |
JP6677624B2 (en) | Analysis apparatus, analysis method, and analysis program | |
CN110221971B (en) | Search engine testing method and device, electronic equipment and storage medium | |
JP2022029885A (en) | Confirmation item generation device, confirmation item generation method, and program | |
JP6859831B2 (en) | Generation program, generation device and generation method | |
JP2006268545A (en) | File-coupling device, file-coupling method, and program | |
JP2018049492A (en) | Analysis device, analysis program and analysis method | |
US10489428B2 (en) | Existing system processing specification extractor | |
JP6305356B2 (en) | Specification extraction device, specification extraction method and program | |
KR20220097844A (en) | Apparatus for processing unstructured document capable of extracting units and unit value and method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230127 |
|
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: 20231114 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20231122 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7391766 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |