Test support devices, systems, methods, and programs

The test support device efficiently constructs and executes tests in information system environments by identifying and deploying partial systems and programs based on configuration updates, addressing the inefficiency and cost of maintaining full test environments.

JP7835269B2Active Publication Date: 2026-03-25NEC CORP
View PDF 5 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-02-28
Publication Date
2026-03-25

AI Technical Summary

Technical Problem

The high cost of maintaining a test environment with the same configuration as the commercial environment makes it inefficient to perform tests during information system updates.

Method used

A test support device and system that identifies and constructs a partial test environment on a virtual system, deploys a partial information system, and executes the associated test program when configuration updates are detected, using a database to associate configuration information with test programs and environments.

Benefits of technology

Efficiently constructs and conducts tests in information system test environments by minimizing resource allocation and reducing costs, allowing for updates to be tested with minimal necessary resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007835269000001
    Figure 0007835269000001
  • Figure 0007835269000002
    Figure 0007835269000002
  • Figure 0007835269000003
    Figure 0007835269000003
Patent Text Reader

Abstract

A test assistance device (1) comprises: an identification unit (11) that associates each of a plurality of configuration information with a set of test environment and a test program corresponding to each configuration information, references a registered database, and identifies the set of test environment and the test program associated with said detected configuration information if an updated of a portion of the plurality of configuration information constituting the information system is detected; a construction unit (12) that constructs the identified test environment on a virtual system; an arrangement unit (13) that arranges partial information system related to the detected configuration information in the constructed test environment; and a test execution unit (14) that executes the identified test program for the partial information system arranged in the test environment.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a test support device, system, method, and program.

Background Art

[0002] With the development of cloud systems and virtual container technologies, the procurement of physical devices has become unnecessary, and the lead time for constructing the environment of information systems has been dramatically shortened. As a result, the environment construction can be carried out at high speed.

[0003] In addition, Patent Document 1 discloses a technique for automating a failure test for a system composed of a plurality of virtual servers and a virtual network.

Prior Art Documents

Patent Documents

[0004]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0005] Here, in the field of operation and maintenance of information systems, it is common to construct a test environment in addition to a commercial environment in which the information system is actually operated. However, due to the large cost disadvantage, it is not realistic to always maintain and operate a test environment having the same configuration as the commercial environment. Therefore, there is a problem that it is difficult to efficiently perform tests at the time of updating an information system.

[0006] An object of the present disclosure is to provide a test support device, system, method, and program for efficiently constructing a test environment of an information system and performing tests in view of the above-described problems.

Means for Solving the Problems

[0007] The test support device relating to the first aspect of this disclosure is When an update is detected in some of the multiple configuration information constituting the information system, the system includes a means for identifying the test program and test environment set associated with the detected configuration information by referring to a database in which each of the multiple configuration information items is associated with a test program and test environment set corresponding to each configuration information item. A construction method for building the aforementioned identified test environment on a virtual system, Deployment means for deploying the partial information system related to the detected configuration information to the constructed test environment, A test execution means for executing the identified test program on the partial information system deployed in the test environment, It is equipped with.

[0008] The test support system relating to the second aspect of this disclosure is A database in which each of the multiple configuration pieces that make up the information system is associated with a set of test programs and test environments corresponding to each configuration piece, The system comprises a test support device connected to the aforementioned database, The aforementioned test support device is When an update is detected among some of the aforementioned multiple configuration information, the identification means refers to the database to identify a set of test programs and test environments associated with the detected configuration information. A construction method for building the aforementioned identified test environment on a virtual system, Deployment means for deploying a partial information system related to the detected configuration information to the constructed test environment, A test execution means for executing the identified test program on the partial information system deployed in the test environment, It is equipped with.

[0009] The test support method relating to the third aspect of this disclosure is: When an update is detected in some of the multiple configuration information that constitutes the information system, the system refers to a database in which each of the multiple configuration information and the corresponding test program and test environment set are registered in association with each configuration information, and identifies the test program and test environment set associated with the detected configuration information. The aforementioned identified test environment is built on a virtual system, A partial information system related to the detected configuration information is deployed to the test environment constructed above. The identified test program is executed on the partial information system deployed in the test environment.

[0010] The test support program relating to the fourth aspect of this disclosure is When an update is detected in some of the multiple configuration information that constitutes the information system, the system performs a specific process to identify the test program and test environment set associated with the detected configuration information by referring to a database in which each of the multiple configuration information items is associated with a set of test programs and test environments corresponding to each configuration information item. The aforementioned test environment is constructed on a virtual system, and A deployment process to deploy a partial information system related to the detected configuration information to the constructed test environment, A test execution process that executes the identified test program on the partial information system deployed in the test environment, Have the computer execute it. [Effects of the Invention]

[0011] This disclosure provides test support devices, systems, methods, and programs for efficiently constructing and conducting tests in information system test environments. [Brief explanation of the drawing]

