JP6695437B2 - Management computer and test environment determination method - Google Patents

Management computer and test environment determination method Download PDF

Info

Publication number
JP6695437B2
JP6695437B2 JP2018543496A JP2018543496A JP6695437B2 JP 6695437 B2 JP6695437 B2 JP 6695437B2 JP 2018543496 A JP2018543496 A JP 2018543496A JP 2018543496 A JP2018543496 A JP 2018543496A JP 6695437 B2 JP6695437 B2 JP 6695437B2
Authority
JP
Japan
Prior art keywords
test
test environment
environment
information
test case
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
JP2018543496A
Other languages
Japanese (ja)
Other versions
JPWO2018066040A1 (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of JPWO2018066040A1 publication Critical patent/JPWO2018066040A1/en
Application granted granted Critical
Publication of JP6695437B2 publication Critical patent/JP6695437B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software

Description

本発明は、一つ以上のテストケースによって定義されたテストを行うテスト環境の管理技術に関する。   The present invention relates to a test environment management technique for performing a test defined by one or more test cases.

DevOps等のシステム開発では、ウォータフォール型開発と異なり、迅速かつ継続的なアプリケーションのリリースが要求されることから、複数のテスト環境を用いて膨大な量の回帰テストが実行される。   Unlike waterfall type development, system development such as DevOps requires rapid and continuous application release. Therefore, a huge amount of regression tests are executed using a plurality of test environments.

仮想化技術及びクラウドコンピューティングの普及に伴って、オンプレミス型システムだけではなく、クラウドサービス上の仮想マシン(VM)等のリソースから構成されるテスト環境も利用されている。   With the spread of virtualization technology and cloud computing, not only on-premise systems but also test environments composed of resources such as virtual machines (VM) on cloud services are being used.

効率的なシステム開発の要求に対して、特許文献1に記載の技術が知られている。特許文献1には、「プログラムのテスト網羅性を判断するための再テスト方法において、モジュール修正時の再テスト範囲を、テストデータとテスト対象モジュールの関連情報を基に抽出し、該抽出したテストデータを再実行し、該テストデータについての実行済みテスト結果と今回のテスト結果とを比較し検証する」ことが記載されている。   The technique described in Patent Document 1 is known to meet the demand for efficient system development. In Patent Document 1, "In a retest method for determining the test coverage of a program, a retest range at the time of module modification is extracted based on test data and related information of a test target module, and the extracted test The data is re-executed, and the executed test result for this test data and the test result of this time are compared and verified. "

特開平6−35754号公報JP-A-6-35754

システム開発では複数のテスト環境を用いてテストが行われるため、システム開発の実行コストを削減したいというユーザ要求が存在する。ここで、システム開発の実行コストは、使用料金等の運用コスト、ユーザ操作等の管理コスト、及びテストケースの実行時の計算機の負荷等の処理コスト等を含む。前述したユーザ要求を解決するためには、テストケースで定義されるテストの内容、テスト環境の状態、及びシステム開発の実行コスト等を考慮してテスト環境を決定する必要がある。   In system development, tests are performed using multiple test environments, so there is a user demand to reduce the execution cost of system development. Here, the system development execution cost includes an operation cost such as a usage fee, a management cost such as a user operation, and a processing cost such as a load on a computer when a test case is executed. In order to solve the above-mentioned user request, it is necessary to determine the test environment in consideration of the contents of the test defined in the test case, the state of the test environment, the execution cost of system development, and the like.

例えば、運用コストに着目した場合、以下のような問題がある。商用ソフトウェアを用いるテスト環境を用いてテストケースを実行する場合、本番環境と同等の料金を支払う必要があり、運用コストが増大する。前述の問題の解決方法として、OSS(Open Source Software)を用いたテスト環境を利用する方法が考えられる。しかし、テストケースで定義されるテストの内容によっては、OSSを利用できない場合がある。また、テストケースの実行時にOSSを用いたテスト環境のリソースが不足しているため、当該テスト環境を利用できない可能性がある。   For example, when focusing on operating costs, there are the following problems. When executing a test case using a test environment that uses commercial software, it is necessary to pay the same charges as in the production environment, which increases operating costs. As a method of solving the above-mentioned problem, a method of using a test environment using OSS (Open Source Software) can be considered. However, depending on the content of the test defined in the test case, the OSS may not be available. In addition, there is a possibility that the test environment cannot be used because the resources of the test environment using OSS are insufficient at the time of executing the test case.

テストの内容及びテスト環境の状態の組み合わせは膨大であり、ユーザ要求に合致したテスト環境を決定するためにはユーザの負担が大きい。そのため、管理コストも増大するという問題がある。また、ラウンドロビン方式でテストケースを実行するテスト環境を決定する場合、負荷の高いテストケースが一つのテスト環境に集中し、処理コストが増大するという問題もある。   The number of combinations of test contents and test environment states is enormous, and a user's burden is heavy for determining a test environment that matches a user request. Therefore, there is a problem that the management cost also increases. In addition, when determining a test environment in which a test case is executed by the round robin method, test cases with a high load are concentrated in one test environment, resulting in an increase in processing cost.

本発明は、テストの内容及びテスト環境の状態を考慮して、ユーザ要求に合致したテスト環境を自動的に決定するシステム及び方法を実現する。   The present invention realizes a system and method for automatically determining a test environment that matches a user request in consideration of the content of the test and the state of the test environment.

本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、一つ以上のテストケースを含むテストケースグループを実行する複数のテスト環境が構築された計算機システムと接続する管理計算機であって、前記計算機システムは、複数の計算機を含み、前記管理計算機は、プロセッサ、前記プロセッサに接続されるメモリ、前記プロセッサに接続されるネットワークインタフェースを有し、前記テストケースグループの識別情報、及び前記テストケースグループに含まれるテストケースの特性に基づいて決定された候補テスト環境の識別情報から構成されるエントリを含むグループ情報と、前記テスト環境の状態に関する条件である動的条件を含む条件情報と、を保持し、前記プロセッサは、第1のテストケースグループの実行契機を検出した場合、前記グループ情報を参照して前記第1のテストケースグループの候補テスト環境を特定し、前記候補テスト環境の状態を示す状態情報を取得し、前記条件情報及び前記状態情報に基づいて、前記候補テスト環境の中から前記第1のテストケースグループを実行する実行テスト環境を決定することを特徴とする。   A typical example of the invention disclosed in the present application is as follows. That is, a management computer connected to a computer system in which a plurality of test environments that execute a test case group including one or more test cases is connected, wherein the computer system includes a plurality of computers, and the management computer is A processor, a memory connected to the processor, and a network interface connected to the processor, the candidates being determined based on the identification information of the test case group and the characteristics of the test cases included in the test case group. The processor holds group information including an entry composed of identification information of a test environment and condition information including a dynamic condition which is a condition relating to the state of the test environment, and the processor executes the first test case group. When the trigger is detected, the first group of information is referred to by referring to the group information. A candidate test environment of a Stokes group, obtains state information indicating a state of the candidate test environment, and based on the condition information and the state information, the first test case group from the candidate test environment. It is characterized by determining the execution test environment for executing.

本発明によれば、ユーザ要求に合致したテスト環境を自動的に決定することができる。これによって、システム開発の実行コストを削減することができる。前述した以外の課題、構成及び効果は、以下の実施例の説明によって明らかにされる。   According to the present invention, it is possible to automatically determine the test environment that matches the user request. As a result, the execution cost of system development can be reduced. Problems, configurations and effects other than those described above will be clarified by the following description of the embodiments.

実施例1の計算機システムの一例を示すブロック図である。2 is a block diagram showing an example of a computer system of Example 1. FIG. 実施例1のテストケース情報の一例を示す図である。FIG. 7 is a diagram showing an example of test case information according to the first embodiment. 実施例1の条件情報の一例を示す図である。FIG. 7 is a diagram showing an example of condition information according to the first embodiment. 実施例1のテスト環境情報の一例を示す図である。FIG. 6 is a diagram showing an example of test environment information according to the first embodiment. 実施例1のライセンス情報の一例を示す図である。FIG. 6 is a diagram showing an example of license information according to the first embodiment. 実施例1のグループ情報の一例を示す図である。6 is a diagram showing an example of group information of Example 1. FIG. 実施例1のテスト実行キュー情報の一例を示す図である。FIG. 7 is a diagram showing an example of test execution queue information of the first embodiment. 実施例1の管理サーバが実行する処理の流れを説明するシーケンス図である。FIG. 6 is a sequence diagram illustrating a flow of processing executed by the management server of the first embodiment. 実施例1の管理サーバが実行する処理の流れを説明するシーケンス図である。FIG. 8 is a sequence diagram illustrating a flow of processing executed by the management server according to the first embodiment. 実施例1の静的分類モジュールが実行する静的分類処理の一例を説明するフローチャートである。5 is a flowchart illustrating an example of static classification processing executed by the static classification module according to the first embodiment. 実施例1のグループ生成モジュールが実行するグループ生成処理の一例を説明するフローチャートである。6 is a flowchart illustrating an example of a group generation process executed by the group generation module according to the first embodiment. 実施例1のグループ評価モジュールが実行するグループ評価処理の一例を説明するフローチャートである。6 is a flowchart illustrating an example of a group evaluation process executed by the group evaluation module according to the first embodiment. 実施例1の動的分類モジュールが実行する動的分類処理の一例を説明するフローチャートである。6 is a flowchart illustrating an example of dynamic classification processing executed by the dynamic classification module according to the first embodiment. 実施例1の動的分類モジュールが実行する動的分類処理の一例を説明するフローチャートである。6 is a flowchart illustrating an example of dynamic classification processing executed by the dynamic classification module according to the first embodiment. 実施例1の情報取得モジュールが実行する処理の一例を説明するフローチャートである。6 is a flowchart illustrating an example of processing executed by an information acquisition module according to the first embodiment. 実施例1のコスト算出モジュールが実行する処理の一例を説明するフローチャートである。6 is a flowchart illustrating an example of processing executed by the cost calculation module according to the first embodiment.

以下、本発明の実施例について添付図面を用いて説明する。実施例で用いるテーブルに使用する識別情報は、当該テーブルに一つ以上のカラムを用いてテーブルのエントリを特定できる場合、識別情報のカラムを省略することもできる。また、識別情報は昇順となる識別番号を自動的に割り当てられてもよい。各図において共通の構成については同一の参照符号が付されている。   Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. The identification information used in the table used in the embodiment may be omitted if the entry of the table can be specified by using one or more columns in the table. Further, the identification information may be automatically assigned an identification number in ascending order. In each drawing, the same reference numerals are attached to the common configurations.

実施例1では、ユーザ要求が運用コストの削減である場合の構成及び処理について説明する。クラウド型システム上のテスト環境を使用する場合、使用料金の低いテスト環境を使用し、又は、テスト環境の使用時間を短くすることによって、運用コストを削減できる。ここでは、使用料金の低いテスト環境を使用することによって運用コストの削減を実現する方法及びシステムについて説明する。なお、他のユーザ要求についても同様の構成で同様の機能及び効果を実現できる。   In the first embodiment, the configuration and processing when the user request is to reduce the operating cost will be described. When using the test environment on the cloud type system, the operation cost can be reduced by using the test environment with a low usage fee or by shortening the usage time of the test environment. Here, a method and system for reducing the operating cost by using a test environment with a low usage fee will be described. The same functions and effects can be realized with the same configuration for other user requests.

図1は、実施例1の計算機システムの一例を示すブロック図である。   FIG. 1 is a block diagram illustrating an example of a computer system according to the first embodiment.

実施例1の計算機システムは、管理サーバ100、オンプレミス型システム101、及びクラウド型システム102から構成され、管理ネットワーク103を介して互いに接続される。なお、管理ネットワーク103は、オンプレミス型システム101に接続するネットワーク及びクラウド型システム102に接続するネットワークに分けてもよい。   The computer system according to the first embodiment includes a management server 100, an on-premises type system 101, and a cloud type system 102, which are connected to each other via a management network 103. The management network 103 may be divided into a network connected to the on-premises system 101 and a network connected to the cloud system 102.

本実施例では、テスト環境が一つ以上のテストケースを実行することによって、テストが行われる。ここで、テストケースとは、実行前条件、入力値、期待される結果、及び実行後条件等を含むテストの内容を定義した情報である。また、テスト環境とは、テストを行うための環境である。   In this embodiment, the test is performed by the test environment executing one or more test cases. Here, the test case is information defining the content of the test including pre-execution conditions, input values, expected results, post-execution conditions, and the like. The test environment is an environment for performing a test.

オンプレミス型システム101及びクラウド型システム102は、テスト環境を実現するシステムである。本実施例では、ステージング環境及び代替環境の二つ種類のテスト環境が各システム上に構築される。ステージング環境は商用ソフトウェアを利用する環境であって、本番環境と同等の環境である。また、代替環境はOSSを利用する環境である。なお、本番環境は、実際にシステムが稼働する環境である。   The on-premises type system 101 and the cloud type system 102 are systems that realize a test environment. In this embodiment, two types of test environments, a staging environment and an alternative environment, are built on each system. The staging environment is an environment that uses commercial software and is the same environment as the production environment. The alternative environment is an environment that uses OSS. The production environment is the environment in which the system actually operates.

オンプレミス型システム101は、システム開発者が所属する会社が運用するシステムである。クラウド型システム102は、クラウドサービスの提供者が運用するシステムである。オンプレミス型システム101及びクラウド型システム102は、それぞれ、複数の計算機、複数のストレージ装置、及び複数のネットワーク装置等を含む。テスト環境は、物理的な装置そのものをリソースとして用いるテスト環境でもよいし、仮想的な装置をリソースとして用いるテスト環境でもよい。実施例1では、クラウド型システム102上に構築されたテスト環境を対象とした処理について説明する。二つのシステム上に構築されたテスト環境を対象とした処理については実施例2で説明する。   The on-premises system 101 is a system operated by the company to which the system developer belongs. The cloud type system 102 is a system operated by a cloud service provider. The on-premises system 101 and the cloud system 102 each include a plurality of computers, a plurality of storage devices, a plurality of network devices, and the like. The test environment may be a test environment that uses a physical device itself as a resource or a test environment that uses a virtual device as a resource. In the first embodiment, a process for a test environment built on the cloud type system 102 will be described. The processing for the test environment constructed on the two systems will be described in the second embodiment.

管理サーバ100は、テストケースを実行するテスト環境を決定する。ここで、管理サーバ100のハードウェア構成及びソフトウェア構成について説明する。   The management server 100 determines the test environment in which the test case is executed. Here, the hardware configuration and software configuration of the management server 100 will be described.

管理サーバ100は、CPU(Central Processing Unit)111、メモリ112、ネットワークインタフェース113、及びIOインタフェース114を有する。前述した各ハードウェアは、内部バスを介して互いに接続される。   The management server 100 includes a CPU (Central Processing Unit) 111, a memory 112, a network interface 113, and an IO interface 114. The above hardware is connected to each other via an internal bus.

CPU111は、メモリ112に格納されるプログラムを実行する。CPU111は、メモリ112に格納されるプログラムにしたがって動作することによって、所定の機能を実現するモジュールとして動作する。例えば、CPU111は、情報取得プログラムにしたがって動作することで情報取得モジュール126として機能する。他のプログラムについても同様である。   The CPU 111 executes the program stored in the memory 112. The CPU 111 operates as a module that realizes a predetermined function by operating according to a program stored in the memory 112. For example, the CPU 111 functions as the information acquisition module 126 by operating according to the information acquisition program. The same applies to other programs.

メモリ112は、CPU111が実行するプログラム及び情報を格納する。また、メモリ112は、プログラムが一時的に使用するワークエリアを含む。メモリ112に含まれるプログラム及び情報は後述する。   The memory 112 stores programs executed by the CPU 111 and information. The memory 112 also includes a work area that is temporarily used by the program. The programs and information included in the memory 112 will be described later.

ネットワークインタフェース113は、IPネットワーク等を介して外部の装置と通信するためのインタフェースである。IOインタフェース114は、入力装置104及び表示装置105と接続するインタフェースである。なお、IOインタフェース114は、USBメモリ及び外部ストレージ装置等、外部の記憶媒体に接続してもよい。   The network interface 113 is an interface for communicating with an external device via an IP network or the like. The IO interface 114 is an interface connected to the input device 104 and the display device 105. The IO interface 114 may be connected to an external storage medium such as a USB memory and an external storage device.

ここで、入力装置104は、管理サーバ100にデータを入力するための装置である。キーボード、マウス、及びタッチパネル等を入力装置104として用いることができる。表示装置105は、管理サーバ100の処理結果等を表示するための装置である。ディスプレイ及びタッチパネル等を表示装置105として用いることができる。   Here, the input device 104 is a device for inputting data to the management server 100. A keyboard, a mouse, a touch panel, etc. can be used as the input device 104. The display device 105 is a device for displaying the processing result of the management server 100 and the like. A display, a touch panel, or the like can be used as the display device 105.

図1では、各ハードウェアの数はそれぞれ一つであるが二つ以上であってもよい。例えば、管理サーバ100が複数のネットワークと接続する場合、管理サーバ100は、各ネットワークと接続する複数のネットワークインタフェース113を有してもよい。   Although the number of each hardware is one in FIG. 1, it may be two or more. For example, when the management server 100 connects to a plurality of networks, the management server 100 may have a plurality of network interfaces 113 connected to each network.

ここで、メモリ112に格納されるプログラム及び情報について説明する。メモリ112は、制御モジュール120を実現するプログラム及び管理情報群130を格納する。   Here, the programs and information stored in the memory 112 will be described. The memory 112 stores a program that implements the control module 120 and a management information group 130.

制御モジュール120は、管理サーバ100全体を制御するモジュールであり、複数のモジュールを含む。具体的には、制御モジュール120は、テスト実行モジュール121、静的分類モジュール122、動的分類モジュール123、グループ生成モジュール124、グループ評価モジュール125、情報取得モジュール126、及びコスト算出モジュール127を含む。   The control module 120 is a module that controls the entire management server 100 and includes a plurality of modules. Specifically, the control module 120 includes a test execution module 121, a static classification module 122, a dynamic classification module 123, a group generation module 124, a group evaluation module 125, an information acquisition module 126, and a cost calculation module 127.

テスト実行モジュール121は、各モジュールと連携して、決定されたテスト環境にテストケースを実行させる。静的分類モジュール122は、テストケースによって定義されたテストの内容及び条件情報132に基づいて、各テストケースを実行するテスト環境の候補を選択する。動的分類モジュール123は、テスト環境の稼働状態等、テスト環境の状態及び条件情報132に基づいてテストケースを実行するテスト環境を決定する。以下の説明では、テストケースによって定義されたテストの内容をテストケース特性と記載する。   The test execution module 121 causes the determined test environment to execute a test case in cooperation with each module. The static classification module 122 selects a test environment candidate for executing each test case based on the content of the test defined by the test case and the condition information 132. The dynamic classification module 123 determines the test environment in which the test case is executed based on the test environment state and the condition information 132 such as the operating state of the test environment. In the following description, the contents of the test defined by the test case are described as test case characteristics.

グループ生成モジュール124は、一つ以上のテストケースから構成されるテストケースグループを生成する。本実施例では、テストケースグループ単位でテストが行われる。グループ評価モジュール125は、静的分類モジュール122の処理結果に基づいて、テストケースグループを実行するテスト環境の候補を選択する。以下の説明では、テストケースグループを実行するテスト環境の候補を候補テスト環境と記載する。   The group generation module 124 generates a test case group including one or more test cases. In this embodiment, the test is carried out in test case group units. The group evaluation module 125 selects a test environment candidate for executing the test case group based on the processing result of the static classification module 122. In the following description, candidate test environments that execute test case groups are referred to as candidate test environments.

情報取得モジュール126は、テスト環境の状態を示す状態情報を取得する。コスト算出モジュール127は、システム開発の実行コストを算出する。本実施例では、コスト算出モジュール127は、テスト環境の使用料金を算出する。   The information acquisition module 126 acquires status information indicating the status of the test environment. The cost calculation module 127 calculates a system development execution cost. In this embodiment, the cost calculation module 127 calculates the usage charge of the test environment.

管理情報群130は、テストケース情報131、条件情報132、テスト環境情報133、ライセンス情報134、グループ情報135、及びテスト実行キュー情報136を含む。各情報の詳細は、図2から図7を用いて説明する。   The management information group 130 includes test case information 131, condition information 132, test environment information 133, license information 134, group information 135, and test execution queue information 136. Details of each information will be described with reference to FIGS. 2 to 7.

なお、メモリ112に格納されるプログラム及び情報は、HDD(Hard Disk Drive)、SSD(Solid State Drive)、不揮発性メモリ、ICカード、SDカード、DVD等の計算機が読み取り可能な非一時的記憶媒体、又は、外部ストレージ装置に格納されてもよい。この場合、CPU111は、外部ストレージ装置等からプログラム及び情報を読み出し、メモリ112にプログラム及び情報をロードする。   The programs and information stored in the memory 112 are computer-readable non-transitory storage media such as HDD (Hard Disk Drive), SSD (Solid State Drive), non-volatile memory, IC card, SD card, and DVD. Alternatively, it may be stored in an external storage device. In this case, the CPU 111 reads the program and information from the external storage device or the like and loads the program and information into the memory 112.

図2は、実施例1のテストケース情報131の一例を示す図である。なお、図2では、図面のスペースを考慮してテストケース情報131を二つのテーブルに分けているが、実際は一つのテーブルとして管理される。   FIG. 2 is a diagram illustrating an example of the test case information 131 according to the first embodiment. Note that, in FIG. 2, the test case information 131 is divided into two tables in consideration of the space of the drawing, but it is actually managed as one table.

テストケース情報131は、テストケースを管理する情報であり、テストケースID201、自動化202、性能203、独自機能204、重要度205、前提条件206、代替環境207、実行環境208、エラー209、予測時間210、システムID211、ユースケース/機能212、及びグルーピング213から構成されるエントリを含む。なお、エントリには、前述した以外のカラムが含まれてもよい。   The test case information 131 is information for managing a test case, and includes a test case ID 201, automation 202, performance 203, unique function 204, importance 205, prerequisite 206, alternative environment 207, execution environment 208, error 209, and estimated time. 210, system ID 211, use case / function 212, and grouping 213. The entry may include columns other than those described above.

テストケースID201は、テストケースを識別するための識別情報を格納する。テストケースID201は、テストケース情報131のエントリを識別するための識別情報としても用いられる。   The test case ID 201 stores identification information for identifying the test case. The test case ID 201 is also used as identification information for identifying the entry of the test case information 131.

自動化202は、テストケースが自動化できるか否かを示す情報を格納する。自動化202には、「可能」及び「不可能」のいずれかが格納される。   The automation 202 stores information indicating whether or not the test case can be automated. The automation 202 stores either “possible” or “impossible”.

性能203は、テストケースで定義されたテストが性能テストであるか否かを示す情報を格納する。性能203には、「YES」及び「NO」のいずれかが格納される。性能テストは、本番環境におけるシステムの性能等を計測することを目的として行われる。そのため、性能テストは、本番環境と同等のステージング環境で行われる必要がある。なお、ステージング環境を用いる必要があるテストとしては、セキュリティの確認を目的としてテスト等が考えられる。   The performance 203 stores information indicating whether the test defined in the test case is a performance test. The performance 203 stores either “YES” or “NO”. The performance test is conducted for the purpose of measuring the performance of the system in the production environment. Therefore, the performance test needs to be performed in a staging environment equivalent to the production environment. As a test that needs to use the staging environment, a test or the like can be considered for the purpose of confirming security.

独自機能204は、テストケースで定義されたテストが商用ソフトウェアの独自機能を確認するテストであるか否かを示す情報を格納する。独自機能204には、「YES」及び「NO」のいずれかが格納される。   The unique function 204 stores information indicating whether the test defined in the test case is a test for confirming the unique function of the commercial software. The unique function 204 stores either “YES” or “NO”.

重要度205は、テストケースの実行順番(テストの実行順番)等を示す重要度を格納する。重要度は、バグの発生率の高さ又はシステム全体の影響度等を表すものである。重要度205には、「1」以上の整数が格納される。本実施例では、値が1に近いほど重要度が高いことを示す。ユーザが設定した値を重要度205に設定してもよいし、テストケース間の依存関係に基づいて算出された値を重要度205に設定してもよい。例えば、前提条件206に登録される数に基づいて値を設定する方法が考えられる。   The importance 205 stores the importance indicating the execution order of test cases (test execution order) and the like. The degree of importance represents the high occurrence rate of bugs or the degree of influence of the entire system. The importance 205 stores an integer of “1” or more. In this embodiment, the closer the value is to 1, the higher the importance. A value set by the user may be set as the importance 205, or a value calculated based on the dependency between test cases may be set as the importance 205. For example, a method of setting a value based on the number registered in the precondition 206 can be considered.

前提条件206は、エントリに対応するテストケースを実行する前に実行する必要があるテストケースの識別情報を格納する。なお、事前に実行する必要があるテストケースが存在しない場合、前提条件206は空欄となる。例えば、データベースのレコードを追加するテストを定義する第1のテストケース、及び第1のテストケースにおいて追加されたレコードを削除するテストを定義する第2のテストケースがあった場合、第2のテストケースは、第1のテストケースが前提条件となる。したがって、第2のテストケースに対応するエントリの前提条件206には第1のテストケースの識別情報が格納される。   The precondition 206 stores the identification information of the test case that needs to be executed before executing the test case corresponding to the entry. If there is no test case that needs to be executed in advance, the precondition 206 is blank. For example, if there is a first test case that defines a test that adds a record in the database and a second test case that defines a test that deletes a record added in the first test case, the second test case The case is based on the first test case. Therefore, the identification information of the first test case is stored in the precondition 206 of the entry corresponding to the second test case.

代替環境207は、テストケースを代替環境207で実行できるか否かを示す情報を格納する。代替環境207には、「可能」及び「不可能」のいずれかが格納される。   The alternative environment 207 stores information indicating whether the test case can be executed in the alternative environment 207. The alternative environment 207 stores either “possible” or “impossible”.

実行環境208は、前回、テストケースを実行したテスト環境の識別情報を格納する。実行環境208には、後述するテスト環境ID401(図4参照)に設定された識別情報が格納される。   The execution environment 208 stores the identification information of the test environment in which the test case was executed last time. The execution environment 208 stores the identification information set in the test environment ID 401 (see FIG. 4) described later.

エラー209は、テスト結果がテストケースにおいて期待された結果であるか否かを示す情報を格納する。テスト結果がテストケースにおいて期待された結果でない場合、エラー209には「エラー」が格納され、テスト結果がテストケースにおいて期待された結果である場合、エラー209は空欄である。   The error 209 stores information indicating whether the test result is the expected result in the test case. When the test result is not the expected result in the test case, “error” is stored in the error 209, and when the test result is the expected result in the test case, the error 209 is blank.

予測時間210は、テストケースによって定義されたテストの実行時間の予測値を格納する。前回、実行されたテストの実行時間が予測時間210に格納されてもよいし、また、これまで実行したテストの実行時間の統計値が予測時間210に格納されてもよい。ここで、統計値は、平均値、最高値、及び中央値等を示す。   The predicted time 210 stores a predicted value of the execution time of the test defined by the test case. The execution time of the test executed last time may be stored in the estimated time 210, or the statistical value of the execution time of the test executed so far may be stored in the estimated time 210. Here, the statistical value indicates an average value, a maximum value, a median value, or the like.

システムID211は、テストケースで定義されたテストの対象となるシステム又はソフトウェアの識別情報を格納する。   The system ID 211 stores identification information of a system or software that is a test target defined in the test case.

ユースケース/機能212は、テストケースで定義されたテストの対象となる具体的な機能等の識別情報を格納する。   The use case / function 212 stores identification information such as a specific function that is a test target defined in the test case.

グルーピング213は、グループ生成モジュール124によって処理されたエントリであるか否かを示す情報を格納する。グルーピング213には、「実行済」及び「未実行」のいずれかが格納される。   The grouping 213 stores information indicating whether or not the entry has been processed by the group generation module 124. The grouping 213 stores either “executed” or “not executed”.

本実施例では、自動化202、性能203、独自機能204、重要度205、及び前提条件206が、テストケース特性として用いられる。   In this embodiment, automation 202, performance 203, unique function 204, importance 205, and precondition 206 are used as test case characteristics.

図3は、実施例1の条件情報132の一例を示す図である。   FIG. 3 is a diagram illustrating an example of the condition information 132 according to the first embodiment.

条件情報132は、テストケースグループを実行するテスト環境を決定するための条件を管理する情報であり、条件ID301、条件種別302、項目303、及び条件304から構成されるエントリを含む。なお、エントリには、前述した以外のカラムが含まれてもよい。   The condition information 132 is information for managing conditions for determining the test environment in which the test case group is executed, and includes an entry including a condition ID 301, a condition type 302, an item 303, and a condition 304. The entry may include columns other than those described above.

条件ID301は、条件を一意に識別するための識別情報を格納する。   The condition ID 301 stores identification information for uniquely identifying the condition.

条件種別302は、条件の種別を示す情報を格納する。条件種別302には「静的」及び「動的」のいずれかが格納される。「静的」は静的分類モジュール122によって使用される条件であり、「動的」は動的分類モジュール123によって使用される条件である。以下の説明では、条件種別302に「静的」が設定されたエントリに対応する条件を静的条件と記載し、また、条件種別302に「動的」が設定されたエントリに対応する条件を静的条件と記載する。静的条件は、時間に依存しないパラメータ等の条件である。テストケース特性に関する条件が、主に、静的条件として設定される。また、動的条件は、時間に依存するパラメータ等の条件である。テスト環境の状態に関する条件が、主に、動的条件として設定される。   The condition type 302 stores information indicating the type of condition. Either “static” or “dynamic” is stored in the condition type 302. “Static” is a condition used by the static classification module 122, and “dynamic” is a condition used by the dynamic classification module 123. In the following description, a condition corresponding to an entry in which “static” is set in the condition type 302 is described as a static condition, and a condition corresponding to an entry in which “dynamic” is set in the condition type 302 is described. Described as a static condition. Static conditions are conditions such as parameters that do not depend on time. Conditions relating to test case characteristics are mainly set as static conditions. The dynamic conditions are conditions such as time-dependent parameters. Conditions relating to the state of the test environment are mainly set as dynamic conditions.

項目303は、条件の名称及び種別等を示す情報を格納する。項目303は、ユーザがユーザ要求を入力するためのGUI等に表示される。   The item 303 stores information indicating the name and type of condition. The item 303 is displayed on a GUI or the like for the user to input a user request.

条件304は、具体的な条件の内容を格納する。なお、本実施例では、説明のため文字列として条件を記載しているが、条件式等、文字列以外のデータが格納されてもよい。なお、条件304に設定する数値は、ユーザが決定してもよい。   The condition 304 stores specific contents of the condition. In this embodiment, the condition is described as a character string for explanation, but data other than the character string such as a conditional expression may be stored. The user may determine the numerical value set in the condition 304.

図4は、実施例1のテスト環境情報133の一例を示す図である。   FIG. 4 is a diagram illustrating an example of the test environment information 133 according to the first embodiment.

テスト環境情報133は、テスト環境の構成及びテスト環境の状態等を管理する情報であり、テスト環境ID401、テスト環境種別402、構成403、代替対象ソフトウェア404、CPU使用率405、及びメモリ使用率406から構成されるエントリを含む。なお、エントリには、前述した以外のカラムが含まれてもよい。   The test environment information 133 is information for managing the configuration of the test environment, the state of the test environment, etc., and includes the test environment ID 401, the test environment type 402, the configuration 403, the replacement target software 404, the CPU usage rate 405, and the memory usage rate 406. Contains an entry consisting of The entry may include columns other than those described above.

テスト環境ID401は、テスト環境を一意に識別する識別情報を格納する。   The test environment ID 401 stores identification information that uniquely identifies the test environment.

テスト環境種別402は、テスト環境の種別を示す情報を格納する。本実施例のテスト環境種別402には、「ステージング」及び「代替」のいずれかが格納される。   The test environment type 402 stores information indicating the type of test environment. In the test environment type 402 of this embodiment, either “staging” or “substitution” is stored.

構成403は、テスト環境の構成情報を格納する。本実施例では、テスト環境において稼働するOS(Operating System)の種別が構成403に格納される。なお、構成403には、テスト環境のハードウェア構成及びソフトウェア構成等が格納されてもよい。   The configuration 403 stores the configuration information of the test environment. In this embodiment, the type of OS (Operating System) operating in the test environment is stored in the configuration 403. The configuration 403 may store the hardware configuration and software configuration of the test environment.

代替対象ソフトウェア404は、OSSと置き換える商用ソフトウェア又はOSSの識別情報を格納する。エントリのテスト環境種別402が「ステージング」の場合、代替対象ソフトウェア404には、OSSと置き換える商用ソフトウェアの識別情報が格納される。エントリのテスト環境種別402が「代替」の場合、代替対象ソフトウェア404には、OSSの識別情報が格納される。   The replacement target software 404 stores the identification information of the commercial software or OSS that replaces the OSS. When the test environment type 402 of the entry is “staging”, the replacement target software 404 stores the identification information of the commercial software to replace the OSS. When the test environment type 402 of the entry is “substitute”, the substitution target software 404 stores the OSS identification information.

CPU使用率405は、テスト環境を構成するサーバ等が有するCPUの使用率を格納する。例えば、サーバが物理サーバの場合、物理CPUの使用率がCPU使用率405に格納され、サーバがVMの場合、仮想CPUの使用率がCPU使用率405に格納される。   The CPU usage rate 405 stores the usage rate of the CPU included in the server or the like that constitutes the test environment. For example, when the server is a physical server, the usage rate of the physical CPU is stored in the CPU usage rate 405, and when the server is a VM, the usage rate of the virtual CPU is stored in the CPU usage rate 405.

メモリ使用率406は、テスト環境を構成するサーバ等が有するメモリの使用率を格納する。例えば、サーバが物理サーバの場合、物理メモリの使用率がメモリ使用率406に格納され、サーバがVMの場合、仮想メモリの使用率がメモリ使用率406に格納される。   The memory usage rate 406 stores the usage rate of the memory included in the server or the like that constitutes the test environment. For example, when the server is a physical server, the usage rate of physical memory is stored in the memory usage rate 406, and when the server is VM, the usage rate of virtual memory is stored in the memory usage rate 406.

図5は、実施例1のライセンス情報134の一例を示す図である。   FIG. 5 is a diagram illustrating an example of the license information 134 according to the first embodiment.

ライセンス情報134は、テスト環境において使用するソフトウェアのライセンス料を管理する情報であり、ライセンスID501、ソフトウェア502、使用状態503、テスト環境ID504、及び料金505から構成されるエントリを含む。なお、エントリには、前述した以外のカラムが含まれてもよい。   The license information 134 is information for managing the license fee of software used in the test environment, and includes an entry including a license ID 501, software 502, a usage state 503, a test environment ID 504, and a fee 505. The entry may include columns other than those described above.

ライセンスID501は、ライセンスを一意に識別するための識別情報を格納する。   The license ID 501 stores identification information for uniquely identifying the license.

ソフトウェア502は、ライセンス対象のテスト環境に含まれるソフトウェアの識別情報を格納する。なお、クラウド型システム102のオプションサービスとしてソフトウェアが提供される場合、ソフトウェア502にはサービスの識別情報が格納される。   The software 502 stores identification information of software included in the licensed test environment. When software is provided as an optional service of the cloud system 102, service identification information is stored in the software 502.

使用状態503は、ライセンスを使用しているか否かを示す情報を格納する。使用状態503には、「使用中」及び「未使用」のいずれかが格納される。   The usage state 503 stores information indicating whether or not the license is used. The use state 503 stores either “in use” or “unused”.

テスト環境ID504は、ライセンスを対象のテスト環境の識別情報を格納する。テスト環境ID504には、テスト環境ID401に設定された識別情報が格納される。   The test environment ID 504 stores identification information of the test environment for which the license is a target. The test environment ID 504 stores the identification information set in the test environment ID 401.

料金505は、ライセンス対象のテスト環境の使用料金を格納する。   The fee 505 stores the usage fee of the licensed test environment.

図6は、実施例1のグループ情報135の一例を示す図である。   FIG. 6 is a diagram illustrating an example of the group information 135 according to the first embodiment.

グループ情報135は、グループ生成モジュール124によって生成されるテストケースグループを管理する情報であり、グループID601、グループ重要度602、代替環境603、及びテストケース604から構成されるエントリを含む。なお、エントリには、前述した以外のカラムが含まれてもよい。   The group information 135 is information for managing the test case group generated by the group generation module 124, and includes an entry including a group ID 601, a group importance 602, an alternative environment 603, and a test case 604. The entry may include columns other than those described above.

グループID601は、テストケースグループを一意に識別するための識別情報を格納する。   The group ID 601 stores identification information for uniquely identifying the test case group.

グループ重要度602は、テストケースグループの重要度を格納する。グループ重要度602は、テストケースグループ間の実行順番を決定するために用いられる。   The group importance 602 stores the importance of the test case group. The group importance 602 is used to determine the execution order between test case groups.

代替環境603は、テストケースグループとして代替環境を使用できるか否を示す情報を格納する。代替環境603には「可能」及び「不可能」のいずれかが格納される。なお、代替環境603に設定する値は、テストケースグループに含まれるテストケースの代替環境207に基づいて決定される。本実施例では、候補テスト環境を特定する情報としてテスト環境の種別を用いているため、エントリは代替環境603を含む。   The alternative environment 603 stores information indicating whether the alternative environment can be used as a test case group. The alternative environment 603 stores either “possible” or “impossible”. The value set in the alternative environment 603 is determined based on the alternative environment 207 of the test case included in the test case group. In this embodiment, the type of the test environment is used as the information for identifying the candidate test environment, so the entry includes the alternative environment 603.

テストケース604は、テストケースグループを構成するテストケースの識別情報を格納する。テストケース604には、テストケースグループに含まれるテストケースの数だけ列が存在する。テストケース604の各列には、テストケースID201に設定された識別情報が格納される。本実施例では、テストケース604の左から順にテストケースが実行される。   The test case 604 stores the identification information of the test cases that form the test case group. The test case 604 has as many columns as the test cases included in the test case group. The identification information set in the test case ID 201 is stored in each column of the test case 604. In this embodiment, the test cases are executed sequentially from the left of the test case 604.

図7は、実施例1のテスト実行キュー情報136の一例を示す図である。   FIG. 7 is a diagram illustrating an example of the test execution queue information 136 according to the first embodiment.

テスト実行キュー情報136は、テストケースを登録するテスト実行キューを管理する情報であり、キューID701、テストケースID702、グループID703、及び実行環境ID704から構成されるエントリを含む。なお、エントリには、前述した以外のカラムが含まれてもよい。   The test execution queue information 136 is information for managing a test execution queue for registering test cases, and includes an entry including a queue ID 701, a test case ID 702, a group ID 703, and an execution environment ID 704. The entry may include columns other than those described above.

キューID701は、キューを一意に識別するための識別情報を格納する。   The queue ID 701 stores identification information for uniquely identifying the queue.

テストケースID702は、キューに投入されたテストケースの識別情報を格納する。テストケースID702には、テストケースID201に設定された識別情報が格納される。   The test case ID 702 stores the identification information of the test case put in the queue. The test case ID 702 stores the identification information set in the test case ID 201.

グループID703は、キューに投入されたテストケースが属するテストケースグループの識別情報を格納する。グループID703には、グループID601に設定された識別情報が格納される。   The group ID 703 stores the identification information of the test case group to which the test case submitted to the queue belongs. The identification information set in the group ID 601 is stored in the group ID 703.

実行環境ID704は、テストケースに対応するテストを実行するテスト環境の識別情報を格納する。実行環境ID704には、テスト環境ID401に設定された識別情報が格納される。   The execution environment ID 704 stores the identification information of the test environment in which the test corresponding to the test case is executed. The execution environment ID 704 stores the identification information set in the test environment ID 401.

図8A及び図8Bは、実施例1の管理サーバ100が実行する処理の流れを説明するシーケンス図である。   8A and 8B are sequence diagrams illustrating the flow of processing executed by the management server 100 according to the first embodiment.

テスト実行モジュール121は、テスト(テストケースグループ)の開始契機を検出した場合(ステップS801)、静的分類モジュール122に開始命令を送信する(ステップS802)。また、テスト実行モジュール121は、ユーザに予算の入力するための画面を表示し、予算の入力を受け付ける。   When the test execution module 121 detects the start trigger of the test (test case group) (step S801), the test execution module 121 transmits a start command to the static classification module 122 (step S802). Further, the test execution module 121 displays a screen for the user to input the budget and accepts the budget input.

テスト実行モジュール121は、ユーザが入力したテスト開始指示をテストの開始契機として検出してもよい。また、テスト実行モジュール121は、実行スケジュールに設定された時間を経過した場合、又は、テスト対象となるシステムがバージョン管理ソフトに対してソースをコミットした場合、テストが開始されたと判定してもよい。   The test execution module 121 may detect a test start instruction input by the user as a test start timing. Further, the test execution module 121 may determine that the test has started when the time set in the execution schedule has passed or when the system to be tested commits the source to the version management software. ..

なお、管理サーバ100が予算を管理する情報を保持している場合、予算を入力する画面が表示されなくてもよい。   If the management server 100 holds information for managing the budget, the screen for entering the budget may not be displayed.

静的分類モジュール122は、テスト実行モジュール121から開始命令を受信した場合、静的分類処理を実行する(ステップS803)。静的分類処理では、静的分類モジュール122は、テストケース特性に基づいて、各テストケースについて実行可能なテスト環境を選択する。静的分類処理の詳細は、図9を用いて説明する。   Upon receiving the start command from the test execution module 121, the static classification module 122 executes static classification processing (step S803). In the static classification process, the static classification module 122 selects an executable test environment for each test case based on the test case characteristics. Details of the static classification process will be described with reference to FIG.

静的分類モジュール122は、静的分類処理が終了した後、テスト実行モジュール121に完了通知を送信する(ステップS804)。   The static classification module 122 transmits a completion notification to the test execution module 121 after the static classification processing is completed (step S804).

テスト実行モジュール121は、静的分類モジュール122から完了通知を受信した場合、グループ生成モジュール124に開始命令を送信する(ステップS805)。   When the test execution module 121 receives the completion notification from the static classification module 122, the test execution module 121 sends a start command to the group generation module 124 (step S805).

グループ生成モジュール124は、テスト実行モジュール121から開始命令を受信した場合、グループ生成処理を実行する(ステップS806)。グループ生成処理では、グループ生成モジュール124は、テストケースグループを生成する。グループ生成処理の詳細は、図10を用いて説明する。   When the group generation module 124 receives the start command from the test execution module 121, the group generation module 124 executes a group generation process (step S806). In the group generation process, the group generation module 124 generates a test case group. Details of the group generation process will be described with reference to FIG.

グループ生成モジュール124は、グループ生成処理が終了した後、テスト実行モジュール121に完了通知を送信する(ステップS807)。   The group generation module 124 transmits a completion notice to the test execution module 121 after the group generation process is completed (step S807).

テスト実行モジュール121は、グループ生成モジュール124から完了通知を受信した場合、グループ評価モジュール125に開始命令を送信する(ステップS808)。   When the test execution module 121 receives the completion notification from the group generation module 124, the test execution module 121 transmits a start command to the group evaluation module 125 (step S808).

グループ評価モジュール125は、テスト実行モジュール121から開始命令を受信した場合、グループ評価処理を実行する(ステップS809)。グループ評価処理では、グループ評価モジュール125は、候補テスト環境を選択する。グループ評価処理の詳細は、図11を用いて説明する。   When receiving the start command from the test execution module 121, the group evaluation module 125 executes the group evaluation process (step S809). In the group evaluation process, the group evaluation module 125 selects a candidate test environment. Details of the group evaluation process will be described with reference to FIG.

グループ評価モジュール125は、グループ評価処理が終了した後、テスト実行モジュール121に完了通知を送信する(ステップS810)。   The group evaluation module 125 sends a completion notification to the test execution module 121 after the group evaluation processing is completed (step S810).

テスト実行モジュール121は、グループ評価モジュール125から完了通知を受信した場合、動的分類モジュール123に開始命令を送信する(ステップS811)。   When the test execution module 121 receives the completion notification from the group evaluation module 125, the test execution module 121 transmits a start command to the dynamic classification module 123 (step S811).

動的分類モジュール123は、テスト実行モジュール121から開始命令を受信した場合、動的分類処理を実行する(ステップS812)。動的分類処理では、動的分類モジュール123は、候補テスト環境の状態に基づいて、テストケースグループを実行するテスト環境を決定する。また、動的分類モジュール123は、テストケースグループに含まれるテストケースをテスト実行キューに登録する。動的分類処理の詳細は、図12A及び図12Bを用いて説明する。   When receiving the start command from the test execution module 121, the dynamic classification module 123 executes the dynamic classification process (step S812). In the dynamic classification process, the dynamic classification module 123 determines the test environment in which the test case group is executed based on the state of the candidate test environment. The dynamic classification module 123 also registers the test cases included in the test case group in the test execution queue. Details of the dynamic classification process will be described with reference to FIGS. 12A and 12B.

動的分類モジュール123は、動的分類処理が終了した後、テスト実行モジュール121に完了通知を送信する(ステップS813)。   The dynamic classification module 123 transmits a completion notification to the test execution module 121 after the dynamic classification process is completed (step S813).

テスト実行モジュール121は、テスト実行キュー情報136を参照し、テスト実行キューに投入されたテストケースを実行する(ステップS814)。   The test execution module 121 refers to the test execution queue information 136 and executes the test case put in the test execution queue (step S814).

以上の処理によって、テストケースグループを適切なテスト環境で実行させることができる。   With the above processing, the test case group can be executed in an appropriate test environment.

図9は、実施例1の静的分類モジュール122が実行する静的分類処理の一例を説明するフローチャートである。   FIG. 9 is a flowchart illustrating an example of static classification processing executed by the static classification module 122 according to the first embodiment.

静的分類モジュール122は、テストケースのループ処理を開始する(ステップS901)。   The static classification module 122 starts the loop processing of the test case (step S901).

具体的には、静的分類モジュール122は、テストケース情報131を参照し、ターゲットテストケースを一つ選択する。また、静的分類モジュール122は、条件情報132から条件種別302に「静的」が設定されたエントリを取得する。   Specifically, the static classification module 122 refers to the test case information 131 and selects one target test case. Further, the static classification module 122 acquires from the condition information 132 an entry in which “static” is set in the condition type 302.

なお、ループ処理では、テストケース情報131に登録された全てのテストケースの中からターゲットテストケースを選択してもよいし、変更したソフトウェアに関連するテストケースの中からターゲットテストケースを選択してもよい。変更したソフトウェアに関連するテストケースだけに絞り込むことによって処理負荷を低減できる。   In the loop processing, the target test case may be selected from all the test cases registered in the test case information 131, or the target test case may be selected from the test cases related to the changed software. Good. The processing load can be reduced by narrowing down only the test cases related to the changed software.

ステップS903からステップS909までの処理では、静的分類モジュール122は、静的条件に基づいて、ターゲットテストケースを実行可能なテスト環境を選択する。   In the processing from step S903 to step S909, the static classification module 122 selects a test environment capable of executing the target test case based on the static condition.

まず、静的分類モジュール122は、テストケース情報131を参照し、ターゲットテストケースに対応するエントリの自動化202が「可能」であるか否かを判定する(ステップS902)。   First, the static classification module 122 refers to the test case information 131 and determines whether the automation 202 of the entry corresponding to the target test case is “possible” (step S902).

ターゲットテストケースに対応するエントリの自動化202が「不可能」であると判定された場合、静的分類モジュール122は、ステップS910に進む。この場合、当該エントリの代替環境207は「不可能」が設定される。   If the automation 202 of the entry corresponding to the target test case is determined to be “impossible”, the static classification module 122 proceeds to step S910. In this case, "impossible" is set as the alternative environment 207 of the entry.

ターゲットテストケースに対応するエントリの自動化202が「可能」であると判定された場合、静的分類モジュール122は、代替環境でターゲットテストケースを実行できるか否かを判定する(ステップS903)。具体的には、以下のような処理が実行される。   When it is determined that the automation 202 of the entry corresponding to the target test case is “enabled”, the static classification module 122 determines whether the target test case can be executed in the alternative environment (step S903). Specifically, the following processing is executed.

静的分類モジュール122は、ターゲットテストケースに対応するエントリの性能203が「YES」であるか否かを判定する。   The static classification module 122 determines whether the performance 203 of the entry corresponding to the target test case is “YES”.

エントリの性能203が「YES」であると判定された場合、静的分類モジュール122は、代替環境でターゲットテストケースを実行できないと判定する。エントリの性能203が「NO」であると判定された場合、静的分類モジュール122は、エントリの独自機能204が「YES」であるか否かを判定する。   If the performance 203 of the entry is determined to be “YES”, the static classification module 122 determines that the target test case cannot be executed in the alternative environment. When the performance 203 of the entry is determined to be “NO”, the static classification module 122 determines whether the unique function 204 of the entry is “YES”.

エントリの独自機能204が「YES」であると判定された場合、静的分類モジュール122は、代替環境でターゲットテストケースを実行できないと判定する。エントリの独自機能204が「NO」であると判定された場合、静的分類モジュール122は、代替環境でターゲットテストケースを実行できると判定する。以上がステップS903の処理の説明である。   If the entry's unique function 204 is determined to be "YES," the static classification module 122 determines that the target test case cannot be executed in the alternative environment. If the entry's unique function 204 is determined to be "NO," the static classification module 122 determines that the target test case can be executed in the alternative environment. The above is the description of the process of step S903.

代替環境でターゲットテストケースを実行できないと判定された場合、静的分類モジュール122は、ターゲットテストケースに対応するエントリの代替環境207に「不可能」を設定する(ステップS909)。その後、静的分類モジュール122は、ステップS910に進む。   When it is determined that the target test case cannot be executed in the alternative environment, the static classification module 122 sets “impossible” in the alternative environment 207 of the entry corresponding to the target test case (step S909). After that, the static classification module 122 proceeds to step S910.

代替環境でターゲットテストケースを実行できると判定された場合、静的分類モジュール122は、ステージング環境及び代替環境のそれぞれでテストケースを実行する(ステップS904)。静的分類モジュール122は、ステージング環境及び代替環境からテスト結果が出力されるまで待ち状態に移行する。   When it is determined that the target test case can be executed in the alternative environment, the static classification module 122 executes the test case in each of the staging environment and the alternative environment (step S904). The static classification module 122 shifts to a waiting state until the test result is output from the staging environment and the alternative environment.

静的分類モジュール122は、ステージング環境及び代替環境からテスト結果が出力された場合、当該テスト結果に基づいて、テストケースを見直す必要があるか否かを判定する(ステップS905)。   When the test result is output from the staging environment and the alternative environment, the static classification module 122 determines whether the test case needs to be reviewed based on the test result (step S905).

具体的には、静的分類モジュール122は、テストケースにおいて期待された結果が出力されたか否かを判定する。   Specifically, the static classification module 122 determines whether the expected result in the test case has been output.

テストケースを見直す必要があると判定された場合、静的分類モジュール122は、ステップS910に進む。この場合、当該エントリの代替環境207には特に値が設定されなくてもよい。   If it is determined that the test case needs to be reviewed, the static classification module 122 proceeds to step S910. In this case, no particular value may be set in the alternative environment 207 of the entry.

テストケースを見直す必要がないと判定された場合、静的分類モジュール122は、ステージング環境及び代替環境のテスト結果が一致するか否かを判定する(ステップS906)。なお、テスト結果の一致は、完全一致でなくてもよく、類似する結果であればよい。   When it is determined that the test case does not need to be reviewed, the static classification module 122 determines whether the test results of the staging environment and the alternative environment match (step S906). Note that the test results do not have to match exactly, but may have similar results.

ステージング環境及び代替環境のテスト結果が一致しないと判定された場合、静的分類モジュール122は、エントリの代替環境207に「不可能」を設定する(ステップS909)。その後、静的分類モジュール122は、ステップS910に進む。   If it is determined that the test results of the staging environment and the alternative environment do not match, the static classification module 122 sets “impossible” to the alternative environment 207 of the entry (step S909). After that, the static classification module 122 proceeds to step S910.

ステージング環境及び代替環境のテスト結果が一致すると判定された場合、静的分類モジュール122は、エントリの代替環境207に「可能」を設定する(ステップS907)。その後、静的分類モジュール122は、ステップS910に進む。   When it is determined that the test results of the staging environment and the alternative environment match, the static classification module 122 sets "possible" to the alternative environment 207 of the entry (step S907). After that, the static classification module 122 proceeds to step S910.

ステップS910では、静的分類モジュール122は、選択可能な全てのテストケースについて処理が完了したか否かを判定する(ステップS910)。   In step S910, the static classification module 122 determines whether processing has been completed for all selectable test cases (step S910).

選択可能な全てのテストケースについて処理が完了していないと判定された場合、静的分類モジュール122は、ステップS901に戻り、新たなターゲットテストケースを選択し、同様の処理を実行する。   When it is determined that the processing has not been completed for all selectable test cases, the static classification module 122 returns to step S901, selects a new target test case, and executes the same processing.

選択可能な全てのテストケースについて処理が完了したと判定された場合、静的分類モジュール122は、テストケースのループ処理を終了し、テスト実行モジュール121に完了通知を送信する(ステップS911)。その後、静的分類モジュール122は、静的分類処理を終了する。   When it is determined that the processing has been completed for all selectable test cases, the static classification module 122 ends the test case loop processing, and sends a completion notification to the test execution module 121 (step S911). After that, the static classification module 122 ends the static classification process.

以上の通り、静的分類モジュール122では、テストケース特性に基づいて、テストケースを実行可能なテスト環境を選択する。本実施例では、静的分類モジュール122は、代替環境が優先的に選択されるように制御する。これによって、テストケースの運用コストを低くできる。   As described above, the static classification module 122 selects the test environment in which the test case can be executed based on the test case characteristics. In this embodiment, the static classification module 122 controls such that the alternative environment is preferentially selected. This can reduce the operating cost of the test case.

なお、図9では、静的分類モジュール122は、ステージング環境及び代替環境のいずれかを選択しているが、これに限定されない。条件情報132に設定する条件を変更することによって、静的分類モジュール122は、様々な観点に基づいて、テスト環境を選択できる。   Note that, in FIG. 9, the static classification module 122 selects either the staging environment or the alternative environment, but the present invention is not limited to this. By changing the condition set in the condition information 132, the static classification module 122 can select the test environment based on various viewpoints.

図10は、実施例1のグループ生成モジュール124が実行するグループ生成処理の一例を説明するフローチャートである。   FIG. 10 is a flowchart illustrating an example of a group generation process executed by the group generation module 124 according to the first embodiment.

グループ生成モジュール124は、テストケース情報131の全てのエントリのグルーピング213に「未実行」を設定する(ステップS1001)。   The group generation module 124 sets "unexecuted" in the grouping 213 of all the entries of the test case information 131 (step S1001).

次に、グループ生成モジュール124は、前提条件206に登録されていないテストケースを特定する(ステップS1002)。   Next, the group generation module 124 identifies a test case not registered in the precondition 206 (step S1002).

具体的には、グループ生成モジュール124は、各エントリの前提条件206を参照し、いずれのエントリの前提条件206にも登録されていないテストケースを特定する。前提条件206に登録されていないテストケースは、テストケースグループにおいて最後に実行されるテストケースに対応する。   Specifically, the group generation module 124 refers to the precondition 206 of each entry, and specifies a test case that is not registered in the precondition 206 of any entry. The test case not registered in the precondition 206 corresponds to the test case executed last in the test case group.

次に、グループ生成モジュール124は、特定されたテストケースのループ処理を開始する(ステップS1003)。   Next, the group generation module 124 starts loop processing of the specified test case (step S1003).

具体的には、グループ生成モジュール124は、特定されたテストケースの中から一つのテストケースを選択し、ステップS1004からステップS1011までの処理を実行する。   Specifically, the group generation module 124 selects one test case from the identified test cases and executes the processing from step S1004 to step S1011.

グループ生成モジュール124は、選択されたテストケースをターゲットテストケースに設定し(ステップS1004)、また、ターゲットテストケースを含むテストケースグループを生成する(ステップS1005)。   The group generation module 124 sets the selected test case as a target test case (step S1004), and also generates a test case group including the target test case (step S1005).

具体的には、グループ生成モジュール124は、グループ情報135にエントリを追加し、追加されたエントリのグループID601に識別情報を設定する。グループ生成モジュール124は、テストケース604に列を追加し、ターゲットテストケースの識別情報を設定する。また、グループ生成モジュール124は、テストケース情報131を参照して、ターゲットテストケースのエントリのグルーピング213に「実行済」を設定する。   Specifically, the group generation module 124 adds an entry to the group information 135 and sets identification information in the group ID 601 of the added entry. The group generation module 124 adds a column to the test case 604 and sets the identification information of the target test case. Further, the group generation module 124 refers to the test case information 131 and sets “executed” to the grouping 213 of the entries of the target test case.

次に、グループ生成モジュール124は、ターゲットテストケースと依存関係があるテストケースが存在するか否かを判定する(ステップS1006)。   Next, the group generation module 124 determines whether or not there is a test case having a dependency relationship with the target test case (step S1006).

具体的には、グループ生成モジュール124は、前提条件206にターゲットテストケースの識別情報が格納されるエントリを検索する。当該エントリが存在しない場合、グループ生成モジュール124は、ターゲットテストケースと依存関係があるテストケースが存在しないと判定する。   Specifically, the group generation module 124 searches for an entry in which the identification information of the target test case is stored in the precondition 206. If the entry does not exist, the group generation module 124 determines that there is no test case having a dependency relationship with the target test case.

ターゲットテストケースと依存関係があるテストケースが存在すると判定された場合、グループ生成モジュール124は、検索されたテストケースをテストケースグループに追加する(ステップS1007)。   When it is determined that there is a test case having a dependency relationship with the target test case, the group generation module 124 adds the retrieved test case to the test case group (step S1007).

具体的には、グループ生成モジュール124は、テストケース情報131からステップS1006において検索されたテストケースの識別情報を取得する。グループ生成モジュール124は、ステップS1005においてグループ情報135に追加されたエントリのテストケース604に取得されたテストケースの識別情報を追加する。なお、テストケースの識別情報は、右から順に設定される。すなわち、新たに設定されるテストケースの識別情報が最も右側になるように設定される。   Specifically, the group generation module 124 acquires the identification information of the test case searched in step S1006 from the test case information 131. The group generation module 124 adds the identification information of the acquired test case to the test case 604 of the entry added to the group information 135 in step S1005. The test case identification information is set in order from the right. That is, the identification information of the newly set test case is set to the rightmost.

次に、グループ生成モジュール124は、テストケース情報131を参照して、ターゲットテストケースのエントリのグルーピング213に「実行済」を設定する(ステップS1008)。なお、既にグルーピング213が「実行済」である場合、当該ステップを省略できる。   Next, the group generation module 124 refers to the test case information 131 and sets "executed" to the grouping 213 of the entries of the target test case (step S1008). If the grouping 213 is already “executed”, this step can be omitted.

次に、グループ生成モジュール124は、ステップS1007において検索されたテストケースを新たなターゲットテストケースに設定する(ステップS1009)。その後、グループ生成モジュール124は、ステップS1006に戻り、同様の処理を実行する。   Next, the group generation module 124 sets the test case retrieved in step S1007 as a new target test case (step S1009). After that, the group generation module 124 returns to step S1006 and executes the same processing.

ステップS1006において、ターゲットテストケースと依存関係があるテストケースが存在しないと判定された場合、グループ生成モジュール124は、テストケース情報131を参照して、ターゲットテストケースのエントリのグルーピング213に「実行済」を設定する(ステップS1010)。なお、既にグルーピング213が「実行済」である場合、当該ステップを省略できる。   If it is determined in step S1006 that there is no test case that has a dependency relationship with the target test case, the group generation module 124 refers to the test case information 131 and sets “completed” in the grouping 213 of the target test case entries. Is set (step S1010). If the grouping 213 is already “executed”, this step can be omitted.

次に、グループ生成モジュール124は、ステップS1005において生成されたテストケースグループの重要度を算出する(ステップS1011)。具体的には、以下のような処理が実行される。   Next, the group generation module 124 calculates the importance of the test case group generated in step S1005 (step S1011). Specifically, the following processing is executed.

グループ生成モジュール124は、グループ情報135に追加されたエントリのテストケース604からテストケースグループに含まれるテストケースの識別情報を取得する。   The group generation module 124 acquires the identification information of the test case included in the test case group from the test case 604 of the entry added to the group information 135.

グループ生成モジュール124は、テストケース情報131を参照して、テストケースID201が取得されたテストケースの識別情報に一致するエントリを検索し、検索されたエントリの重要度205から値を取得する。グループ生成モジュール124は、取得された値を用いてテストケースグループの重要度を算出する。例えば、テストケースの重要度の合計値、平均値、最大値、及び最小値等がテストケースグループの重要度として算出される。   The group generation module 124 refers to the test case information 131 to search for an entry whose test case ID 201 matches the identification information of the acquired test case, and acquires a value from the importance 205 of the searched entry. The group generation module 124 uses the acquired values to calculate the importance of the test case group. For example, the total value, the average value, the maximum value, the minimum value, etc. of the importance of the test cases are calculated as the importance of the test case group.

グループ生成モジュール124は、グループ情報135に追加されたエントリのグループ重要度602に算出された重要度を設定する。以上がステップS1011の処理の説明である。   The group generation module 124 sets the calculated importance to the group importance 602 of the entry added to the group information 135. The above is the description of the process of step S1011.

次に、グループ生成モジュール124は、ステップS1002において特定された全てのテストケースについて処理が完了したか否かを判定する(ステップS1012)。   Next, the group generation module 124 determines whether the processing has been completed for all the test cases specified in step S1002 (step S1012).

ステップS1002において特定された全てのテストケースについて処理が完了していないと判定された場合、グループ生成モジュール124は、ステップS1003に戻り、特定されたテストケースの中から新たなテストケースを選択し、同様の処理を実行する。   When it is determined that the processing has not been completed for all the test cases specified in step S1002, the group generation module 124 returns to step S1003 and selects a new test case from the specified test cases, Perform similar processing.

ステップS1002において特定された全てのテストケースについて処理が完了したと判定された場合、グループ生成モジュール124は、テストケースのループ処理を終了し、テスト実行モジュール121に完了通知を送信する(ステップS1013)。その後、グループ生成モジュール124は、グループ生成処理を終了する。   When it is determined that the processing has been completed for all the test cases specified in step S1002, the group generation module 124 ends the test case loop processing and sends a completion notification to the test execution module 121 (step S1013). .. After that, the group generation module 124 ends the group generation process.

図2に示すテストケース情報131の場合、ステップS1002において、「TC2」、「TC3」、及び「TC5」が特定される。「TC2」のテストケースグループは「TC2」及び「TC1」を含み、「TC3」のテストケースグループは「TC3」のみを含み、「TC5」のテストケースグループは「TC1」、「TC4」、及び「TC5」を含む。「TC1」は二つのテストケースグループに含まれる。   In the case of the test case information 131 shown in FIG. 2, “TC2”, “TC3”, and “TC5” are specified in step S1002. The "TC2" test case group includes "TC2" and "TC1", the "TC3" test case group includes only "TC3", and the "TC5" test case group includes "TC1", "TC4", and Includes "TC5". “TC1” is included in two test case groups.

なお、グループ生成モジュール124は、変更したソフトウェアに関するテストケースのエントリのみについて、グルーピング213を「未実行」に設定してもよい。   The group generation module 124 may set the grouping 213 to “not executed” only for the test case entry related to the changed software.

以上の通り、グループ生成モジュール124は、テストケース間の依存関係に基づいて、一つ以上のテストケースを含むテストケースグループを生成できる。   As described above, the group generation module 124 can generate a test case group including one or more test cases based on the dependency relationship between the test cases.

図11は、実施例1のグループ評価モジュール125が実行するグループ評価処理の一例を説明するフローチャートである。   FIG. 11 is a flowchart illustrating an example of the group evaluation process executed by the group evaluation module 125 according to the first embodiment.

グループ評価モジュール125は、テストケースグループのループ処理を開始する(ステップS1101)。   The group evaluation module 125 starts the loop processing of the test case group (step S1101).

具体的には、グループ評価モジュール125は、グループ情報135を参照し、ターゲットテストケースグループを一つ選択する。   Specifically, the group evaluation module 125 refers to the group information 135 and selects one target test case group.

次に、グループ評価モジュール125は、ステージング環境でのみ実行可能なテストケースがターゲットテストケースグループに含まれるか否かを判定する(ステップS1102)。具体的には、以下のような処理が実行される。   Next, the group evaluation module 125 determines whether a test case that can be executed only in the staging environment is included in the target test case group (step S1102). Specifically, the following processing is executed.

グループ評価モジュール125は、グループ情報135を参照し、ターゲットテストケースグループのエントリのテストケース604からテストケースの識別情報を取得する。グループ評価モジュール125は、テストケース情報131を参照し、テストケースID201が取得されたテストケースの識別情報と一致するエントリを検索する。   The group evaluation module 125 refers to the group information 135 and acquires the identification information of the test case from the test case 604 of the entry of the target test case group. The group evaluation module 125 refers to the test case information 131, and searches for an entry whose test case ID 201 matches the identification information of the acquired test case.

グループ評価モジュール125は、検索されたエントリの代替環境207を参照し、代替環境207が「不可能」であるエントリが存在するか否かを判定する。代替環境207が「不可能」であるエントリが存在する場合、グループ評価モジュール125は、ステージング環境でのみ実行可能なテストケースがターゲットテストケースグループに含まれると判定する。以上がステップS1102の処理の説明である。   The group evaluation module 125 refers to the alternative environment 207 of the searched entry and determines whether or not there is an entry in which the alternative environment 207 is “impossible”. If there is an entry in which the alternative environment 207 is “impossible”, the group evaluation module 125 determines that the target test case group includes test cases that can be executed only in the staging environment. The above is the description of the process of step S1102.

ステージング環境でのみ実行可能なテストケースがターゲットテストケースグループに含まれないと判定された場合、グループ評価モジュール125は、グループ情報135を参照し、ターゲットテストケースグループのエントリの代替環境603に「可能」を設定する(ステップS1103)。すなわち、代替環境がターゲットテストケースグループの候補テスト環境として選択される。その後、グループ評価モジュール125は、ステップS1105に進む。   When it is determined that the target test case group does not include the test case that can be executed only in the staging environment, the group evaluation module 125 refers to the group information 135, and the target test case group entry “Allowed environment 603” is displayed. Is set (step S1103). That is, the alternative environment is selected as the candidate test environment for the target test case group. After that, the group evaluation module 125 proceeds to step S1105.

ステージング環境でのみ実行可能なテストケースがターゲットテストケースグループに含まれると判定された場合、グループ評価モジュール125は、グループ情報135を参照し、ターゲットテストケースグループのエントリの代替環境603に「不可能」を設定する(ステップS1104)。すなわち、ステージング環境がターゲットテストケースグループの候補テスト環境として選択される。その後、グループ評価モジュール125は、ステップS1105に進む。   When it is determined that the target test case group includes a test case that can be executed only in the staging environment, the group evaluation module 125 refers to the group information 135, and the target test case group entry's alternative environment 603 indicates “impossible”. Is set (step S1104). That is, the staging environment is selected as the candidate test environment for the target test case group. After that, the group evaluation module 125 proceeds to step S1105.

ステップS1105では、グループ評価モジュール125は、全てのテストケースグループについて処理が完了したか否かを判定する(ステップS1105)。   In step S1105, the group evaluation module 125 determines whether the processing has been completed for all test case groups (step S1105).

全てのテストケースグループについて処理が完了していないと判定された場合、グループ評価モジュール125は、ステップS1101に戻り、新たなターゲットテストケースグループを選択し、同様の処理を実行する。   If it is determined that the processing has not been completed for all the test case groups, the group evaluation module 125 returns to step S1101, selects a new target test case group, and executes the same processing.

全てのテストケースグループについて処理が完了したと判定された場合、グループ評価モジュール125は、テストケースグループのループ処理を終了し、テスト実行モジュール121に完了通知を送信する(ステップS1106)。その後、グループ評価モジュール125は、グループ評価処理を終了する。   When it is determined that the processing has been completed for all the test case groups, the group evaluation module 125 ends the loop processing of the test case groups and sends a completion notification to the test execution module 121 (step S1106). After that, the group evaluation module 125 ends the group evaluation process.

図12A及び図12Bは、実施例1の動的分類モジュール123が実行する動的分類処理の一例を説明するフローチャートである。   12A and 12B are flowcharts illustrating an example of the dynamic classification process executed by the dynamic classification module 123 according to the first embodiment.

動的分類モジュール123は、グループ情報135のエントリをグループ重要度の高い順に並び替える(ステップS1201)。本実施例では、値が小さいほど重要度が高いことから、グループ重要度602の値が小さい順にエントリが並び替えられる。ステップS1201の処理は、重要度の高いテストケースを優先的に実行するための処理である。   The dynamic classification module 123 rearranges the entries of the group information 135 in descending order of group importance (step S1201). In this embodiment, the smaller the value, the higher the importance. Therefore, the entries are rearranged in ascending order of the group importance 602. The process of step S1201 is a process for preferentially executing a test case having high importance.

次に、動的分類モジュール123は、テストケースグループのループ処理を開始する(ステップS1202)。   Next, the dynamic classification module 123 starts the loop processing of the test case group (step S1202).

具体的には、動的分類モジュール123は、グループ情報135を参照し、ターゲットテストケースを一つ選択する。また、動的分類モジュール123は、条件情報132から条件種別302に「動的」が設定されたエントリを取得する。   Specifically, the dynamic classification module 123 refers to the group information 135 and selects one target test case. The dynamic classification module 123 also acquires from the condition information 132 an entry in which “dynamic” is set in the condition type 302.

ステップS1203からステップS1212では、動的分類モジュール123は、動的条件に基づいて、選択されたテストケースグループを実行するテスト環境を決定する。   In steps S1203 to S1212, the dynamic classification module 123 determines a test environment in which the selected test case group is executed based on the dynamic condition.

次に、動的分類モジュール123は、グループ情報135を参照し、ターゲットテストケースグループに対応するエントリの代替環境603が「可能」であるか否かを判定する(ステップS1203)。すなわち、代替環境が候補テスト環境であるか否かが判定される。当該処理は、候補テスト環境を特定するための処理である。   Next, the dynamic classification module 123 refers to the group information 135 and determines whether the alternative environment 603 of the entry corresponding to the target test case group is “possible” (step S1203). That is, it is determined whether the alternative environment is a candidate test environment. The process is a process for specifying a candidate test environment.

ターゲットテストケースグループに対応するエントリの代替環境603が「不可能」であると判定された場合、動的分類モジュール123は、テスト環境情報133を参照し、ターゲットテストケースグループを実行するステージング環境を決定する(ステップS1205)。その後、動的分類モジュール123は、ステップS1211に進む。具体的には、以下のような処理が実行される。   When it is determined that the alternative environment 603 of the entry corresponding to the target test case group is “impossible”, the dynamic classification module 123 refers to the test environment information 133 and determines the staging environment for executing the target test case group. It is determined (step S1205). After that, the dynamic classification module 123 proceeds to step S1211. Specifically, the following processing is executed.

動的分類モジュール123は、テスト環境情報133を参照し、テスト環境種別402が「ステージング」であるエントリを検索する。動的分類モジュール123は、検索されたエントリのCPU使用率405及びメモリ使用率406を取得する。動的分類モジュール123は、取得されたCPU使用率及びメモリ使用率に基づいて、項目303が「稼働状態」である動的条件を満たすステージング環境を特定する。   The dynamic classification module 123 refers to the test environment information 133 and searches for an entry whose test environment type 402 is “staging”. The dynamic classification module 123 acquires the CPU usage rate 405 and the memory usage rate 406 of the retrieved entry. The dynamic classification module 123 identifies a staging environment that satisfies the dynamic condition that the item 303 is “operating state” based on the acquired CPU usage rate and memory usage rate.

動的分類モジュール123は、特定されたステージング環境の中からCPU使用率が最も小さいステージング環境を選択する。動的分類モジュール123は、選択されたステージング環境を、選択されたテストケースグループを実行するステージング環境に決定する。なお、前述した処理は一例であってこれに限定されない。以上がステップS1205の処理の説明である。   The dynamic classification module 123 selects the staging environment with the smallest CPU usage rate from the identified staging environments. The dynamic classification module 123 determines the selected staging environment to be the staging environment that executes the selected test case group. Note that the above-described processing is an example, and the present invention is not limited to this. The above is the description of the process of step S1205.

ターゲットテストケースグループに対応するエントリの代替環境603が「可能」であると判定された場合、動的分類モジュール123は、代替環境を使用できるか否かを判定する(ステップS1204)。   When it is determined that the alternative environment 603 of the entry corresponding to the target test case group is “possible”, the dynamic classification module 123 determines whether the alternative environment can be used (step S1204).

具体的には、動的分類モジュール123は、条件情報132を参照し、条件種別302が「動的」かつ項目303が「スケジュール」であるエントリの条件304に設定されたスケジュールに基づいて、代替環境を使用できるか否かを判定する。例えば、動的分類モジュール123は、現在時刻又はテストケースグループの開始予定時刻と、スケジュールとを比較することによって、代替環境を使用できるか否かを判定できる。   Specifically, the dynamic classification module 123 refers to the condition information 132 and substitutes based on the schedule set in the condition 304 of the entry in which the condition type 302 is “dynamic” and the item 303 is “schedule”. Determine if the environment can be used. For example, the dynamic classification module 123 can determine whether an alternative environment can be used by comparing the current time or the scheduled start time of the test case group with the schedule.

代替環境を使用できないと判定された場合、動的分類モジュール123は、ステップS1205に進む。   If it is determined that the alternative environment cannot be used, the dynamic classification module 123 proceeds to step S1205.

代替環境を使用できると判定された場合、動的分類モジュール123は、ターゲットテストケースグループを実行する代替環境を決定する(ステップS1206)。   When it is determined that the alternative environment can be used, the dynamic classification module 123 determines the alternative environment in which the target test case group is executed (step S1206).

具体的には、動的分類モジュール123は、テスト環境情報133を参照し、テスト環境種別402が「代替」であるエントリを検索する。動的分類モジュール123は、検索されたエントリのCPU使用率405又はメモリ使用率406の値が最も小さい代替環境を選択する。動的分類モジュール123は、選択された代替環境を、ターゲットテストケースグループを実行する代替環境に決定する。以上がステップS1206の処理の説明である。   Specifically, the dynamic classification module 123 refers to the test environment information 133 and searches for an entry whose test environment type 402 is “substitute”. The dynamic classification module 123 selects an alternative environment in which the value of the CPU usage rate 405 or the memory usage rate 406 of the retrieved entry is the smallest. The dynamic classification module 123 determines the selected alternative environment as the alternative environment for executing the target test case group. The above is the description of the process of step S1206.

次に、動的分類モジュール123は、決定された代替環境にテストに必要なリソースが存在するか否かを判定する(ステップS1207)。   Next, the dynamic classification module 123 determines whether or not the resources required for the test exist in the determined alternative environment (step S1207).

具体的には、動的分類モジュール123は、テスト環境情報133を参照し、決定された代替環境に対応するエントリのCPU使用率405及びメモリ使用率406の値を取得する。動的分類モジュール123は、取得されたCPU使用率及びメモリ使用率に基づいて、項目303が「稼働状態」である動的条件を満たすか否かを判定する。項目303が「稼働状態」である動的条件を満たさない場合、動的分類モジュール123は、決定された代替環境にテストに必要なリソースが存在しないと判定する。   Specifically, the dynamic classification module 123 refers to the test environment information 133 and acquires the values of the CPU usage rate 405 and the memory usage rate 406 of the entry corresponding to the determined alternative environment. The dynamic classification module 123 determines, based on the acquired CPU usage rate and memory usage rate, whether or not the item 303 satisfies the dynamic condition of “operating state”. When the item 303 does not satisfy the dynamic condition of being “operating state”, the dynamic classification module 123 determines that the determined alternative environment does not have the resources necessary for the test.

決定された代替環境にテストに必要なリソースが存在すると判定された場合、動的分類モジュール123は、ステップS1211に進む。   When it is determined that the resources necessary for the test exist in the determined alternative environment, the dynamic classification module 123 proceeds to step S1211.

決定された代替環境にテストに必要なリソースが存在しないと判定された場合、動的分類モジュール123は、コスト算出モジュール127を呼び出す(ステップS1208)。このとき、動的分類モジュール123は、ターゲットテストケースグループの識別情報をコスト算出モジュール127に入力する。動的分類モジュール123は、コスト算出モジュール127から使用料金を含む応答を受信するまで待ち状態に移行する。コスト算出モジュール127が実行する処理は、図14を用いて説明する。   When it is determined that the resources necessary for the test do not exist in the determined alternative environment, the dynamic classification module 123 calls the cost calculation module 127 (step S1208). At this time, the dynamic classification module 123 inputs the identification information of the target test case group to the cost calculation module 127. The dynamic classification module 123 shifts to a waiting state until it receives a response including a usage fee from the cost calculation module 127. The processing executed by the cost calculation module 127 will be described with reference to FIG.

動的分類モジュール123は、コスト算出モジュール127から使用料金を含む応答を受信した場合、予算内で代替環境の構成を追加できるか否かを判定する(ステップS1209)。   When the dynamic classification module 123 receives the response including the usage fee from the cost calculation module 127, the dynamic classification module 123 determines whether the configuration of the alternative environment can be added within the budget (step S1209).

具体的には、動的分類モジュール123は、使用料金が予算以下であるか否かを判定する。使用料金が予算以下である場合、動的分類モジュール123は、予算内で代替環境を追加できると判定する。   Specifically, the dynamic classification module 123 determines whether the usage fee is less than or equal to the budget. If the usage fee is less than or equal to the budget, the dynamic classification module 123 determines that the alternative environment can be added within the budget.

予算内で代替環境を追加できないと判定された場合、動的分類モジュール123は、ステップS1211に進む。   When it is determined that the alternative environment cannot be added within the budget, the dynamic classification module 123 proceeds to step S1211.

予算内で代替環境を追加できると判定された場合、動的分類モジュール123は、テスト環境を追加し(ステップS1210)、追加されたテスト環境を、選択されたテストケースグループを実行するテスト環境に決定する。その後、動的分類モジュール123は、ステップS1211に進む。テスト環境の追加方法は公知の技術を用いればよいため説明を省略する。   When it is determined that the alternative environment can be added within the budget, the dynamic classification module 123 adds the test environment (step S1210), and the added test environment becomes the test environment that executes the selected test case group. decide. After that, the dynamic classification module 123 proceeds to step S1211. A well-known technique may be used for the method of adding the test environment, and thus the description thereof will be omitted.

なお、本実施例では、代替環境の使用料金はステージング環境より使用料金が低いため、通常、ステップS1210では代替環境が生成される。   In the present embodiment, the usage fee of the alternative environment is lower than the usage fee of the staging environment, so that the alternative environment is normally generated in step S1210.

ステップS1203からステップS1210に示すように、動的分類モジュール123は、動的条件に基づいてテストケースグループを実行するテスト環境を決定する。   As shown in steps S1203 to S1210, the dynamic classification module 123 determines a test environment in which to execute the test case group based on the dynamic condition.

ステップS1211では、動的分類モジュール123は、ターゲットテストケースグループに含まれるテストケースのループ処理を開始する(ステップS1211)。   In step S1211, the dynamic classification module 123 starts loop processing of the test cases included in the target test case group (step S1211).

具体的には、動的分類モジュール123は、グループ情報135を参照し、ターゲットテストケースグループのエントリのテストケース604に設定されたテストケースの識別情報(ターゲットテストケース)を一つ選択する。このとき、動的分類モジュール123は、テストケースの実行順にテストケースの識別情報を選択する。すなわち、左から順にテストケースの識別情報が選択される。テストケース604には、テストケースの実行順とは逆の順番でテストケースが設定されているためである。   Specifically, the dynamic classification module 123 refers to the group information 135 and selects one piece of test case identification information (target test case) set in the test case 604 of the entry of the target test case group. At this time, the dynamic classification module 123 selects the identification information of the test cases in the order of execution of the test cases. That is, the test case identification information is selected in order from the left. This is because the test cases are set in the test case 604 in the reverse order of the execution order of the test cases.

次に、動的分類モジュール123は、ターゲットテストケースをテスト実行キュー情報136に登録する(ステップS1212)。   Next, the dynamic classification module 123 registers the target test case in the test execution queue information 136 (step S1212).

具体的には、動的分類モジュール123は、テスト実行キュー情報136にエントリを追加し、追加されたエントリのキューID701に識別情報を設定する。また、動的分類モジュール123は、テストケースID702にターゲットテストケースの識別情報を設定し、グループID703にターゲットテストケースグループの識別情報を設定する。さらに、動的分類モジュール123は、追加されたエントリの実行環境ID704に決定されたテスト環境の識別情報を設定する。   Specifically, the dynamic classification module 123 adds an entry to the test execution queue information 136 and sets identification information in the queue ID 701 of the added entry. Further, the dynamic classification module 123 sets the identification information of the target test case in the test case ID 702 and the identification information of the target test case group in the group ID 703. Further, the dynamic classification module 123 sets the identification information of the determined test environment in the execution environment ID 704 of the added entry.

次に、動的分類モジュール123は、ターゲットテストケースグループに含まれる全てのテストケースについて処理が完了したか否かを判定する(ステップS1213)。   Next, the dynamic classification module 123 determines whether the processing has been completed for all test cases included in the target test case group (step S1213).

ターゲットテストケースグループに含まれる全てのテストケースについて処理が完了していないと判定された場合、動的分類モジュール123は、ステップS1211に戻り、新たなターゲットテストケースを選択し、同様の処理を実行する。   When it is determined that the processing has not been completed for all test cases included in the target test case group, the dynamic classification module 123 returns to step S1211, selects a new target test case, and executes the same processing. To do.

ターゲットテストケースグループに含まれる全てのテストケースについて処理が完了したと判定された場合、動的分類モジュール123は、全てのテストケースグループについて処理が完了したか否かを判定する(ステップS1214)。   When it is determined that the processing has been completed for all the test cases included in the target test case group, the dynamic classification module 123 determines whether the processing has been completed for all the test case groups (step S1214).

全てのテストケースグループについて処理が完了していないと判定された場合、動的分類モジュール123は、ステップS1202に戻り、新たにターゲットテストケースグループを選択し、同様の処理を実行する。   When it is determined that the processing has not been completed for all the test case groups, the dynamic classification module 123 returns to step S1202, newly selects the target test case group, and executes the same processing.

全てのテストケースグループについて処理が完了したと判定された場合、動的分類モジュール123は、テスト実行モジュール121に完了通知を送信する(ステップS1216)。その後、動的分類モジュール123は、動的分類処理を終了する。   When it is determined that the processing has been completed for all the test case groups, the dynamic classification module 123 sends a completion notification to the test execution module 121 (step S1216). After that, the dynamic classification module 123 ends the dynamic classification process.

以上の通り、動的分類モジュール123は、動的条件に基づいて、実際にテストケースグループを実行するテスト環境を決定できる。   As described above, the dynamic classification module 123 can determine the test environment in which the test case group is actually executed based on the dynamic condition.

図13は、実施例1の情報取得モジュール126が実行する処理の一例を説明するフローチャートである。   FIG. 13 is a flowchart illustrating an example of processing executed by the information acquisition module 126 according to the first embodiment.

情報取得モジュール126は、周期的に、又は、テスト実行モジュール121から開始命令を受け付けた場合に、以下で説明する処理を開始する。   The information acquisition module 126 starts the process described below periodically or when receiving a start command from the test execution module 121.

情報取得モジュール126は、テスト環境のループ処理を開始する(ステップS1301)。   The information acquisition module 126 starts the loop processing of the test environment (step S1301).

具体的には、情報取得モジュール126は、テスト環境情報133を参照し、ターゲットテスト環境を一つ選択する。   Specifically, the information acquisition module 126 refers to the test environment information 133 and selects one target test environment.

情報取得モジュール126は、ターゲットテスト環境から、当該テスト環境の稼働状態を示す状態情報を取得する(ステップS1302)。   The information acquisition module 126 acquires status information indicating the operating status of the test environment from the target test environment (step S1302).

テスト環境の状態とは、CPU使用率、メモリ使用率、ネットワーク帯域、IO性能等を示す。なお、状態情報を取得する方法は公知であるため詳細な説明を省略する。   The state of the test environment indicates CPU usage rate, memory usage rate, network band, IO performance, and the like. Since the method of acquiring the state information is publicly known, detailed description will be omitted.

次に、情報取得モジュール126は、取得された状態情報をテスト環境情報133に登録する(ステップS1303)。本実施例では、ターゲットテスト環境のエントリのCPU使用率405及びメモリ使用率406に値が設定される。   Next, the information acquisition module 126 registers the acquired status information in the test environment information 133 (step S1303). In this embodiment, values are set to the CPU usage rate 405 and the memory usage rate 406 of the entry of the target test environment.

次に、情報取得モジュール126は、全てのテスト環境について処理が完了したか否かを判定する(ステップS1304)。   Next, the information acquisition module 126 determines whether processing has been completed for all test environments (step S1304).

全てのテスト環境について処理が完了していないと判定された場合、情報取得モジュール126は、ステップS1301に戻り、新たなターゲットテスト環境を選択し、同様の処理を実行する。   When it is determined that the processing has not been completed for all the test environments, the information acquisition module 126 returns to step S1301, selects a new target test environment, and executes the same processing.

全てのテスト環境について処理が完了したと判定された場合、情報取得モジュール126は、処理を終了する。   When it is determined that the processing has been completed for all the test environments, the information acquisition module 126 ends the processing.

以上の通り、情報取得モジュール126は、テスト環境の状態情報を取得できる。   As described above, the information acquisition module 126 can acquire the status information of the test environment.

図14は、実施例1のコスト算出モジュール127が実行する処理の一例を説明するフローチャートである。   FIG. 14 is a flowchart illustrating an example of processing executed by the cost calculation module 127 according to the first embodiment.

コスト算出モジュール127は、ステップS1202において選択されたターゲットテストケースグループを実行する代替環境の利用料金(運用コスト)を算出する(ステップS1401)。具体的には、以下のような処理が実行される。   The cost calculation module 127 calculates the usage charge (operation cost) of the alternative environment for executing the target test case group selected in step S1202 (step S1401). Specifically, the following processing is executed.

コスト算出モジュール127は、グループ情報135を参照し、ステップS1202において選択されたテストケースグループのエントリのテストケース604からテストケースの識別情報を取得する。   The cost calculation module 127 refers to the group information 135 and acquires the test case identification information from the test case 604 of the entry of the test case group selected in step S1202.

コスト算出モジュール127は、テストケース情報131を参照し、テストケースID201が取得されたテストケースの識別情報と一致するエントリの予測時間210の値を取得する。コスト算出モジュール127は、取得された値を合計することによってテストケースグループの予測時間を算出する。   The cost calculation module 127 refers to the test case information 131, and acquires the value of the predicted time 210 of the entry whose test case ID 201 matches the identification information of the acquired test case. The cost calculation module 127 calculates the predicted time of the test case group by summing the acquired values.

コスト算出モジュール127は、ライセンス情報134を参照し、各エントリの料金505の値を取得する。コスト算出モジュール127は、単位時間当たりの料金に予測時間を乗算することによって、各テスト環境の使用料金を算出する。以上がステップS1401の処理の説明である。   The cost calculation module 127 refers to the license information 134 and acquires the value of the charge 505 of each entry. The cost calculation module 127 calculates the usage charge of each test environment by multiplying the charge per unit time by the estimated time. The above is the description of the process of step S1401.

コスト算出モジュール127は、使用料金が最も低いテスト環境を選択し、動的分類モジュール123に選択されたテスト環境の識別情報及び使用料金を出力する(ステップS1402)。その後、コスト算出モジュール127は、処理を終了する。   The cost calculation module 127 selects the test environment with the lowest usage charge, and outputs the identification information and the usage charge of the selected test environment to the dynamic classification module 123 (step S1402). Then, the cost calculation module 127 ends the process.

動的分類モジュール123は、テスト環境の識別情報に基づいて、決定されたテスト環境と同等の構成のテスト環境を追加することができる。   The dynamic classification module 123 can add a test environment having the same configuration as the determined test environment based on the identification information of the test environment.

実施例1では、ユーザが運用コストの削減を要求した場合のテスト環境の決定方法について説明した。なお、管理サーバ100は、ユーザ要求に応じて決定するテスト環境を変更できる。一般化した場合の情報及び処理の内容について説明する。   The first embodiment has described the method of determining the test environment when the user requests the reduction of the operating cost. The management server 100 can change the test environment determined according to a user request. The information and the content of processing in the case of generalization will be described.

テストケース情報131の代替環境207は、選択テスト環境IDに置き換えられる。選択テスト環境IDには、テストケースを実行できるテスト環境の識別情報が格納さる。グループ情報135の代替環境603は、候補テスト環境IDに置き換えられる。候補テスト環境IDには、具体的なテスト環境の識別情報又はテスト環境の種別が格納される。   The alternative environment 207 of the test case information 131 is replaced with the selected test environment ID. The selected test environment ID stores the identification information of the test environment in which the test case can be executed. The alternative environment 603 of the group information 135 is replaced with the candidate test environment ID. The candidate test environment ID stores specific identification information of the test environment or the type of the test environment.

グループ評価モジュール125は、ステップS1102からステップS1104の代わりに、選択テスト環境IDに設定されたテスト環境の中から候補テスト環境を選択する。また、グループ評価モジュール125は、グループ情報135の候補テスト環境IDに選択された候補テスト環境の識別情報を設定する。例えば、処理コストの削減を目的としたユーザ要求の場合、全てのテストケースを実行可能なテスト環境であり、かつ、CPU使用率が最も小さいテスト環境が選択される。   The group evaluation module 125 selects a candidate test environment from the test environments set in the selected test environment ID instead of steps S1102 to S1104. Further, the group evaluation module 125 sets the identification information of the selected candidate test environment in the candidate test environment ID of the group information 135. For example, in the case of a user request for the purpose of reducing the processing cost, a test environment that can execute all test cases and has the smallest CPU usage rate is selected.

動的分類モジュール123は、ステップS1203において、グループ情報135を参照し、候補テスト環境を特定する。動的分類モジュール123は、ステップS1206において、候補テスト環境以外のテスト環境の中から動的条件に基づいて、テスト環境を検索し、検索されたテスト環境の中から実行テスト環境を決定する。   The dynamic classification module 123 identifies the candidate test environment by referring to the group information 135 in step S1203. In step S1206, the dynamic classification module 123 searches the test environments other than the candidate test environment for the test environment based on the dynamic condition, and determines the execution test environment from the searched test environments.

ここで、実施例1で説明した以外のユーザ要求の処理例について説明する。例えば、テスト時間の削減(処理コストの削減)を目的とする場合、静的条件は変更せず、動的条件を「CPU使用率<30%かつメモリ使用率30%」、「テスト環境=2」と設定する方法が考えられる。前述した条件の場合、管理サーバ100は、代替環境を候補テスト環境に設定し、当該候補テスト環境の中から使用するリソース量が低い代替環境を二つ選択する。   Here, a processing example of a user request other than that described in the first embodiment will be described. For example, for the purpose of reducing the test time (reducing the processing cost), the static condition is not changed, and the dynamic condition is set to "CPU usage rate <30% and memory usage rate 30%", "test environment = 2". It is possible to set it as ". In the case of the above-mentioned conditions, the management server 100 sets an alternative environment as a candidate test environment, and selects two alternative environments that use a small amount of resources from the candidate test environments.

また、静的条件としてソフトウェアの名称又は機能の種別等を設定してもよい。これによって、指定されたソフトウェア又は機能を有するテスト環境を候補テスト環境に設定できる。   Further, the name of software or the type of function may be set as a static condition. Thereby, the test environment having the designated software or function can be set as the candidate test environment.

実施例1によれば、管理サーバ100は、テストの内容に基づいてテストケースグループを実行する候補テスト環境を選択し、さらに、テスト環境の状態及びユーザ要求に基づいてテストケースグループを実行するテスト環境を決定できる。   According to the first embodiment, the management server 100 selects a candidate test environment in which to execute a test case group based on the content of the test, and further executes a test in which the test case group is executed based on the status of the test environment and the user request. The environment can be determined.

予め候補テスト環境が決定されているため、管理サーバ100は、テスト環境を迅速に決定できる。また、管理サーバ100は、テスト環境の状態に応じて、ユーザ要求に合致したテスト環境を決定できる。   Since the candidate test environment is determined in advance, the management server 100 can quickly determine the test environment. Further, the management server 100 can determine the test environment that matches the user request according to the state of the test environment.

例えば、ユーザが運用コストの削減を要求している場合、管理サーバ100は、代替環境を選択する。ユーザがテスト時間の削減を要求している場合、管理サーバ100は、使用リソース量が少ないテスト環境、又は、負荷が低いテスト環境を選択する。   For example, when the user requests the reduction of the operating cost, the management server 100 selects the alternative environment. When the user requests reduction of the test time, the management server 100 selects a test environment with a small amount of used resources or a test environment with a low load.

実施例2では、オンプレミス型システム101及びクラウド型システム102のそれぞれにテスト環境が生成される点が異なる。   The second embodiment is different in that a test environment is generated in each of the on-premises system 101 and the cloud system 102.

実施例2の計算機システムの構成及び管理サーバ100の構成は実施例1と同一である。テストケース情報131、ライセンス情報134、グループ情報135、及びテスト実行キュー情報136は実施例1と同一である。実施例2では、条件情報132及びテスト環境情報133が異なる。   The configuration of the computer system of the second embodiment and the configuration of the management server 100 are the same as those of the first embodiment. The test case information 131, license information 134, group information 135, and test execution queue information 136 are the same as in the first embodiment. In the second embodiment, the condition information 132 and the test environment information 133 are different.

実施例2では、テスト環境情報133にシステム種別のカラムが新たに追加される。当該カラムには、例えば、「オンプレミス」及び「クラウド」のいずれかが格納される。これによって、どのシステム上に生成されたテスト環境であるかを識別できる。   In the second embodiment, a system type column is newly added to the test environment information 133. In the column, for example, either "on-premises" or "cloud" is stored. This makes it possible to identify on which system the test environment was created.

実施例2では、テストに要する使用料金の削減を目的とする場合、条件情報132には静的条件として「オンプレミス」が設定される。オンプレミス型システム101を使用した方が料金を削減できるためである。   In the second embodiment, in order to reduce the usage fee required for the test, “on-premises” is set as the static condition in the condition information 132. This is because using the on-premise type system 101 can reduce the charge.

実施例2の各モジュールが実行する処理の流れは実施例1と同一である。ただし、静的分類モジュール122及び動的分類モジュール123が実行する処理が一部異なる。   The flow of processing executed by each module of the second embodiment is the same as that of the first embodiment. However, the processes executed by the static classification module 122 and the dynamic classification module 123 are partially different.

具体的には、静的分類モジュール122は、オンプレミス型システム101上のテスト環境を候補テスト環境に選択する。また、動的分類モジュール123は、オンプレミス型システム101上のテスト環境の中からテストケースグループを実行するテスト環境を決定する。オンプレミス型システム101上のテスト環境が不足している場合、動的分類モジュール123は、クラウド型システム102上のテスト環境の中からテストケースグループを実行するテスト環境を決定する。   Specifically, the static classification module 122 selects a test environment on the on-premises system 101 as a candidate test environment. Further, the dynamic classification module 123 determines the test environment in which the test case group is executed from the test environments on the on-premises system 101. When the test environment on the on-premises system 101 is insufficient, the dynamic classification module 123 determines the test environment to execute the test case group from the test environments on the cloud system 102.

前述した制御を実現するためには、例えば、ステップS1208において、動的分類モジュール123は、オンプレミス型システム101に項目303が「稼働状態」である動的条件を満たすテスト環境を生成できるか否かを判定する。   In order to realize the above-described control, for example, in step S1208, the dynamic classification module 123 can generate a test environment in the on-premises system 101 that satisfies the dynamic condition in which the item 303 is “operating state”. To judge.

当該判定結果がYESの場合、動的分類モジュール123は、ステップS1211に進む。当該判定結果がNOの場合、動的分類モジュール123は、ステップS1209に進む。このとき、動的分類モジュール123は、システム種別「クラウド」をコスト算出モジュール127に入力する。   If the determination result is YES, the dynamic classification module 123 proceeds to step S1211. If the determination result is NO, the dynamic classification module 123 proceeds to step S1209. At this time, the dynamic classification module 123 inputs the system type “cloud” to the cost calculation module 127.

実施例2も実施例1と同様の効果を有する。   The second embodiment also has the same effect as the first embodiment.

なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。   It should be noted that the present invention is not limited to the above-described embodiments, but includes various modifications. In addition, for example, the above-described embodiment is a detailed description of the configuration in order to explain the present invention in an easy-to-understand manner, and is not necessarily limited to one having all the configurations described. Further, a part of the configuration of the embodiment can be added, deleted, or replaced with another configuration.

また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるCPUが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、CD−ROM、DVD−ROM、ハードディスク、SSD(Solid State Drive)、光ディスク、光磁気ディスク、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどが用いられる。   Further, the above-described respective configurations, functions, processing units, processing means, etc. may be realized by hardware by designing a part or all of them, for example, with an integrated circuit. The present invention can also be realized by a program code of software that realizes the functions of the embodiments. In this case, the storage medium recording the program code is provided to the computer, and the CPU included in the computer reads the program code stored in the storage medium. In this case, the program code itself read from the storage medium realizes the function of the above-described embodiment, and the program code itself and the storage medium storing the program code constitute the present invention. As a storage medium for supplying such a program code, for example, a flexible disk, a CD-ROM, a DVD-ROM, a hard disk, an SSD (Solid State Drive), an optical disk, a magneto-optical disk, a CD-R, a magnetic tape, A non-volatile memory card, ROM or the like is used.

また、本実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、C/C++、perl、Shell、PHP、Java等の広範囲のプログラム又はスクリプト言語で実装できる。   Further, the program code for realizing the functions described in the present embodiment can be implemented by a wide range of programs or script languages such as assembler, C / C ++, perl, Shell, PHP, and Java.

さらに、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手段又はCD−RW、CD−R等の記憶媒体に格納し、コンピュータが備えるCPUが当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしてもよい。   Furthermore, by distributing the program code of the software that realizes the functions of the embodiments via a network, the program code is stored in a storage means such as a hard disk or a memory of a computer or a storage medium such as a CD-RW or a CD-R. Alternatively, the CPU included in the computer may read and execute the program code stored in the storage unit or the storage medium.

上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。   In the above-described embodiments, the control lines and information lines are shown to be necessary for explanation, and not all the control lines and information lines on the product are necessarily shown. All configurations may be connected to each other.

Claims (14)

一つ以上のテストケースを含むテストケースグループを実行する複数のテスト環境が構築された計算機システムと接続する管理計算機であって、
前記計算機システムは、複数の計算機を含み、
前記管理計算機は、
プロセッサ、前記プロセッサに接続されるメモリ、前記プロセッサに接続されるネットワークインタフェースを有し、
前記テストケースグループの識別情報、及び前記テストケースグループに含まれるテストケースの特性に基づいて決定された候補テスト環境の識別情報から構成されるエントリを含むグループ情報と、前記テスト環境の状態に関する条件である動的条件を含む条件情報と、を保持し、
前記プロセッサは、
第1のテストケースグループの実行契機を検出した場合、前記グループ情報を参照して前記第1のテストケースグループの候補テスト環境を特定し、
前記候補テスト環境の状態を示す状態情報を取得し、
前記条件情報及び前記状態情報に基づいて、前記候補テスト環境の中から前記第1のテストケースグループを実行する実行テスト環境を決定することを特徴とする管理計算機。
A management computer connected to a computer system in which a plurality of test environments for executing a test case group including one or more test cases is constructed,
The computer system includes a plurality of computers,
The management computer is
A processor, a memory connected to the processor, and a network interface connected to the processor,
Group information including an entry composed of the identification information of the test case group and the identification information of the candidate test environment determined based on the characteristics of the test cases included in the test case group, and the condition related to the state of the test environment. Holds condition information, including dynamic conditions that are
The processor is
When the execution trigger of the first test case group is detected, the candidate test environment of the first test case group is identified by referring to the group information,
Obtaining status information indicating the status of the candidate test environment,
A management computer that determines an execution test environment for executing the first test case group from the candidate test environments based on the condition information and the state information.
請求項1に記載の管理計算機であって、
前記管理計算機は、前記テスト環境の構成及び状態を管理するテスト環境情報を保持し、
前記プロセッサは、
前記テスト環境情報を参照して、前記動的条件を満たす前記候補テスト環境が存在するか否かを判定し、
前記動的条件を満たす前記候補テスト環境が存在すると判定された場合、前記動的条件を満たす前記候補テスト環境の中から前記実行テスト環境を決定することを特徴とする管理計算機。
The management computer according to claim 1,
The management computer holds test environment information for managing the configuration and status of the test environment,
The processor is
With reference to the test environment information, determine whether or not the candidate test environment that satisfies the dynamic condition,
A management computer, wherein when it is determined that the candidate test environment that satisfies the dynamic condition exists, the execution test environment is determined from among the candidate test environments that satisfy the dynamic condition.
請求項2に記載の管理計算機であって、
前記プロセッサは、
前記動的条件を満たす前記候補テスト環境が存在しないと判定された場合、前記候補テスト環境の構成及び前記動的条件に基づいて、前記動的条件を満たすテスト環境を生成し、
前記生成されたテスト環境を前記実行テスト環境に決定することを特徴とすることを特徴とする管理計算機。
The management computer according to claim 2, wherein
The processor is
When it is determined that the candidate test environment that satisfies the dynamic condition does not exist, a test environment that satisfies the dynamic condition is generated based on the configuration of the candidate test environment and the dynamic condition,
A management computer, characterized in that the generated test environment is determined as the execution test environment.
請求項3に記載の管理計算機であって、
前記第1のテストケースグループは、複数のテストケースを含み、
前記条件情報は、前記テストケースの特性に関する条件である静的条件を含み、
前記プロセッサは、
前記第1のテストケースグループに含まれる各テストケースの特性を解析し、
前記解析の結果及び前記静的条件に基づいて前記候補テスト環境を選択し、
前記第1のテストケースグループの識別情報、及び前記選択された候補テスト環境の識別情報から構成されるエントリを前記グループ情報に登録することを特徴とする管理計算機。
The management computer according to claim 3,
The first test case group includes a plurality of test cases,
The condition information includes a static condition that is a condition related to the characteristics of the test case,
The processor is
Analyzing the characteristics of each test case included in the first test case group,
Selecting the candidate test environment based on the results of the analysis and the static conditions,
A management computer, wherein an entry composed of identification information of the first test case group and identification information of the selected candidate test environment is registered in the group information.
請求項4に記載の管理計算機であって、
前記管理計算機は、前記テストケースの識別情報、前記テストケース間の依存関係、及び前記テストケースを実行可能なテスト環境の識別情報から構成されるエントリを含むテストケース情報を保持し、
前記プロセッサは、
前記テストケース情報によって管理される複数のテストケースの各々について、前記静的条件を満たすテスト環境を特定し、
前記テストケース間の依存関係に基づいて前記第1のテストケースグループを生成し、
前記第1のテストケースグループに含まれる各テストケースの前記静的条件を満たすテスト環境の中から前記候補テスト環境を選択し、
前記テストケースグループの識別情報、及び前記候補テスト環境の識別情報から構成されるエントリを前記グループ情報に登録することを特徴とする管理計算機。
The management computer according to claim 4,
The management computer holds test case information including an entry composed of identification information of the test case, dependency between the test cases, and identification information of a test environment capable of executing the test case,
The processor is
For each of a plurality of test cases managed by the test case information, specify a test environment that satisfies the static conditions,
Generating the first test case group based on the dependencies between the test cases,
Selecting the candidate test environment from test environments satisfying the static condition of each test case included in the first test case group,
A management computer, wherein an entry composed of identification information of the test case group and identification information of the candidate test environment is registered in the group information.
請求項3に記載の管理計算機であって、
前記管理計算機は、前記テスト環境の利用料金を算出するためのコスト情報を保持し、
前記動的条件は、前記テスト環境のリソースの使用率を指定する条件を含み、
前記複数のテスト環境は、第1のテスト環境、及び前記第1のテスト環境より前記テストケースの実行に要するコストが低い第2のテスト環境を含み、
前記プロセッサは、
前記第1のテストケースグループの前記候補テスト環境が前記第2のテスト環境である場合、前記第2のテスト環境の状態を示す状態情報を取得し、
前記状態情報及び前記動的条件に基づいて、前記第2のテスト環境を用いて前記第1のテストケースグループを実行できるか否かを判定し、
前記第2のテスト環境を用いて前記第1のテストケースグループを実行できないと判定された場合、前記コスト情報に基づいて前記候補テスト環境と同一のテスト環境を追加するためのコストを算出し、
前記コストが閾値以下であると判定された場合、新たに第2のテスト環境を追加し、当該第2のテスト環境を前記実行テスト環境に決定することを特徴とする管理計算機。
The management computer according to claim 3,
The management computer holds cost information for calculating the usage fee of the test environment,
The dynamic condition includes a condition specifying a resource usage rate of the test environment,
The plurality of test environments include a first test environment and a second test environment that costs less to execute the test case than the first test environment,
The processor is
When the candidate test environment of the first test case group is the second test environment, the status information indicating the status of the second test environment is acquired,
Determining whether or not the first test case group can be executed using the second test environment based on the state information and the dynamic condition,
When it is determined that the first test case group cannot be executed using the second test environment, a cost for adding the same test environment as the candidate test environment is calculated based on the cost information,
A management computer, wherein when the cost is determined to be less than or equal to a threshold, a second test environment is newly added and the second test environment is determined as the execution test environment.
請求項6に記載の管理計算機であって、
前記動的条件は、前記第2のテスト環境が使用可能な時間を示す条件を含み、
前記プロセッサは、
前記第1のテストケースグループの前記候補テスト環境が前記第2のテスト環境である場合、前記第2のテスト環境を使用できる時間帯であるか否かを判定し、
前記第2のテスト環境を使用できる時間帯であると判定された場合、前記第2のテスト環境を前記実行テスト環境に決定し、
前記第2のテスト環境を使用できる時間帯でないと判定された場合、前記第1のテスト環境を前記実行テスト環境に決定することを特徴とする管理計算機。
The management computer according to claim 6,
The dynamic condition includes a condition indicating a time when the second test environment is available,
The processor is
When the candidate test environment of the first test case group is the second test environment, it is determined whether or not it is a time zone in which the second test environment can be used,
When it is determined that the second test environment can be used, it is determined that the second test environment is the execution test environment,
A management computer, wherein when it is determined that the second test environment is not in a usable time zone, the first test environment is determined to be the execution test environment.
一つ以上のテストケースを含むテストケースグループを実行する複数のテスト環境が構築された計算機システムと接続する管理計算機におけるテスト環境決定方法であって、
前記計算機システムは、複数の計算機を含み、
前記管理計算機は、
プロセッサ、前記プロセッサに接続されるメモリ、前記プロセッサに接続されるネットワークインタフェースを有し、
前記テストケースグループの識別情報、及び前記テストケースグループに含まれるテストケースの特性に基づいて決定された候補テスト環境の識別情報から構成されるエントリを含むグループ情報と、前記テスト環境の状態に関する条件である動的条件を含む条件情報と、を保持し、
前記テスト環境決定方法は、
前記プロセッサが、第1のテストケースグループの実行契機を検出した場合、前記グループ情報を参照して前記第1のテストケースグループの候補テスト環境を特定する第1のステップと、
前記プロセッサが、前記候補テスト環境の状態を示す状態情報を取得する第2のステップと、
前記プロセッサが、前記条件情報及び前記状態情報に基づいて、前記候補テスト環境の中から前記第1のテストケースグループを実行する実行テスト環境を決定する第3のステップと、を含むことを特徴とするテスト環境決定方法。
A method for determining a test environment in a management computer connected to a computer system in which a plurality of test environments for executing a test case group including one or more test cases is constructed,
The computer system includes a plurality of computers,
The management computer is
A processor, a memory connected to the processor, and a network interface connected to the processor,
Group information including an entry composed of the identification information of the test case group and the identification information of the candidate test environment determined based on the characteristics of the test cases included in the test case group, and the condition regarding the state of the test environment. Holds condition information, including dynamic conditions that are
The test environment determination method is
A first step of identifying a candidate test environment of the first test case group by referring to the group information when the processor detects an execution trigger of the first test case group;
A second step in which the processor obtains state information indicating a state of the candidate test environment;
A third step in which the processor determines an execution test environment for executing the first test case group from the candidate test environments based on the condition information and the state information. How to determine the test environment.
請求項8に記載のテスト環境決定方法であって、
前記管理計算機は、前記テスト環境の構成及び状態を管理するテスト環境情報を保持し、
前記第3のステップは、
前記プロセッサが、前記テスト環境情報を参照して、前記動的条件を満たす前記候補テスト環境が存在するか否かを判定するステップと、
前記動的条件を満たす前記候補テスト環境が存在すると判定された場合、前記プロセッサが、前記動的条件を満たす前記候補テスト環境の中から前記実行テスト環境を決定するステップと、を含むことを特徴とするテスト環境決定方法。
The test environment determination method according to claim 8,
The management computer holds test environment information for managing the configuration and status of the test environment,
The third step is
The processor refers to the test environment information to determine whether or not the candidate test environment that satisfies the dynamic condition exists;
When it is determined that the candidate test environment satisfying the dynamic condition exists, the processor determines the execution test environment from the candidate test environments satisfying the dynamic condition. How to determine the test environment.
請求項9に記載のテスト環境決定方法であって、
前記第3のステップは、
前記動的条件を満たす前記候補テスト環境が存在しないと判定された場合、前記プロセッサが、前記候補テスト環境の構成及び前記動的条件に基づいて、前記動的条件を満たすテスト環境を生成するステップと、
前記プロセッサが、前記生成されたテスト環境を前記実行テスト環境に決定するステップと、を含むことを特徴とすることを特徴とするテスト環境決定方法。
The test environment determination method according to claim 9,
The third step is
When it is determined that the candidate test environment that satisfies the dynamic condition does not exist, the processor generates a test environment that satisfies the dynamic condition based on the configuration of the candidate test environment and the dynamic condition. When,
The processor determines the generated test environment as the execution test environment, the test environment determining method.
請求項10に記載のテスト環境決定方法であって、
前記第1のテストケースグループは、複数のテストケースを含み、
前記条件情報は、前記テストケースの特性に関する条件である静的条件を含み、
前記テスト環境決定方法は、
前記プロセッサが、前記第1のテストケースグループに含まれる各テストケースの特性を解析するステップと、
前記プロセッサが、前記解析の結果及び前記静的条件に基づいて前記候補テスト環境を選択するステップと、
前記プロセッサが、前記第1のテストケースグループの識別情報、及び前記選択された候補テスト環境の識別情報から構成されるエントリを前記グループ情報に登録するステップと、を含むことを特徴とするテスト環境決定方法。
The test environment determination method according to claim 10, wherein
The first test case group includes a plurality of test cases,
The condition information includes a static condition that is a condition related to the characteristics of the test case,
The test environment determination method is
The processor analyzing a characteristic of each test case included in the first test case group;
The processor selecting the candidate test environment based on the results of the analysis and the static conditions;
The processor registering, in the group information, an entry consisting of identification information of the first test case group and identification information of the selected candidate test environment, the test environment. How to decide.
請求項11に記載のテスト環境決定方法であって、
前記管理計算機は、前記テストケースの識別情報、前記テストケース間の依存関係、及び前記テストケースを実行可能なテスト環境の識別情報から構成されるエントリを含むテストケース情報を保持し、
前記テスト環境決定方法は、
前記プロセッサが、前記テストケース情報によって管理される複数のテストケースの各々について、前記静的条件を満たすテスト環境を特定するステップと、
前記プロセッサが、前記テストケース間の依存関係に基づいて前記第1のテストケースグループを生成するステップと、
前記プロセッサが、前記第1のテストケースグループに含まれる各テストケースの前記静的条件を満たすテスト環境の中から前記候補テスト環境を選択するステップと、
前記プロセッサが、前記テストケースグループの識別情報、及び前記候補テスト環境の識別情報から構成されるエントリを前記グループ情報に登録するステップと、を含むことを特徴とするテスト環境決定方法。
The test environment determination method according to claim 11,
The management computer holds test case information including an entry composed of identification information of the test case, dependency between the test cases, and identification information of a test environment capable of executing the test case,
The test environment determination method is
The processor specifying a test environment satisfying the static condition for each of a plurality of test cases managed by the test case information;
The processor generating the first test case group based on dependencies between the test cases;
The processor selecting the candidate test environment from test environments satisfying the static condition of each test case included in the first test case group;
And a step of the processor registering, in the group information, an entry composed of identification information of the test case group and identification information of the candidate test environment.
請求項10に記載のテスト環境決定方法であって、
前記管理計算機は、前記テスト環境の利用料金を算出するためのコスト情報を保持し、
前記動的条件は、前記テスト環境のリソースの使用率を指定する条件を含み、
前記複数のテスト環境は、第1のテスト環境、及び前記第1のテスト環境より前記テストケースの実行に要するコストが低い第2のテスト環境を含み、
前記第2のステップは、前記プロセッサが、前記第1のテストケースグループの前記候補テスト環境が前記第2のテスト環境である場合、前記第2のテスト環境の状態を示す状態情報を取得するステップを含み、
前記第3のステップは、
前記プロセッサが、前記状態情報及び前記動的条件に基づいて、前記第2のテスト環境を用いて前記第1のテストケースグループを実行できるか否かを判定するステップと、
前記第2のテスト環境を用いて前記第1のテストケースグループを実行できないと判定された場合、前記プロセッサが、前記コスト情報に基づいて前記候補テスト環境と同一のテスト環境を追加するためのコストを算出するステップと、
前記コストが閾値以下であると判定された場合、前記プロセッサが、新たに第2のテスト環境を追加し、当該第2のテスト環境を前記実行テスト環境に決定するステップと、を含むことを特徴とするテスト環境決定方法。
The test environment determination method according to claim 10, wherein
The management computer holds cost information for calculating the usage fee of the test environment,
The dynamic condition includes a condition specifying a resource usage rate of the test environment,
The plurality of test environments include a first test environment and a second test environment that costs less to execute the test case than the first test environment,
In the second step, the processor obtains state information indicating a state of the second test environment when the candidate test environment of the first test case group is the second test environment. Including,
The third step is
The processor determining whether the first test case group can be executed using the second test environment based on the state information and the dynamic condition;
A cost for the processor to add the same test environment as the candidate test environment based on the cost information when it is determined that the first test case group cannot be executed using the second test environment. And a step of calculating
When the cost is determined to be less than or equal to a threshold value, the processor newly adds a second test environment and determines the second test environment as the execution test environment. And how to determine the test environment.
請求項13に記載のテスト環境決定方法であって、
前記動的条件は、前記第2のテスト環境が使用可能な時間を示す条件を含み、
前記第3のステップは、
前記プロセッサが、前記第1のテストケースグループの前記候補テスト環境が前記第2のテスト環境である場合、前記第2のテスト環境を使用できる時間帯であるか否かを判定するステップと、
前記第2のテスト環境を使用できる時間帯であると判定された場合、前記プロセッサが、前記第2のテスト環境を前記実行テスト環境に決定するステップと、
前記第2のテスト環境を使用できる時間帯でないと判定された場合、前記プロセッサが、前記第1のテスト環境を前記実行テスト環境に決定するステップと、を含むことを特徴とするテスト環境決定方法。
The test environment determination method according to claim 13,
The dynamic condition includes a condition indicating a time when the second test environment is available,
The third step is
The processor, if the candidate test environment of the first test case group is the second test environment, determining whether or not it is a time zone in which the second test environment can be used;
The processor determines that the second test environment is the execution test environment when it is determined that the second test environment can be used.
A method for determining a test environment, comprising: determining that the first test environment is the execution test environment when the processor determines that the second test environment cannot be used. ..
JP2018543496A 2016-10-03 2016-10-03 Management computer and test environment determination method Active JP6695437B2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/079330 WO2018066040A1 (en) 2016-10-03 2016-10-03 Management computer and test environment determination method

Publications (2)

Publication Number Publication Date
JPWO2018066040A1 JPWO2018066040A1 (en) 2019-07-11
JP6695437B2 true JP6695437B2 (en) 2020-05-20

Family

ID=61832054

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018543496A Active JP6695437B2 (en) 2016-10-03 2016-10-03 Management computer and test environment determination method

Country Status (2)

Country Link
JP (1) JP6695437B2 (en)
WO (1) WO2018066040A1 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7200659B2 (en) * 2018-12-21 2023-01-10 富士通株式会社 Decision method, decision device and decision program
JP7161936B2 (en) * 2018-12-27 2022-10-27 日立Astemo株式会社 Test environment determination device and test environment determination method
CN110333999B (en) * 2019-05-06 2021-02-23 盛威时代科技集团有限公司 Method for switching test environments of mobile phone client
CN110347584B (en) * 2019-05-27 2023-11-07 平安银行股份有限公司 Method and device for testing and adjusting credit card policy package, electronic equipment and medium
CN110413528B (en) * 2019-07-31 2023-12-22 中国工商银行股份有限公司 Intelligent configuration method and system for test environment
CN113596871A (en) * 2021-07-05 2021-11-02 哲库科技(上海)有限公司 Test method, server and computer storage medium
WO2023162272A1 (en) * 2022-02-28 2023-08-31 日本電気株式会社 Test assistance device, system, and method, and computer-readable medium
CN114637691A (en) * 2022-05-17 2022-06-17 云账户技术(天津)有限公司 Test case management method and device

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1069402A (en) * 1996-08-29 1998-03-10 Nippon Telegr & Teleph Corp <Ntt> Automatic test control method for software
US8166458B2 (en) * 2005-11-07 2012-04-24 Red Hat, Inc. Method and system for automated distributed software testing
US9098629B2 (en) * 2010-12-01 2015-08-04 Sap Se System and method for reversibility categories and characteristics of computer application functions
RU2586016C2 (en) * 2011-11-15 2016-06-10 Японское Агентство По Науке И Технике System for providing program analysis/verification service, method of controlling said system, computer-readable storage medium, device for program analysis/verification, device for controlling program analysis/verification means

Also Published As

Publication number Publication date
JPWO2018066040A1 (en) 2019-07-11
WO2018066040A1 (en) 2018-04-12

Similar Documents

Publication Publication Date Title
JP6695437B2 (en) Management computer and test environment determination method
JP6939132B2 (en) Application profiling job management system, programs, and methods
US10922654B2 (en) Software assurance and trust in a distributed delivery environment
US10048955B2 (en) Accelerating software builds
US9584442B2 (en) Managing a set of assets of a shared pool of configurable computing resources
CN102236578A (en) Distributed workflow execution
US9898258B2 (en) Versioning of build environment information
JP2018067302A (en) Software service execution device, system, and method
JP2022036800A (en) API selection system and API selection method
Kroß et al. Model-based performance evaluation of batch and stream applications for big data
JP2015230582A (en) Program visualization device, program visualization method, and program visualization program
De Gouw et al. On the integration of automatic deployment into the ABS modeling language
US10248554B2 (en) Embedding profile tests into profile driven feedback generated binaries
US10769054B1 (en) Integrated program code marketplace and service provider network
Albonico et al. A DSL-based approach for elasticity testing of cloud systems
Danciu et al. Performance awareness in Java EE development environments
JP7410269B2 (en) Automated verification of high-level construct optimization using test vectors
JP2018055249A (en) System construction support apparatus, system construction support method, and system construction support program
JP2014174609A (en) Hardware configuration estimation system, hardware configuration estimation method and hardware configuration estimation program
JP5525658B2 (en) Computer, resource usage calculation method, and resource usage calculation program
JP4997144B2 (en) Multitask processing apparatus and method
Wittern et al. Feature-based configuration of vendor-independent deployments on iaas
Cecowski et al. Cloud computing applications
US9853871B2 (en) Dynamic collaboration service platform and method for providing an application service at the same platform
Vasile et al. Evaluation of cloud systems

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190212

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: 20200331

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200421

R150 Certificate of patent or registration of utility model

Ref document number: 6695437

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150