[0012] [Figure 1] This is a block diagram showing the configuration of the test support device according to this first embodiment. [Figure 2] It is a flowchart showing the flow of the test support method according to Embodiment 1. [Figure 3] It is a block diagram showing the overall configuration including the test support system according to Embodiment 2. [Figure 4] It is a diagram for explaining the relationship between the commercial environment and the test environment according to Embodiment 2. [Figure 5] It is a diagram showing an example of test support information according to Embodiment 2. [Figure 6] It is a diagram showing an example of test level setting information according to Embodiment 2. [Figure 7] It is a diagram showing an example of job flow definition information according to Embodiment 2. [Figure 8] It is a block diagram showing the configuration of the test support device according to Embodiment 2. [Figure 9] It is a flowchart showing the flow of the test support process according to Embodiment 2. [Figure 10] It is a diagram showing an example of the test environment constructed when the test level of the detected AP code according to Embodiment 2 is unit test. [Figure 11] It is a diagram showing an example of the test environment constructed when the test level of the detected AP code according to Embodiment 2 is integration test.

Mode for Carrying Out the Invention

[0013] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings. In each drawing, the same or corresponding elements are denoted by the same reference numerals, and redundant descriptions are omitted as necessary for clarity of explanation.

[0014] <Embodiment 1> Figure 1 is a block diagram showing the configuration of the test support device 1 according to this embodiment 1. The test support device 1 is an information processing device for constructing a test environment corresponding to a part of the commercial environment of an information system (not shown) in response to updates to the information system, and for executing tests related to the update content in the test environment. The test support device 1 comprises a specification unit 11, a construction unit 12, a deployment unit 13, and a test execution unit 14. The test support device 1 is capable of referencing a database in an internal storage device (not shown) or a connected external storage device (not shown). Here, the database registers each of the multiple configuration information items that constitute the information system and the test program and test environment set corresponding to each configuration information item in association with it. Furthermore, the test support device 1 is capable of accessing a virtual system. Here, a virtual system is an information system that can construct logical information resources, such as a virtual server, using virtual container technology or the like.

[0015] When the identification unit 11 detects an update to some of the multiple configuration information, it refers to the database to identify the test program and test environment set associated with the detected configuration information. The construction unit 12 constructs the identified test environment on a virtual system. The deployment unit 13 deploys the partial information system related to the detected configuration information to the constructed test environment. The test execution unit 14 executes the identified test program on the partial information system deployed in the test environment.

[0016] Figure 2 is a flowchart showing the flow of the test support method according to this embodiment 1. First, when the identification unit 11 detects an update to some of the multiple configuration information, it identifies the test program and test environment set associated with the detected configuration information (S11). Next, the construction unit 12 constructs the identified test environment on a virtual system (S12). Then, the deployment unit 13 deploys the partial information system related to the detected configuration information to the constructed test environment (S13). After that, the test execution unit 14 executes the identified test program on the partial information system deployed in the test environment (S14).

[0017] In this embodiment, a test environment necessary for constructing a partial information system related to the updated configuration information is dynamically constructed on a virtual system, and the partial information system is deployed on the test environment. Following deployment, the updated configuration information and a test program pre-associated with the test environment are executed on the partial information system on the test environment. Therefore, testing can be performed by allocating the minimum necessary test environment resources and loading the minimum number of load modules, without having to construct the entire commercial environment in which the information system operates. Thus, the construction of the information system test environment and the execution of testing can be carried out efficiently.

[0018] The test support device 1 includes a processor, memory, and storage device (not shown in the diagram). The storage device stores a computer program that implements the processing of the test support method according to this embodiment. The processor then loads the computer program from the storage device into the memory and executes the computer program. In this way, the processor realizes the functions of the identification unit 11, the construction unit 12, the deployment unit 13, and the test execution unit 14.

[0019] Alternatively, each component of the test support device 1 may be implemented with dedicated hardware. Furthermore, some or all of the components of each device may be implemented by general-purpose or dedicated circuits, processors, etc., or combinations thereof. These may be comprised of a single chip or multiple chips connected via a bus. Some or all of the components of each device may be implemented by a combination of the aforementioned circuits, etc., and programs. Additionally, a CPU (Central Processing Unit), GPU (Graphics Processing Unit), FPGA (Field-Programmable Gate Array), quantum processor (quantum computer control chip), etc., can be used as the processor.

[0020] <Embodiment 2> This second embodiment is a specific example of the first embodiment described above. Figure 3 is a block diagram showing the overall configuration including the test support system 500 according to this second embodiment. The AP (Application) repository 100, the test repository 200, the CMDB (Configuration Management Database) 300, the test support device 400, and the servers 61 to 6i (where i is a natural number of 2 or more) are each connected via network N. Network N is a communication network including wired or wireless communication lines, mobile phone lines, etc. Network N may also include the Internet. Furthermore, the communication network is not limited by the type of communication protocol.

[0021] The AP repository 100 is a database that manages the history of source code, resource data, and other data for applications that constitute the information system under operation. The AP repository 100 stores pairs of AP code ID 111 and AP source code 121, ..., AP code ID 11n (where n is a natural number greater than or equal to 2) and AP source code 12n. AP code ID 111 is the identification information for AP source code 121, and AP code ID 11n is the identification information for AP source code 12n. AP source code 121 is a collection of source program files that provide the individual functions of the information system described above. The AP repository 100 also manages the update history of AP source codes 121 through 12n.

[0022] The test repository 200 is a database that manages the history of source code, resource data, etc., of the test programs of the above information system. The test repository 200 stores pairs of test ID 211 and test source code 221, ..., and pairs of test ID 21m (where m is a natural number greater than or equal to 2) and test source code 22m. Test ID 211 is the identification information for test source code 221, and test ID 21m is the identification information for test source code 22m. Test source code 221 is a collection of source program files that provide the functionality of unit testing, integration testing, or scenario testing (system testing) of the above information system. The test repository 200 also manages the update history of test source code 221 to 22m.

[0023] The virtual system 600 comprises servers 61 through 6i. Servers 61 through 6i are physical servers. Server 61 comprises virtual containers 611 through 61j (where j is a natural number greater than or equal to 2), ... Server 6i comprises virtual containers 6i1 through 6ik (where k is a natural number greater than or equal to 2). The virtual system 600 also comprises a virtual container server (not shown). The virtual container server, in response to external instructions, allocates resources within servers 61 through 6i to construct virtual server containers, virtual DB containers, etc.

[0024] Figure 4 is a diagram illustrating the relationship between the commercial environment 71 and the test environment E0 according to this second embodiment. In this embodiment, the virtual system 600 is assumed to have constructed a commercial environment 71 for running the information system 710 to be operated by a collection of multiple virtual containers. The virtual system 600 can also normally construct a test environment E0 for running an information system 730 for testing the information system 710. In other words, the test environment E0 can be constructed on the virtual system 600 as a mirror environment of the commercial environment 71. However, in this embodiment, the test environment E0 is not normally constructed on the virtual system 600. This is to reduce the cost of securing resources for virtual containers. In the following figures, a dashed line indicates a virtual container that has not been allocated resources and has not been constructed.

[0025] The information system 710 on the commercial environment 71 shows that virtual server containers 711, 712, 713, 715, 717, and 718, as well as virtual DB (Database) containers 714, 716, and 719, are each built on a physical server. This example also shows that virtual server containers 711 and 712 are connected, virtual server containers 712 are connected to 713 and 715, virtual server container 713 is connected to virtual DB container 714, and virtual server container 715 is connected to virtual DB container 716. Furthermore, it shows that virtual server containers 717 and 718 are connected, and virtual server container 718 is connected to virtual DB container 719. However, the configuration of the information system 710 is not limited to this.

[0026] The information system 730 on test environment E0 demonstrates that each of the virtual server containers 731, 732, 733, 735, 737, and 738, as well as the virtual DB containers 734, 736, and 739, can be built on a physical server. Here, test environment E1 shows an environment in which a partial information system can be deployed when each of the virtual server containers 731, 732, and 733, as well as the virtual DB container 734, are built on a physical server. Similarly, test environment E2 shows an environment in which a partial information system can be deployed when each of the virtual server containers 731, 732, and 735, as well as the virtual DB container 736, are built on a physical server. In other words, test environments E1 and E2 share virtual server containers 731 and 732, but other environments, virtual server containers, and virtual DB containers differ.

[0027] Test environment E12 is a combined environment of test environments E1 and E2. In other words, test environment E12 represents an environment in which a partial information system can be deployed if virtual server containers 731, 732, 733, and 735, and virtual DB containers 734 and 736, are each built on physical servers.

[0028] Test environment E3 represents an environment in which a partial information system can be deployed if virtual server containers 737 and 738, and virtual DB container 739, are each built on physical servers. In other words, test environment E3 is a different environment from test environments E1, E2, and E12.

[0029] Returning to Figure 3, we continue the explanation. The test support system 500 comprises a CMDB 300 and a test support device 400. Some or all of the CMDB 300 and the test support device 400 may be composed of the same hardware. Alternatively, the CMDB 300 may be redundant using multiple storage devices. Furthermore, the test support device 400 may be redundant using multiple computers, and each functional block may be implemented using multiple computers.

[0030] CMDB300 is an example of a database that registers and associates each of the multiple configuration information items that constitute an information system with a set of test programs and test environments corresponding to each configuration information item. Here, "configuration information" includes design information for the information system, various parameters for setting in the information system, and information about the software to be implemented in the information system (program source code, libraries, etc., and program modules generated from these). In this embodiment, the configuration information is described as including at least program modules. CMDB300 stores test definition information 310, test level setting information 320, and job flow definition information 330.

[0031] Test definition information 310 is information that defines a set of test program and test environment for each AP code ID. Furthermore, test definition information 310 may associate a set of test program and test environment corresponding to multiple test levels with a specific configuration information. Also, test definition information 310 may associate a set of test program and test environment corresponding to a specific configuration information with that specific configuration information.

[0032] Figure 5 shows an example of test definition information 310 according to this second embodiment. The test definition information 310 shows an example in which a set of test programs and test environments corresponding to each of multiple test levels is associated with each AP code ID. Specifically, for each AP code ID 311, a unit test 312, a test environment 313, an integration test 314, a test environment 315, a scenario test 316, and a test environment 317 are associated. Here, the value set for unit test 312 indicates a list of test IDs for test programs in unit tests. The value set for integration test 314 indicates a list of test IDs for test programs in integration tests. The value set for scenario test indicates a list of test IDs for test programs in scenario tests.

[0033] Furthermore, test environment 313 represents the test environment for unit test 312, test environment 315 represents the test environment for integration test 314, and test environment 317 represents the test environment for scenario test 316. In other words, unit test 312 and test environment 313 constitute unit test group 301, integration test 314 and test environment 315 constitute integration test group 302, and scenario test 316 and test environment 317 constitute scenario test group 303. Here, unit test 312, integration test 314, and scenario test 316 indicate the test level. Also, in this example, for AP code ID "apc1", the test IDs for unit tests are "UT11", "UT12", and "UT13", and the test environment is "E1". Also, for AP code ID "apc1", the test ID for integration tests is "CT1", and the test environment is "E12". Furthermore, the AP code ID "apc1" indicates that the test ID for the scenario test is "ST1" and the test environment is "E0".

[0034] Furthermore, this example shows that unit test group 301 differs for AP code IDs "apc1", "apc2", and "apc3". In other words, to run unit test "UT21", the load module and test environment "E2" for "apc2" are required, but the load modules and test environments "E1" and "E3" for "apc1" and "apc3" are not required.

[0035] Furthermore, this example shows that integration test set 302 is common to AP code IDs "apc1" and "apc2," but is not defined for "apc3." In other words, to run integration test "CT1," both load modules and test environment "E12" for "apc1" and "apc2" are required, even if only one of them has been updated.

[0036] Furthermore, this example shows that scenario test group 303 is common to AP code IDs "apc1", "apc2", and "apc3". In other words, it shows that all load modules and test environment "E0" for "apc1", "apc2", and "apc3" are required to run scenario test "ST1".

[0037] Furthermore, the test IDs defined in the unit test 312, integration test 314, and scenario test 316 described above shall correspond to one or more test IDs such as 211 in the test repository 200 described above. In addition, E0, E1, E2, E12, and E3 set in the test environments 313, 315, and 317 described above shall be defined as virtual containers as shown in Figure 4. For example, test environment E1 shall be defined as having virtual server containers 731, 732, and 733 and virtual DB container 734 connected in this order.

[0038] Figure 6 shows an example of test level setting information 320 according to this embodiment 2. Test level setting information 320 is information in which the test level to be executed is set for each AP code ID. In other words, test level setting information 320 is information in which the test level to be executed is further associated with specific configuration information. Specifically, for each pair of AP code ID 311 and test level 322, a job group ID 323 and the test level to be executed 324 are set. Test level 322 indicates the type and level of the test, such as unit test, integration test, or scenario test. Job group ID 323 is identification information for a job group, i.e., a job flow, which is a collection of jobs. The test level to be executed 324 is information indicating whether or not the associated test level should be executed for a specific AP code ID. In this example, "○" indicates that it should be executed, and "-" indicates that it should not be executed, i.e., it does not need to be executed. Furthermore, the test level setting information 320 may contain a set of the AP code ID 311, test level 322, and job group ID 323 for the test level to be executed, instead of an item for the test level 324 to be executed.

[0039] Figure 7 shows an example of job flow definition information 330 according to this second embodiment. Job flow definition information 330 is information that defines a set of pairs of job ID 332 and job content 333 for each job group ID 331. For example, job group ID 331 "JG11" indicates that jobs ID 332 "J111", "J112", "J113", "J114", and "J115" will be executed in that order. For example, "J111" indicates a job content of "build test environment E1". "J112" indicates a job content of "generate load module for apc1". "J113" indicates a job content of "execute unit test UT11". "J114" indicates a job content of "execute unit test UT12". "J115" indicates a job content of "execute unit test UT13".

[0040] Furthermore, for "J113," "J212," "J312," "JCT2," and "JST2," the test support device 400 may generate load modules corresponding to the specified and designated AP code IDs without fixing the AP code ID.

[0041] Figure 8 is a block diagram showing the configuration of the test support device 400 according to this second embodiment. The test support device 400 comprises a storage unit 410, a memory 420, a communication unit 430, and a control unit 440. The storage unit 410 is an example of a storage device such as a hard disk or flash memory. The storage unit 410 stores the test support program 411. The test support program 411 is a computer program on which the test support processing according to this second embodiment is implemented.

[0042] Memory 420 is a volatile storage device such as RAM (Random Access Memory), and is a storage area for temporarily holding information when the control unit 440 is operating. The communication unit 430 is a communication interface between the inside of the test support device 400 and the outside.

[0043] The control unit 440 is a processor, or control device, that controls each component of the test support device 400. The control unit 440 loads the test support program 411 from the storage unit 410 into the memory 420 and executes the test support program 411. In this way, the control unit 440 realizes the functions of the registration unit 441, detection unit 442, identification unit 443, construction unit 444, deployment unit 445, and test execution unit 446.

[0044] The registration unit 441 registers each of the multiple configuration pieces that constitute the information system with a set of test programs and test environments corresponding to each configuration piece and registers them in the CMDB 300. Furthermore, for a specific configuration piece, the registration unit 441 registers a set of test programs and test environments corresponding to that specific configuration piece and each of the multiple test levels corresponding to it in the CMDB 300. Additionally, for a specific configuration piece, the registration unit 441 further associates and registers the test levels to be executed in the CMDB 300. Specifically, the registration unit 441 registers test definition information 310, test level setting information 320, and job flow definition information 330 in the CMDB 300 based on information entered from an administrator terminal (not shown) operated by an administrator managing the information system testing. The registration unit 441 may also register test source code entered from the administrator terminal in the test repository 200.

[0045] The detection unit 442 monitors the AP repository 100 and detects when a portion of the AP source code 121 to 12n has been updated. For example, the detection unit 442 may periodically check the update status of the AP repository 100. Alternatively, the detection unit 442 may detect updates during the synchronization process between the AP repository 100 and the local repository (not shown). When the detection unit 442 detects an update, it notifies the identification unit 443 of the updated AP code ID.

[0046] The identification unit 443 is an example of the identification unit 11 described above. When the detection unit 442 detects an update to some of the configuration information, the identification unit 443 refers to the CMDB 300 to identify the test program and test environment set associated with the detected configuration information. Specifically, when the detection unit 442 notifies the identification unit 443 of an updated AP code ID, the identification unit 443 identifies a record from the test level setting information 320 in which the test level 324 to be executed for the notified AP code ID is "〇", and identifies the test level 322 and job group ID 323 of that record. Then, the identification unit 443 identifies the notified AP code ID, the test ID of the identified test level, and the test environment from the test definition information 310.

[0047] Furthermore, the identification unit 443 refers to the CMDB 300 to identify other configuration information and other test environment sets related to the configuration information. Specifically, the identification unit 443 refers to the CMDB 300 to identify the test level associated with the detected configuration information, and identifies the set of test program and test environment corresponding to that test level as other configuration information and other test environment sets related to the configuration information. For example, if the notified AP code ID is "apc2" and the identified test level is integration test "CT1", the identification unit 443 identifies other AP code ID "apc1" and other test environment "E2" necessary to execute "CT1" from the test definition information 310. This is because test environment "E2" is included in "E12".

[0048] The construction unit 444 is an example of the construction unit 12 described above. The construction unit 444 constructs the specified test environment on the virtual system 600. The construction unit 444 should discard the test environment after the test program has been executed. This makes the test environment for temporary use and reduces the usage time (rental time). Therefore, the maintenance cost of the test environment can be reduced.

[0049] Deployment unit 445 is an example of the deployment unit 13 described above. Deployment unit 445 deploys the partial information system related to the detected configuration information to the constructed test environment. Specifically, deployment unit 445 obtains the AP source code corresponding to the detected AP code ID from the AP repository 100 and generates a load module. Here, the generated load module is not the application for the entire information system, but an application corresponding to the partial information system related to the update. Then, deployment unit 445 deploys the generated load module to the constructed test environment.

[0050] Furthermore, if other configuration information related to the configuration information is identified, the deployment unit 445 combines the program module corresponding to the detected configuration information and the program module corresponding to the other identified configuration information, and deploys them as a partial information system to the constructed test environment.

[0051] The test execution unit 446 is an example of the test execution unit 14 described above. The test execution unit 446 executes a specified test program on a partial information system deployed in the test environment.

[0052] Figure 9 is a flowchart showing the flow of the test support process according to this embodiment 2. First, a developer terminal (not shown) operated by an information system developer modifies the AP source code corresponding to a part of the application program that constitutes the information system, and registers the modified AP source code in the AP repository 100.

[0053] The detection unit 442 then monitors the AP repository 100 and detects updated AP source code (S201). The detection unit 442 notifies the identification unit 443 of the AP code ID corresponding to the detected AP source code. Here, we assume that the AP code ID "apc1" is notified.

[0054] In response, the identification unit 443 identifies the test level associated with the detected AP source code (S202). For example, from the test level setting information 320, the identification unit 443 identifies a record in which the test level 324 to be executed for the AP code ID "apc1" notified by the detection unit 442 is "〇". The identification unit 443 then identifies the test level 322 "Unit Test" and the job group ID 323 "JG11" for that record.

[0055] Next, the identification unit 443 identifies the detected AP source code and the test ID and test environment corresponding to the identified test level (S203). For example, from the test definition information 310, the identification unit 443 identifies the unit tests 312 "UT11", "UT12", and "UT13" and the test environment 313 "E1" for AP code ID "apc1".

[0056] Then, the identification unit 443 determines whether the test level is related to other AP source code (S204). For example, the identification unit 443 determines from the test definition information 310 that the unit test for AP code ID "apc1" is not common to other AP code IDs, and therefore the test level is not related to other AP source code (NO in S204).

[0057] Therefore, the construction unit 444 constructs the identified test environment "E1" on the virtual system 600 (S206). Figure 10 is a diagram showing an example of a test environment constructed when the test level of the detected AP code according to this embodiment 2 is a unit test. Here, the construction unit 444 allocates four virtual containers on the virtual system 600 and constructs the virtual server containers 731, 732 and 733 and the virtual DB container 734 as test environment E1. On the other hand, it is shown that the virtual server containers 735, 737 and 738 and the virtual DB containers 736 and 739 are not constructed at this time.

[0058] Returning to Figure 9, we continue the explanation. Next, the deployment unit 445 generates a partial load module from the detected AP source code (S207). For example, the deployment unit 445 retrieves the AP source code corresponding to AP code ID "apc1" from the AP repository 100 and generates a partial load module for the information system from that AP source code. Then, the deployment unit 445 deploys the generated load module to the test environment "E1" (S208). For example, the information system 730a in Figure 10 is deployed to the test environment "E1".

[0059] Then, the test execution unit 446 executes the test program with the identified test ID on the load module on the test environment "E1" (S209). As a result, the test execution unit 446 obtains the execution result, verifies the execution result, and determines whether the test was successful or not.

[0060] Furthermore, when steps S206 to S209 described above are executed using the job flow definition information 330, the process is as follows. First, the identification unit 443 identifies job IDs "J111" to "J115" from the job flow definition information 330, which are associated with the job group ID "JG11" identified in step S202. Then, the construction unit 444 constructs the test environment E1 on the virtual system 600 as "J111" (S206). Specifically, the construction unit 444 allocates (distributes) the four virtual containers defined in the test environment E1 onto the virtual system 600, constructing virtual server containers 731, 732, and 733 and virtual DB container 734. Next, the deployment unit 445 generates a load module corresponding to the AP code ID "apc1" as "J112" (S207) and deploys it on the test environment E1 (S208).

[0061] Subsequently, the test execution unit 446 retrieves the test code corresponding to the unit test ID "UT11" from the test repository 200 as "J113". The test execution unit 446 may compile, build, etc., the retrieved test code as needed to generate an executable program module (test program). Then, the test execution unit 446 executes the test code or the generated program module on the load module deployed on the test environment E1. Similarly, the test execution unit 446 executes the unit test ID "UT12" as "J114" in the same manner as above. Subsequently, the test execution unit 446 executes the unit test ID "UT13" as "J115" in the same manner as above.

[0062] Subsequently, the construction unit 444 discards the constructed test environment "E1" (S210). The job flow definition information 330 may also include a process to discard the constructed test environment for the last job ID of each job group ID.

[0063] Next, we will explain the case where the test level of the detected AP code is an integration test. Here, we assume that the AP code ID "apc2" corresponding to the updated AP source code is notified. In this case, the identification unit 443 identifies two records from the test level setting information 320 where the test level 324 to be executed for AP code ID "apc2" is "〇". The identification unit 443 then identifies "unit test" and "JG21" and "integration test" and "JGCT" as the test level 322 and job group ID 323 for each record (S202). The identification unit 443 then identifies the unit test 312 "UT21" and test environment 313 "E2" and the integration test 314 "CT1" and test environment 315 "E12" for AP code ID "apc2" from the test definition information 310 (S203).

[0064] Here, the identification unit 443 determines from the test definition information 310 that the test level is related to other AP source code (YES in S204). This is because the integration test for AP code ID "apc2" is shared with the other AP code ID "apc1". Therefore, the identification unit 443 identifies the other AP source code, test ID, and test environment associated with the test ID corresponding to the identified test level (S205). Specifically, the identification unit 443 identifies the other AP code ID "apc1", test IDs "UT11", "UT12", and "UT13", and test environment "E1" associated with the integration test ID "CT1". However, since AP code ID "apc1" has not been updated, the identification unit 443 does not need to identify test IDs "UT11", "UT12", and "UT13". In other words, the unit test for the unupdated AP code ID "apc1" does not need to be executed. Furthermore, in this example, since the test environment "E12" for the integration test "CT1" includes "E1" and "E2", it is also possible to build only "E12" as the target test environment.

[0065] Next, the construction unit 444 constructs the identified test environment "E12" on the virtual system 600 (S206). Figure 11 shows an example of a test environment constructed when the test level of the detected AP code according to this embodiment 2 is integration testing. Here, the construction unit 444 allocates six virtual containers on the virtual system 600 and constructs virtual server containers 731, 732, 733 and 735 and virtual DB containers 734 and 736 as test environment E12. It is also shown that test environment E2 has been constructed. On the other hand, it is shown that virtual server containers 737 and 738 and virtual DB container 739 have not been constructed.

[0066] Returning to Figure 9, we continue the explanation. Next, the deployment unit 445 retrieves the AP source code corresponding to the AP code IDs "apc1" and "apc2" from the AP repository 100 and generates a partial load module for the information system from the AP source code (S207). Then, the deployment unit 445 deploys the generated load module to the test environment "E12" (S208). For example, the information system 730b in Figure 11 is deployed to the test environment "E12". Then, the test execution unit 446 executes the test program with the specified test ID on the load module on the test environment "E12" (S209). In this example, the test execution unit 446 executes the unit test "UT21" on the load module on the test environment "E2". If the execution result of "UR21" is successful, the test execution unit 446 executes the integration test "CT1" on the load module on the test environment "E12".

[0067] Furthermore, when executing steps S206 to S209 described above using the job flow definition information 330, the following may be used: For example, first execute "JG21" and discard test environment E2. Then execute "JGCT" and discard test environment E12. Alternatively, execute "JCT1" and "JCT2" in "JGCT", execute "J213" which corresponds to the unit test of "apc2", then execute "JGCT" which corresponds to the integration test, and discard test environment E12.

[0068] Furthermore, if the test level setting information 320 indicates that only integration testing should be performed for AP code ID "apc2", then only job group ID "JGCT" will be executed. In this case as well, load modules corresponding to "apc1" and "apc2" will be deployed for integration testing, but "apc3" will not be deployed, and the test environment "E3" will not be built.

[0069] Therefore, with this embodiment, when an application is partially updated, a partial test environment is constructed compared to the commercial environment, a partial load module is generated and deployed, and a test program corresponding to the updated functionality is executed. Thus, the construction of the test environment and the execution of tests for the information system can be carried out efficiently.

[0070] <Other Embodiments> In the examples described above, the program includes a set of instructions (or software code) that, when loaded into a computer, cause the computer to perform one or more of the functions described in the embodiments. The program may be stored on a non-temporary computer-readable medium or a physical storage medium. Examples, but not limited to, include random-access memory (RAM), read-only memory (ROM), flash memory, solid-state drive (SSD) or other memory technologies, CD-ROM, digital versatile disc (DVD), Blu-ray® disc or other optical disc storage, magnetic cassette, magnetic tape, magnetic disk storage or other magnetic storage devices. The program may be transmitted over a temporary computer-readable medium or a communication medium. Examples, but not limited to, include temporary computer-readable medium or a communication medium that includes electrically, optically, acoustically or otherwise propagating signals.

[0071] This disclosure is not limited to the embodiments described above, and may be modified as appropriate without departing from its spirit. Furthermore, this disclosure may be implemented by combining the respective embodiments as appropriate.

[0072] Some or all of the above embodiments may also be described as follows, but are not limited to the following: (Note A1) When an update is detected in some of the multiple configuration information constituting the information system, the system includes a means for identifying the test program and test environment set associated with the detected configuration information by referring to a database in which each of the multiple configuration information items is associated with a test program and test environment set corresponding to each configuration information item. A construction method for building the aforementioned identified test environment on a virtual system, Deployment means for deploying the partial information system related to the detected configuration information to the constructed test environment, A test execution means for executing the identified test program on the partial information system deployed in the test environment, A test support device equipped with the following features. (Appendix A2) The identifying means further identifies other configuration information and other test environment sets related to the configuration information by referring to the database, The deployment means deploys the program module corresponding to the detected configuration information and the program module corresponding to the other identified configuration information together as the partial information system to the constructed test environment. The test support device described in Appendix A1. (Note A3) The aforementioned database is For specific configuration information, a set of test programs and test environments corresponding to each of multiple test levels is associated. For the aforementioned specific configuration information, the test level to be performed is further associated with it. The aforementioned specifying means is, Referencing the aforementioned database, identify the test level associated with the detected configuration information, and identify the set of test program and test environment corresponding to that test level as a set of other configuration information and other test environment related to the aforementioned configuration information. Test support device as described in Appendix A2. (Note A4) The construction means discards the test environment after the test program has been executed. A test support device as described in any one of the appendices A1 to A3. (Note A5) The aforementioned configuration information includes at least a program module. A test support device as described in any one of the items A1 through A4 in the appendix. (Note B1) A database in which each of the multiple configuration pieces that make up the information system is associated with a set of test programs and test environments corresponding to each configuration piece, The system comprises a test support device connected to the aforementioned database, The aforementioned test support device is When an update is detected among some of the aforementioned multiple configuration information, the identification means refers to the database to identify a set of test programs and test environments associated with the detected configuration information. A construction method for building the aforementioned identified test environment on a virtual system, Deployment means for deploying a partial information system related to the detected configuration information to the constructed test environment, A test execution means for executing the identified test program on the partial information system deployed in the test environment, A test support system equipped with the following features. (Note B2) The identifying means further identifies other configuration information and other test environment sets related to the configuration information by referring to the database, The deployment means deploys the program module corresponding to the detected configuration information and the program module corresponding to the other identified configuration information together as the partial information system to the constructed test environment. The test support system described in Appendix B1. (Note C1) When an update is detected in some of the multiple configuration information that constitutes the information system, the system refers to a database in which each of the multiple configuration information and the corresponding test program and test environment set are registered in association with each configuration information, and identifies the test program and test environment set associated with the detected configuration information. The aforementioned identified test environment is built on a virtual system, A partial information system related to the detected configuration information is deployed to the test environment constructed above. The specified test program is executed on the partial information system deployed in the test environment. Test support methods. (Note D1) When an update is detected in some of the multiple configuration information that constitutes the information system, the system performs a specific process to identify the test program and test environment set associated with the detected configuration information by referring to a database in which each of the multiple configuration information items is associated with a set of test programs and test environments corresponding to each configuration information item. The aforementioned test environment is constructed on a virtual system, and A deployment process to deploy a partial information system related to the detected configuration information to the constructed test environment, A test execution process that executes the identified test program on the partial information system deployed in the test environment, A non-temporary, computer-readable medium containing a test support program that causes a computer to execute a test.

[0073] Although the present invention has been described above with reference to embodiments (and examples), the present invention is not limited to the above embodiments (and examples). Various modifications to the structure and details of the present invention can be made, as can be understood by those skilled in the art within the scope of the present invention. [Explanation of Symbols]

[0074] 1. Test support device 11 Specific section 12 Construction Department 13 Deployment Department 14 Test Execution Unit N Network Repository for 100 APs 111 AP Code ID 11n AP Code ID 121 AP source code 12n AP source code 200 test repositories 211 Test ID 21m Test ID 221 Test source code 22m Test source code 300 CMDB 310 Test Definition Information 311 AP Code ID 312 Unit Testing 313 Test Environment 314 Integration Test 315 Test Environment 316 Scenario Test 317 Test Environment 301 Unit Test Group 302 Integration Test Group 303 Scenario Test Group 320 Test Level Setting Information 321 AP Code ID 322 Test Levels 323 Job Group ID 324 Test levels to perform 330 Job flow definition information 331 Job Group ID 332 Job ID 333 Job Description 400 Test Support Devices 410 Storage section 411 Test Support Program 420 memory 430 Communications Department 440 Control Unit 441 Registration Department 442 Detection Unit 443 Specific part 444 Construction Department 445 Deployment Department 446 Test Execution Unit 500 Test Support Systems 600 virtual systems 61 servers 611 Virtual Containers 61j virtual container 6i Server 6i1 virtual container 6ik virtual container 71 Commercial environment 710 Information Systems 711 Virtual Server Containers 712 virtual server containers 713 Virtual Server Containers 714 Virtual DB Container 715 Virtual Server Containers 716 Virtual DB Containers 717 Virtual Server Containers 718 virtual server containers 719 Virtual DB Container E0 Test Environment E1 Test Environment E2 Test Environment E12 Test Environment E3 Test Environment 730 Information Systems 730a Information Systems 730b Information Systems 731 Virtual Server Containers 732 virtual server containers 733 Virtual Server Containers 734 Virtual DB Container 735 Virtual Server Containers 736 Virtual DB Containers 737 Virtual Server Containers 738 virtual server containers 739 Virtual DB container

Claims

1. When an update is detected in some of the multiple configuration information constituting the information system, the system includes a means for identifying the test program and test environment set associated with the detected configuration information by referring to a database in which each of the multiple configuration information items is associated with a test program and test environment set corresponding to each configuration information item. A construction method for building the aforementioned identified test environment on a virtual system, Deployment means for deploying the partial information system related to the detected configuration information to the constructed test environment, A test execution means for executing the identified test program on the partial information system deployed in the test environment, Equipped with, The identifying means further identifies other configuration information and other test environment sets related to the configuration information by referring to the database, The deployment means deploys the program module corresponding to the detected configuration information and the program module corresponding to the other identified configuration information together as the partial information system to the constructed test environment. The aforementioned database is For specific configuration information, a set of test programs and test environments corresponding to each of multiple test levels is associated. For the aforementioned specific configuration information, the test level to be performed is further associated with it. The aforementioned specifying means is, Referencing the aforementioned database, identify the test level associated with the detected configuration information, and identify the set of test program and test environment corresponding to that test level as a set of other configuration information and other test environment related to the aforementioned configuration information. Test support device.

2. The construction means discards the test environment after the test program has been executed. The test support device according to claim 1.

3. The aforementioned configuration information includes at least a program module. The test support device according to claim 1 or 2.

4. A database in which each of the multiple configuration pieces that make up the information system is associated with a set of test programs and test environments corresponding to each configuration piece, The system comprises a test support device connected to the aforementioned database, The aforementioned test support device is When an update is detected among some of the aforementioned multiple configuration information, the identification means refers to the database to identify a set of test programs and test environments associated with the detected configuration information. A construction method for building the aforementioned identified test environment on a virtual system, Deployment means for deploying a partial information system related to the detected configuration information to the constructed test environment, A test execution means for executing the identified test program on the partial information system deployed in the test environment, Equipped with, The identifying means further identifies other configuration information and other test environment sets related to the configuration information by referring to the database, The deployment means deploys the program module corresponding to the detected configuration information and the program module corresponding to the other identified configuration information together as the partial information system to the constructed test environment. The aforementioned database is For specific configuration information, a set of test programs and test environments corresponding to each of multiple test levels is associated. For the aforementioned specific configuration information, the test level to be performed is further associated with it. The aforementioned specifying means is, Referencing the aforementioned database, identify the test level associated with the detected configuration information, and identify the set of test program and test environment corresponding to that test level as a set of other configuration information and other test environment related to the aforementioned configuration information. Test support system.

5. When an update is detected in some of the multiple configuration information that constitutes the information system, the system refers to a database in which each of the multiple configuration information and the corresponding test program and test environment set are registered in association with each configuration information, and identifies the test program and test environment set associated with the detected configuration information. The aforementioned identified test environment is built on a virtual system, A partial information system related to the detected configuration information is deployed to the test environment constructed above. The identified test program is executed on the partial information system deployed in the test environment. In identifying the set of test program and test environment, the database is referred to to further identify other sets of configuration information and other test environments related to the configuration information. In the deployment to the test environment, the program module corresponding to the detected configuration information and the program module corresponding to the other identified configuration information are combined and deployed to the constructed test environment as the partial information system. The aforementioned database is For specific configuration information, a set of test programs and test environments corresponding to each of multiple test levels is associated. For the aforementioned specific configuration information, the test level to be performed is further associated with it. In identifying the aforementioned test program and test environment set, Referencing the aforementioned database, identify the test level associated with the detected configuration information, and identify the set of test program and test environment corresponding to that test level as a set of other configuration information and other test environment related to the aforementioned configuration information. Test support methods.

6. When an update is detected in some of the multiple configuration information that constitutes the information system, the system performs a specific process to identify the test program and test environment set associated with the detected configuration information by referring to a database in which each of the multiple configuration information items is associated with a set of test programs and test environments corresponding to each configuration information item. The aforementioned test environment is constructed on a virtual system, and A deployment process to deploy a partial information system related to the detected configuration information to the constructed test environment, A test execution process that executes the identified test program on the partial information system deployed in the test environment, Have the computer run it, In the aforementioned specific processing, the database is referenced to further identify other configuration information and other test environment sets related to the configuration information, In the deployment process, the program module corresponding to the detected configuration information and the program module corresponding to the other identified configuration information are combined and deployed as a partial information system to the constructed test environment. The aforementioned database is For specific configuration information, a set of test programs and test environments corresponding to each of multiple test levels is associated. For the aforementioned specific configuration information, the test level to be performed is further associated with it. In the aforementioned specific process, Referencing the aforementioned database, identify the test level associated with the detected configuration information, and identify the set of test program and test environment corresponding to that test level as a set of other configuration information and other test environment related to the aforementioned configuration information. Test support program.

Citation Information

Patent Citations

  • Resource use permission system and resource use permission method

    JP2015204026A

  • Test automation device, test method, and program

    JP2021047928A

  • Program testing method

    JP2021103354A

  • Systems and methods for automated provisioning of a virtual mainframe test environment

    US20210089437A1

  • Management computer and test environment determination method

    WO2018066040A1