WO2023162272A1 - テスト支援装置、システム、及び、方法、並びに、コンピュータ可読媒体 - Google Patents

テスト支援装置、システム、及び、方法、並びに、コンピュータ可読媒体 Download PDF

Info

Publication number
WO2023162272A1
WO2023162272A1 PCT/JP2022/008428 JP2022008428W WO2023162272A1 WO 2023162272 A1 WO2023162272 A1 WO 2023162272A1 JP 2022008428 W JP2022008428 W JP 2022008428W WO 2023162272 A1 WO2023162272 A1 WO 2023162272A1
Authority
WO
WIPO (PCT)
Prior art keywords
test
configuration information
environment
information
detected
Prior art date
Application number
PCT/JP2022/008428
Other languages
English (en)
French (fr)
Inventor
悠平 岡田
Original Assignee
日本電気株式会社
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 日本電気株式会社 filed Critical 日本電気株式会社
Priority to PCT/JP2022/008428 priority Critical patent/WO2023162272A1/ja
Publication of WO2023162272A1 publication Critical patent/WO2023162272A1/ja

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

Definitions

  • the present invention relates to a test support device, system, method, and program.
  • Patent Document 1 discloses a technique for automating failure tests for a system configured with multiple virtual servers and virtual networks.
  • the purpose of the present disclosure is to provide a test support device, system, method, and program for efficiently constructing a test environment for information systems and conducting tests.
  • a test support device includes: When an update of a part of a plurality of configuration information constituting an information system is detected, reference is made to a registered database in which each of the plurality of configuration information is associated with a set of a test program and a test environment corresponding to each configuration information. and identifying means for identifying a set of test programs and test environments associated with the detected configuration information; building means for building the identified test environment on a virtual system; deploying means for deploying the partial information system related to the detected configuration information to the constructed test environment; test execution means for executing the specified test program for the partial information system deployed in the test environment; Prepare.
  • a test support system includes: a database in which each of a plurality of pieces of configuration information constituting an information system and a set of test programs and test environments corresponding to each piece of configuration information are associated and registered; and a test support device connected to the database,
  • the test support device is identifying means for identifying a set of a test program and a test environment associated with the detected configuration information by referring to the database when an update of a part of the plurality of configuration information is detected; building means for building the identified test environment on a virtual system; deploying means for deploying a partial information system related to the detected configuration information to the constructed test environment; test execution means for executing the specified test program for the partial information system deployed in the test environment; Prepare.
  • a test support method includes: When an update of a part of a plurality of configuration information constituting an information system is detected, reference is made to a registered database in which each of the plurality of configuration information is associated with a set of a test program and a test environment corresponding to each configuration information. to identify a set of test programs and test environments associated with the detected configuration information, building the identified test environment on a virtual system; deploying a partial information system related to the detected configuration information to the constructed test environment; Execute the identified test program against the partial information system deployed in the test environment.
  • a test support program When an update of a part of a plurality of configuration information constituting an information system is detected, reference is made to a registered database in which each of the plurality of configuration information is associated with a set of a test program and a test environment corresponding to each configuration information. and identifying a set of test programs and test environments associated with the detected configuration information; a construction process for constructing the identified test environment on a virtual system; a deployment process of deploying a partial information system related to the detected configuration information to the constructed test environment; a test execution process of executing the identified test program on the partial information system deployed in the test environment; run on the computer.
  • test support device for efficiently constructing a test environment for information systems and conducting tests.
  • FIG. 1 is a block diagram showing the configuration of a test support device according to the first embodiment
  • FIG. 4 is a flow chart showing the flow of a test support method according to the first embodiment
  • FIG. 11 is a block diagram showing an overall configuration including a test support system according to a second embodiment
  • FIG. 10 is a diagram for explaining the relationship between a commercial environment and a test environment according to the second embodiment
  • FIG. 12 is a diagram showing an example of test support information according to the second embodiment
  • FIG. FIG. 11 is a diagram showing an example of test level setting information according to the second embodiment
  • FIG. FIG. 10 is a diagram showing an example of job flow definition information according to the second embodiment
  • FIG. 11 is a block diagram showing the configuration of a test support device according to a second embodiment
  • FIG. 11 is a block diagram showing the configuration of a test support device according to a second embodiment
  • FIG. 9 is a flow chart showing the flow of test support processing according to the second embodiment
  • FIG. 12 is a diagram showing an example of a test environment constructed when the test level of the detected AP code is unit test according to the second embodiment
  • FIG. 12 is a diagram showing an example of a test environment constructed when the test level of the AP code detected according to the second embodiment is an integration test
  • FIG. 1 is a block diagram showing the configuration of a test support device 1 according to the first embodiment.
  • the test support device 1 is an information processing device for constructing a test environment corresponding to a part of the commercial environment of the information system according to the update of the information system (not shown), and executing a test on the update contents in the test environment. is.
  • the test support device 1 includes an identification unit 11 , a construction unit 12 , a deployment unit 13 and a test execution unit 14 .
  • the test support apparatus 1 can refer to a database in an internal storage device (not shown) or a connected external storage device (not shown).
  • each of a plurality of pieces of configuration information forming an information system and a set of test programs and test environments corresponding to each piece of configuration information are registered in association with each other.
  • the test support device 1 can access the virtual system.
  • the virtual system is an information system in which logical information resources such as virtual servers can be constructed by virtual container technology or the like.
  • the identifying unit 11 detects that some of the pieces of configuration information have been updated, it refers to the database to identify a set of test programs and test environments associated with the detected configuration information.
  • the construction unit 12 constructs the specified test environment on the 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 specified test program on the partial information system deployed in the test environment.
  • FIG. 2 is a flow chart showing the flow of the test support method according to the first embodiment.
  • the specifying unit 11 detects an update of a part of a plurality of pieces of configuration information, it specifies a set of a test program and a test environment associated with the detected configuration information (S11).
  • the building unit 12 builds the identified test environment on the virtual system (S12).
  • the deployment unit 13 deploys the partial information system related to the detected configuration information to the constructed test environment (S13).
  • the test execution unit 14 executes the identified test program on the partial information system deployed in the test environment (S14).
  • a test environment necessary for constructing a partial information system related to updated configuration information is dynamically constructed on the virtual system, and the partial information system is deploy on top. Following deployment, the updated configuration information and test programs pre-associated with the test environment are executed against the partial information system on the test environment. Therefore, it is possible to allocate the minimum necessary test environment resources, load the minimum load modules, and execute the test without constructing the entire commercial environment in which the information system operates. Therefore, it is possible to efficiently construct the test environment of the information system and perform the test.
  • the test support device 1 includes a processor, memory, and storage device (not shown). Further, the storage device stores a computer program in which processing of the test support method according to the present embodiment is implemented. Then, the processor loads a computer program or the like from the storage device into the memory and executes the computer program. Thereby, the processor realizes the functions of the identification unit 11, the construction unit 12, the deployment unit 13, and the test execution unit 14. FIG.
  • each component of the test support device 1 may be realized by dedicated hardware. Also, part or all of each component of each device may be implemented by general-purpose or dedicated circuitry, processors, etc., or combinations thereof. These may be composed of a single chip, or may be composed of multiple chips connected via a bus. A part or all of each component of each device may be implemented by a combination of the above-described circuits and the like and programs.
  • a processor a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), an FPGA (Field-Programmable Gate Array), a quantum processor (quantum computer control chip), or the like can be used.
  • FIG. 3 is a block diagram showing the overall configuration including a test support system 500 according to the second embodiment.
  • An AP (Application) repository 100, a test repository 200, a CMDB (Configuration Management DataBase) 300, a test support device 400, and servers 61 to 6i (where i is a natural number of 2 or more) are connected via a network N.
  • Network N is a communication network including a wired or wireless communication network, a mobile phone network, and the like.
  • Network N may include the Internet.
  • the communication network does not care about the type of communication protocol.
  • the AP repository 100 is a database that manages the history of the source code, resource data, etc. of the applications that make up the information system to be operated.
  • the AP repository 100 stores a set of an AP code ID 111 and an AP source code 121, .
  • the AP code ID 111 is identification information of the AP source code 121
  • the AP code ID 11n is identification information of the AP source code 12n.
  • the AP source code 121 is a collection of source program files that provide individual functions of the information system.
  • the AP repository 100 also manages update histories of the AP source codes 121 to 12n.
  • the test repository 200 is a database that manages the history of the test program source code and resource data of the information system.
  • the test repository 200 stores a set of test ID 211 and test source code 221, . . . , a set of test ID 21m (m is a natural number of 2 or more) and test source code 22m.
  • the test ID 211 is identification information of the test source code 221
  • the test ID 21m is identification information of the test source code 22m.
  • the test source code 221 is a set of source program files that provide the function of unit test, integration test or scenario test (comprehensive test) of the information system.
  • the test repository 200 also manages the update history of the test source codes 221 to 22m.
  • the virtual system 600 includes servers 61 to 6i.
  • Servers 61 to 6i are physical servers.
  • the server 61 has virtual containers 611 to 61j (j is a natural number of 2 or more), . . .
  • the server 6i has virtual containers 6i1 to 6ik (k is a natural number of 2 or more), respectively.
  • the virtual system 600 also includes a virtual container server (not shown).
  • the virtual container server allocates resources in the servers 61 to 6i according to instructions from the outside, and builds virtual server containers, virtual DB containers, and the like.
  • FIG. 4 is a diagram for explaining the relationship between the commercial environment 71 and the test environment E0 according to the second embodiment.
  • the virtual system 600 constructs a commercial environment 71 in which an information system 710 to be operated is operated by a set of virtual containers.
  • the virtual system 600 can normally construct a test environment E0 in which the information system 730 for testing the information system 710 is operated. That is, the test environment E0 can be constructed on the virtual system 600 as a mirror environment of the commercial environment 71.
  • FIG. it is assumed that the test environment E0 is not normally constructed in the virtual system 600 . This is to reduce the cost of securing resources for the virtual container.
  • a virtual container indicated by a dashed line in subsequent figures indicates that no resources have been allocated and that the virtual container has not been constructed.
  • An information system 710 on a commercial environment 71 confirms that virtual server containers 711, 712, 713, 715, 717 and 718, and virtual DB (DataBase) containers 714, 716 and 719 are built on physical servers. show. Also, in this example, the virtual server containers 711 and 712 are connected, the virtual server containers 712, 713 and 715 are connected, the virtual server container 713 and the virtual DB container 714 are connected, the virtual server container 715 and the virtual DB container 716 are connected. is connected. It also shows that the virtual server containers 717 and 718 are connected, and that the virtual server container 718 and the virtual DB container 719 are connected. However, the configuration of the information system 710 is not limited to this.
  • the information system 730 on the test environment E0 indicates that virtual server containers 731, 732, 733, 735, 737 and 738, and virtual DB containers 734, 736 and 739 can each be built on a physical server.
  • the test environment E1 indicates an environment in which a partial information system can be deployed when each of the virtual server containers 731, 732 and 733 and the virtual DB container 734 are built on physical servers.
  • the test environment E2 indicates an environment in which a partial information system can be deployed when each of the virtual server containers 731, 732 and 735 and the virtual DB container 736 is built on a physical server.
  • the test environments E1 and E2 have the same virtual server containers 731 and 732, but different environments, virtual server containers, and virtual DB containers.
  • the test environment E12 is an environment combining the test environments E1 and E2.
  • the test environment E12 represents an environment in which a partial information system can be deployed when the virtual server containers 731, 732, 733 and 735 and the virtual DB containers 734 and 736 are constructed on physical servers.
  • a test environment E3 shows an environment in which a partial information system can be deployed when each of the virtual server containers 737 and 738 and the virtual DB container 739 are built on physical servers. That is, the test environment E3 is different from the test environments E1, E2 and E12.
  • a test support system 500 comprises a CMDB 300 and a test support device 400 .
  • a part or all of the CMDB 300 and the test support device 400 may be configured with the same hardware.
  • the CMDB 300 may be redundant with multiple storages.
  • the test support device 400 may be made redundant by a plurality of computers, and each functional block may be realized by a plurality of computers.
  • the CMDB 300 is an example of a database in which each of a plurality of pieces of configuration information that make up an information system and a set of test programs and test environments corresponding to each piece of configuration information are associated and registered.
  • configuration information refers to design information in the information system, various parameters to be set in the information system, information on software to be installed in the information system (program source code, library, etc., and program modules generated from these )including.
  • configuration information is described as including at least program modules.
  • the CMDB 300 stores test definition information 310 , test level setting information 320 and job flow definition information 330 .
  • the test definition information 310 is information that defines a set of test programs and test environments for each AP code ID.
  • specific configuration information may be associated with a set of test programs and test environments corresponding to each of a plurality of test levels.
  • a set of test programs and test environments corresponding to specific configuration information may be associated with specific configuration information.
  • FIG. 5 is a diagram showing an example of the test definition information 310 according to the second embodiment.
  • the test definition information 310 shows an example in which a set of test programs and test environments corresponding to each of a plurality of test levels is associated with each AP code ID.
  • each AP code ID 311 is associated with a unit test 312 , test environment 313 , integration test 314 , test environment 315 , scenario test 316 and test environment 317 .
  • the value set in the unit test 312 indicates a list of test IDs of test programs in the unit test.
  • the value set in the integration test 314 indicates a list of test IDs of test programs in the integration test.
  • a value set in a scenario test indicates a list of test IDs of test programs in the scenario test.
  • test environment 313 indicates the test environment for the unit test 312
  • test environment 315 indicates the test environment for the integration test 314,
  • test environment 317 indicates the test environment for the scenario test 316. That is, unit test 312 and test environment 313 are unit test set 301 , integration test 314 and test environment 315 are integration test set 302 , and scenario test 316 and test environment 317 are scenario test set 303 .
  • unit test 312, integration test 314, and scenario test 316 indicate test levels. Also, in this example, in the AP code ID "apc1", the test IDs of the unit tests are "UT11", "UT12” and “UT13", and the test environment is "E1".
  • the test ID of the integration test is "CT1" and the test environment is "E12".
  • the AP code ID "apc1” indicates that the test ID of the scenario test is "ST1" and the test environment is "E0".
  • the unit test set 301 indicates that the AP code IDs "apc1", “apc2", and "apc3" are different.
  • the load module “apc2” and the test environment “E2” are necessary, but the load modules “apc1” and “apc3” and the test environments “E1” and “E3” are required. ” is not required.
  • this example shows that the integration test set 302 is common to the AP Code IDs "apc1" and “apc2" and is not defined for “apc3".
  • CT1 in order to execute the integration test "CT1”, even if only one of "apc1” and “apc2” is updated, both the load modules of "apc1” and “apc2" and the test environment " E12" is required.
  • this example shows that the scenario test set 303 is common to the AP code IDs "apc1", “apc2”, and “apc3". That is, to execute the scenario test "ST1", all the load modules "apc1", “apc2” and “apc3" and the test environment "E0" are required.
  • test IDs defined in the unit test 312, integration test 314, and scenario test 316 described above correspond to one or more of the test IDs 211, etc. in the test repository 200 described above. 4 are defined for E0, E1, E2, E12 and E3 set in the test environments 313, 315 and 317 described above.
  • the test environment E1 is defined such that the virtual server containers 731, 732 and 733 and the virtual DB container 734 are connected in this order.
  • FIG. 6 is a diagram showing an example of the test level setting information 320 according to the second embodiment.
  • the test level setting information 320 is information in which a test level to be executed is set for each AP code ID.
  • the test level setting information 320 is information in which a test level to be executed is further associated with specific configuration information.
  • a job group ID 323 and a test level 324 to be executed are set for each set of AP code ID 311 and test level 322 .
  • the test level 322 indicates the types and levels of tests such as unit tests, integration tests, scenario tests, and the like.
  • the job group ID 323 is identification information of a job group, ie, 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 in a specific AP code ID. In this example, "O" indicates what should be done, and "-" indicates that it should not or should not be done. Note that the test level setting information 320 may register a set of the AP code ID 311 of the test level to be executed, the test level 322 and the job group ID 323 instead of the item of the test level 324 to be executed. .
  • FIG. 7 is a diagram showing an example of the job flow definition information 330 according to the second embodiment.
  • the job flow definition information 330 is information that defines a set of a job ID 332 and a job content 333 for each job group ID 331 .
  • the job group ID 331 "JG11” indicates that the job IDs 332 "J111", “J112", “J113", “J114” and “J115" are executed in this order.
  • "J111” indicates the job content "build test environment E1”.
  • J112 indicates the job content "generate apc1 load module”.
  • J113 indicates the job content "execute unit test UT11”.
  • J114 indicates the job content "execute unit test UT12”.
  • “J115” indicates the job content "execute unit test UT13".
  • J113", “J212”, “J312”, “JCT2” and “JST2” are load modules corresponding to AP code IDs specified and specified in the test support device 400 without fixing the AP code IDs. may be generated.
  • FIG. 8 is a block diagram showing the configuration of the test support device 400 according to the second embodiment.
  • the test support device 400 includes 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 a test support program 411 .
  • a test support program 411 is a computer program in which the test support processing and the like according to the second embodiment are implemented.
  • the 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 operates.
  • the communication unit 430 is a communication interface between the inside of the test support device 400 and the outside.
  • the control unit 440 is a processor that controls each component of the test support device 400, that is, a control device.
  • 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 .
  • the control unit 440 realizes the functions of the registration unit 441 , the detection unit 442 , the identification unit 443 , the construction unit 444 , the deployment unit 445 and the test execution unit 446 .
  • the registration unit 441 registers in the CMDB 300 each of a plurality of pieces of configuration information that constitute the information system, and a set of test programs and test environments corresponding to each piece of configuration information in association with each other. Further, the registration unit 441 registers in the CMDB 300 a set of test programs and test environments corresponding to the specific configuration information and corresponding to each of the plurality of test levels, in association with the specific configuration information. Further, the registration unit 441 further associates a test level to be executed with the specific configuration information and registers it in the CMDB 300 . Specifically, the registration unit 441 registers the test definition information 310, the test level setting information 320, the job Register the flow definition information 330 in the CMDB 300 . Note that the registration unit 441 may register the test source code input from the administrator terminal in the test repository 200 .
  • the detection unit 442 monitors the AP repository 100 and detects that part of the AP source codes 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 an update during synchronization processing between the AP repository 100 and a local repository (not shown). When the detection unit 442 detects the update, the detection unit 442 notifies the identification unit 443 of the updated AP code ID.
  • the identification unit 443 is an example of the identification unit 11 described above.
  • the identification unit 443 refers to the CMDB 300 and identifies a set of test programs and test environments associated with the detected configuration information. Specifically, when the detection unit 442 notifies the identification unit 443 of the updated AP code ID, the test level setting information 320 indicates that the test level 324 to be executed for the notified AP code ID is “O”. is identified, and the test level 322 and job group ID 323 of the record are identified. Then, the specifying unit 443 specifies the notified AP code ID, the specified test level test ID, and the test environment from the test definition information 310 .
  • the specifying unit 443 refers to the CMDB 300 to specify a set of other configuration information and other test environments related to the configuration information.
  • the identifying unit 443 refers to the CMDB 300 to identify the test level associated with the detected configuration information, and associates the set of the test program and test environment corresponding to the test level with the configuration information. It is specified as a set of other configuration information and other test environments. For example, when the notified AP code ID “apc2” and the specified test level are the integration test “CT1”, the specifying unit 443 determines from the test definition information 310 other Identify the AP Code ID "apc1" and another test environment "E2". This is because the test environment "E2" is included in "E12".
  • 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 may discard the test environment after executing the test program. As a result, the test environment can be used temporarily, and the usage time (rental time) can be reduced. Therefore, the maintenance cost of the test environment can be reduced.
  • the deploying unit 445 is an example of the deploying unit 13 described above.
  • the deployment unit 445 deploys the partial information system related to the detected configuration information to the constructed test environment. Specifically, the deploying unit 445 acquires the AP source code corresponding to the detected AP code ID from the AP repository 100 and generates a load module.
  • the generated load module is not the application of the entire information system, but the application corresponding to the partial information system involved in the update. Then, the deployment unit 445 deploys the generated load module to the constructed test environment.
  • the deployment unit 445 combines the program modules corresponding to the detected configuration information and the program modules corresponding to the other identified configuration information to create a partial Deploy to the constructed test environment as a general information system.
  • the test execution unit 446 is an example of the test execution unit 14 described above.
  • the test execution unit 446 executes the identified test program on the partial information system deployed in the test environment.
  • FIG. 9 is a flowchart showing the flow of test support processing according to the second embodiment.
  • a developer terminal 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 stores the modified AP source code in the AP repository. Register to 100.
  • the detection unit 442 monitors the AP repository 100 and detects the 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.
  • the AP code ID "apc1" is notified.
  • the identifying unit 443 identifies the test level associated with the detected AP source code (S202). For example, the identifying unit 443 identifies records in which the test level 324 to be executed for the AP code ID “apc1” notified from the detecting unit 442 is “O” from the test level setting information 320 . Then, the identifying unit 443 identifies the test level 322 "unit test” and the job group ID 323 "JG11" of the record.
  • the identifying unit 443 identifies the test ID and test environment corresponding to the detected AP source code and the identified test level (S203). For example, the identifying unit 443 identifies the unit tests 312 “UT11”, “UT12” and “UT13” of the AP code ID “apc1” and the test environment 313 “E1” from the test definition information 310 .
  • the identifying unit 443 determines whether or not the test level is related to other AP source code (S204). For example, from the test definition information 310, the identification unit 443 determines that the unit test of the AP code ID "apc1" is not common to other AP code IDs, so the test level is not related to other AP source codes. (NO in S204) is determined.
  • FIG. 10 is a diagram showing an example of a test environment constructed when the test level of the AP code detected according to the second embodiment is unit test.
  • the construction unit 444 allocates four virtual containers to the virtual system 600, and constructs the virtual server containers 731, 732 and 733 and the virtual DB container 734 as the test environment E1.
  • virtual server containers 735, 737 and 738 and virtual DB containers 736 and 739 are not constructed.
  • the deploying unit 445 generates a partial load module from the detected AP source code (S207). For example, the deploying unit 445 acquires the AP source code corresponding to the AP code ID "apc1" from the AP repository 100, and generates a partial load module in the information system from the AP source code. Then, the deployment unit 445 deploys the generated load module to the test environment "E1" (S208). For example, information system 730a of FIG. 10 is deployed in test environment "E1.”
  • test execution unit 446 executes the test program with the specified test ID for the load module on the test environment "E1" (S209). Thereby, the test execution unit 446 acquires the execution result, verifies the execution result, and determines whether the test succeeds or fails.
  • steps S206 to S209 described above are executed using the job flow definition information 330 as follows.
  • the identifying unit 443 identifies, from the job flow definition information 330, job IDs "J111" to "J115" associated with the job group ID "JG11" identified in step S202.
  • the construction unit 444 constructs the test environment E1 on the virtual system 600 as "J111" (S206). Specifically, the construction unit 444 allocates (allocates) the four virtual containers defined in the test environment E1 to the virtual system 600, and constructs the virtual server containers 731, 732 and 733 and the virtual DB container 734.
  • the deploying 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).
  • the test execution unit 446 acquires the test code corresponding to the test ID "UT11" of the unit test from the test repository 200 as "J113".
  • the test execution unit 446 may compile and build the acquired test code as necessary to generate an executable program module (test program).
  • the test execution unit 446 then executes the test code or the generated program module on the load module deployed on the test environment E1.
  • the test execution unit 446 executes the unit test with the test ID "UT12" as "J114" in the same manner as described above.
  • the test execution unit 446 executes the unit test with the test ID "UT13" as "J115” in the same manner as described above.
  • the construction unit 444 discards the constructed test environment "E1" (S210).
  • the job flow definition information 330 may add a discarding process of the constructed test environment to the last job ID of each job group ID.
  • the identifying unit 443 identifies, from the test level setting information 320, two records whose test level 324 to be executed for the AP code ID "apc2" is "O". Then, the identifying unit 443 identifies "unit test” and "JG21” and “integration test” and "JGCT” as the test level 322 and job group ID 323 of each record (S202).
  • the identifying unit 443 selects the unit test 312 "UT21" and the test environment 313 "E2" of the AP code ID "apc2" from the test definition information 310, the integration test 314 "CT1" and the test environment 315 "E12". Identify (S203).
  • the identifying unit 443 determines from the test definition information 310 that the test level is related to another AP source code (YES in S204). This is because the integration test for the AP code ID "apc2" is in common with the other AP code ID "apc1". Therefore, the identifying unit 443 identifies other AP source code, test ID, and test environment associated with the test ID corresponding to the identified test level (S205). Specifically, the identifying unit 443 determines the other AP code ID "apc1" associated with the integration test test ID "CT1", the test IDs "UT11", "UT12” and “UT13", and the test environment "E1". identify.
  • the specifying unit 443 does not have to specify the test IDs "UT11", “UT12” and “UT13". In other words, the unit test for the AP code ID "apc1" that has not been updated need not be executed. Also, in this example, since "E1" and “E2" are included in the test environment “E12" for the integration test "CT1", only "E12” may be set as the test environment to be constructed.
  • FIG. 11 is a diagram showing an example of a test environment constructed when the test level of the AP code detected according to the second embodiment is integration test.
  • 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 the test environment E12.
  • the test environment E2 is also constructed.
  • the virtual server containers 737 and 738 and the virtual DB container 739 are not constructed.
  • the deploying unit 445 acquires the AP source code corresponding to the AP code IDs "apc1" and "apc2" from the AP repository 100, and generates a partial load module in 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, information system 730b of FIG. 11 is deployed to test environment "E12." Then, the test execution unit 446 executes the test program with the identified test ID for the load module on the test environment "E12" (S209).
  • test execution unit 446 executes the unit test "UT21" on the load module on the test environment "E2".
  • the test execution unit 446 executes the integration test "CT1" on the load module on the test environment "E12".
  • steps S206 to S209 described above are executed using the job flow definition information 330, the following may be performed.
  • "JG21” is executed first, and the test environment E2 is discarded.
  • "JGCT” is executed and the test environment E12 is discarded.
  • execute "JCT1” and "JCT2" in “JGCT” execute "J213” corresponding to the unit test of "apc2”
  • execute "JGCT” corresponding to the integration test and set the test environment E12. You can discard it.
  • test level setting information 320 if the test level 324 is that only the integration test should be executed for the AP code ID "apc2”, only the job group ID "JGCT” is executed. Even in this case, load modules corresponding to "apc1" and “apc2" are deployed for the integration test, but “apc3" is not deployed and test environment “E3" is not constructed.
  • a partial test environment is constructed compared to the commercial environment, a partial load module is generated and deployed, and the part corresponding to the updated function is tested. Program is executed. Therefore, it is possible to efficiently construct the test environment of the information system and perform the test.
  • the program includes instructions (or software code) that, when read into the computer, cause the computer to perform one or more of the functions described in the embodiments.
  • the program may be stored in a non-transitory computer-readable medium or tangible storage medium.
  • computer readable media or tangible storage media may include random-access memory (RAM), read-only memory (ROM), flash memory, solid-state drives (SSD) or other memory technology, CDs -ROM, digital versatile disc (DVD), Blu-ray disc or other optical disc storage, magnetic cassette, magnetic tape, magnetic disc storage or other magnetic storage device.
  • the program may be transmitted on a transitory computer-readable medium or communication medium.
  • transitory computer readable media or communication media include electrical, optical, acoustic, or other forms of propagated signals.
  • test support device comprising: (Appendix A2)
  • the identifying means refers to the database to further identify a set of other configuration information and other test environments related to the configuration information;
  • the deployment means deploys the program module corresponding to the detected configuration information and the program module corresponding to the specified other configuration information together as the partial information system to the constructed test environment.
  • the database is Associated with particular configuration information is a set of test programs and test environments corresponding to each of a plurality of test levels; a test level to be performed is further associated with the specific configuration information; The specifying means is The database is referenced to identify a test level associated with the detected configuration information, and a set of test programs and test environments corresponding to the test level is retrieved from other configuration information and other configuration information related to the configuration information.
  • the test support device of Appendix A2, identified as a set of test environments. (Appendix A4) The test support device according to any one of Appendices A1 to A3, wherein the construction means discards the test environment after executing the test program.
  • the test support device according to any one of Appendices A1 to A4, wherein the configuration information includes at least program modules.
  • Appendix B1 a database in which each of a plurality of pieces of configuration information constituting an information system and a set of test programs and test environments corresponding to each piece of configuration information are associated and registered; and a test support device connected to the database,
  • the test support device is identifying means for identifying a set of a test program and a test environment associated with the detected configuration information by referring to the database when an update of a part of the plurality of configuration information is detected; building means for building the identified test environment on a virtual system; deploying means for deploying a partial information system related to the detected configuration information to the constructed test environment; test execution means for executing the specified test program for the partial information system deployed in the test environment;
  • a test support system with The identifying means refers to the database to further identify a set of other configuration information and other test environments related to the configuration information;
  • the deployment means deploys the program module
  • a test support system according to Appendix B1.
  • Appendix C1 When an update of a part of a plurality of configuration information constituting an information system is detected, reference is made to a registered database in which each of the plurality of configuration information is associated with a set of a test program and a test environment corresponding to each configuration information. to identify a set of test programs and test environments associated with the detected configuration information, building the identified test environment on a virtual system; deploying a partial information system related to the detected configuration information to the constructed test environment; executing the identified test program against the partial information system deployed in the test environment; Test assistance method.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

テスト支援装置(1)は、情報システムを構成する複数の構成情報のうち一部の更新を検出した場合、複数の構成情報のそれぞれと各構成情報に対応するテストプログラム及びテスト環境の組とを関連付けて登録したデータベースを参照して、当該検出した構成情報に関連付けられたテストプログラム及びテスト環境の組を特定する特定部(11)と、特定したテスト環境を仮想システム上に構築する構築部(12)と、検出した構成情報に関係する部分的な情報システムを、構築したテスト環境へ配備する配備部(13)と、テスト環境に配備された部分的な情報システムに対して、特定したテストプログラムを実行するテスト実行部(14)と、を備える。

Description

テスト支援装置、システム、及び、方法、並びに、コンピュータ可読媒体
 本発明は、テスト支援装置、システム、方法、及び、プログラムに関する。
 クラウドシステムや仮想コンテナ技術の発達に伴い、物理的な機器の調達が不要になり、情報システムの環境構築のリードタイム(Lead Time)が劇的に短縮された。これにより、環境構築は高速に実施可能になった。
 尚、特許文献1には、複数の仮想サーバ、及び仮想ネットワークで構成されるシステムに対する障害試験を自動化する技術が開示されている。
特開2021-047928号公報
 ここで、情報システムの運用保守の現場では、情報システムを実運用させる商用環境の他にテスト環境を構築することが一般的である。しかしながら、コスト上のデメリットの大きさから、商用環境と同一構成のテスト環境を常時、維持及び稼働させることは現実的ではない。そのため、情報システムの更新時のテストを効率的に行うことが困難であるという問題がある。
 本開示の目的は、上述した課題を鑑み、情報システムのテスト環境の構築及びテストの実施を効率的に実施するためのテスト支援装置、システム、方法、及び、プログラムを提供することにある。
 本開示の第1の態様にかかるテスト支援装置は、
 情報システムを構成する複数の構成情報のうち一部の更新を検出した場合、前記複数の構成情報のそれぞれと各構成情報に対応するテストプログラム及びテスト環境の組とを関連付けて登録したデータベースを参照して、当該検出した構成情報に関連付けられたテストプログラム及びテスト環境の組を特定する特定手段と、
 前記特定したテスト環境を仮想システム上に構築する構築手段と、
 前記検出した構成情報に関係する部分的な情報システムを、前記構築したテスト環境へ配備する配備手段と、
 前記テスト環境に配備された前記部分的な情報システムに対して、前記特定したテストプログラムを実行するテスト実行手段と、
 を備える。
 本開示の第2の態様にかかるテスト支援システムは、
 情報システムを構成する複数の構成情報のそれぞれと、各構成情報に対応するテストプログラム及びテスト環境の組とを関連付けて登録したデータベースと、
 前記データベースと接続されたテスト支援装置と、を備え、
 前記テスト支援装置は、
 前記複数の構成情報のうち一部の更新を検出した場合、前記データベースを参照して、当該検出した構成情報に関連付けられたテストプログラム及びテスト環境の組を特定する特定手段と、
 前記特定したテスト環境を仮想システム上に構築する構築手段と、
 前記検出した構成情報に関係する部分的な情報システムを前記構築したテスト環境へ配備する配備手段と、
 前記テスト環境に配備された前記部分的な情報システムに対して、前記特定したテストプログラムを実行するテスト実行手段と、
 を備える。
 本開示の第3の態様にかかるテスト支援方法は、
 情報システムを構成する複数の構成情報のうち一部の更新を検出した場合、前記複数の構成情報のそれぞれと各構成情報に対応するテストプログラム及びテスト環境の組とを関連付けて登録したデータベースを参照して、当該検出した構成情報に関連付けられたテストプログラム及びテスト環境の組を特定し、
 前記特定したテスト環境を仮想システム上に構築し、
 前記検出した構成情報に関係する部分的な情報システムを前記構築したテスト環境へ配備し、
 前記テスト環境に配備された前記部分的な情報システムに対して、前記特定したテストプログラムを実行する。
 本開示の第4の態様にかかるテスト支援プログラムは、
 情報システムを構成する複数の構成情報のうち一部の更新を検出した場合、前記複数の構成情報のそれぞれと各構成情報に対応するテストプログラム及びテスト環境の組とを関連付けて登録したデータベースを参照して、当該検出した構成情報に関連付けられたテストプログラム及びテスト環境の組を特定する特定処理と、
 前記特定したテスト環境を仮想システム上に構築する構築処理と、
 前記検出した構成情報に関係する部分的な情報システムを前記構築したテスト環境へ配備する配備処理と、
 前記テスト環境に配備された前記部分的な情報システムに対して、前記特定したテストプログラムを実行するテスト実行処理と、
 をコンピュータに実行させる。
 本開示により、情報システムのテスト環境の構築及びテストの実施を効率的に実施するためのテスト支援装置、システム、方法、及び、プログラムを提供することができる。
本実施形態1にかかるテスト支援装置の構成を示すブロック図である。 本実施形態1にかかるテスト支援方法の流れを示すフローチャートである。 本実施形態2にかかるテスト支援システムを含む全体構成を示すブロック図である。 本実施形態2にかかる商用環境とテスト環境の関係を説明するための図である。 本実施形態2にかかるテスト支援情報の例を示す図である。 本実施形態2にかかるテストレベル設定情報の例を示す図である。 本実施形態2にかかるジョブフロー定義情報の例を示す図である。 本実施形態2にかかるテスト支援装置の構成を示すブロック図である。 本実施形態2にかかるテスト支援処理の流れを示すフローチャートである。 本実施形態2にかかる検出されたAPコードのテストレベルが単体テストである場合に構築されるテスト環境の例を示す図である。 本実施形態2にかかる検出されたAPコードのテストレベルが結合テストである場合に構築されるテスト環境の例を示す図である。
 以下では、本開示の実施形態について、図面を参照しながら詳細に説明する。各図面において、同一又は対応する要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略される。
<実施形態1>
 図1は、本実施形態1にかかるテスト支援装置1の構成を示すブロック図である。テスト支援装置1は、情報システム(不図示)の更新に応じて、情報システムの商用環境の一部に対応するテスト環境を構築し、テスト環境において更新内容に関するテストを実行するための情報処理装置である。テスト支援装置1は、特定部11、構築部12、配備部13及びテスト実行部14を備える。尚、テスト支援装置1は、内蔵する記憶装置(不図示)、又は、接続された外部の記憶装置(不図示)のデータベースを参照可能なものとする。ここで、当該データベースは、情報システムを構成する複数の構成情報のそれぞれと各構成情報に対応するテストプログラム及びテスト環境の組とを関連付けて登録したものである。また、テスト支援装置1は、仮想システムにアクセス可能とする。ここで、仮想システムとは、仮想コンテナ技術等により、論理的な情報リソース、例えば、仮想サーバ等を構築可能な情報システムとする。
 特定部11は、複数の構成情報のうち一部の更新を検出した場合、データベースを参照して、検出した構成情報に関連付けられたテストプログラム及びテスト環境の組を特定する。構築部12は、特定したテスト環境を仮想システム上に構築する。配備部13は、検出した構成情報に関係する部分的な情報システムを、構築したテスト環境へ配備する。テスト実行部14は、テスト環境に配備された部分的な情報システムに対して、特定したテストプログラムを実行する。
 図2は、本実施形態1にかかるテスト支援方法の流れを示すフローチャートである。まず、特定部11は、複数の構成情報のうち一部の更新を検出した場合、検出した構成情報に関連付けられたテストプログラム及びテスト環境の組を特定する(S11)。次に、構築部12は、特定したテスト環境を仮想システム上に構築する(S12)。そして、配備部13は、検出した構成情報に関係する部分的な情報システムを、構築したテスト環境へ配備する(S13)。その後、テスト実行部14は、テスト環境に配備された部分的な情報システムに対して、特定したテストプログラムを実行する(S14)。
 このように、本実施形態により、更新された構成情報に関係する部分的な情報システムを構築するために必要なテスト環境を仮想システム上に動的に構築し、部分的な情報システムをテスト環境上に配備する。配備に引き続き、更新された構成情報及びテスト環境と予め関連付けられたテストプログラムを、テスト環境上の部分的な情報システムに対して実行する。そのため、情報システムが稼働する商用環境の全てを構築することなく、必要最小限のテスト環境のリソースを割り当て、最小限のロードモジュールをロードして、テストを実施できる。よって、情報システムのテスト環境の構築及びテストの実施を効率的に実施することができる。
 尚、テスト支援装置1は、図示しない構成としてプロセッサ、メモリ及び記憶装置を備えるものである。また、当該記憶装置には、本実施形態にかかるテスト支援方法の処理が実装されたコンピュータプログラムが記憶されている。そして、当該プロセッサは、記憶装置からコンピュータプログラム等を前記メモリへ読み込ませ、当該コンピュータプログラムを実行する。これにより、前記プロセッサは、特定部11、構築部12、配備部13及びテスト実行部14の機能を実現する。
 または、テスト支援装置1の各構成要素は、それぞれが専用のハードウェアで実現されていてもよい。また、各装置の各構成要素の一部又は全部は、汎用または専用の回路(circuitry)、プロセッサ等やこれらの組合せによって実現されてもよい。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。各装置の各構成要素の一部又は全部は、上述した回路等とプログラムとの組合せによって実現されてもよい。また、プロセッサとして、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、FPGA(Field-Programmable Gate Array)、量子プロセッサ(量子コンピュータ制御チップ)等を用いることができる。
<実施形態2>
 本実施形態2は、上述した実施形態1の具体例である。図3は、本実施形態2にかかるテスト支援システム500を含む全体構成を示すブロック図である。AP(APplication)用リポジトリ100、テスト用リポジトリ200、CMDB(Configuration Management DataBase)300、テスト支援装置400、サーバ61~6i(iは2以上の自然数。)のそれぞれは、ネットワークNを介して接続されている。ネットワークNは、有線又は無線通信回線網、携帯電話回線網等を含む通信ネットワークである。ネットワークNは、インターネットを含んでも良い。また、通信ネットワークは、通信プロトコルの種別を問わない。
 AP用リポジトリ100は、運用対象の情報システムを構成するアプリケーションのソースコードやリソースデータ等の履歴を管理するデータベースである。AP用リポジトリ100は、APコードID111とAPソースコード121の組、・・・、APコードID11n(nは2以上の自然数。)とAPソースコード12nの組を記憶する。APコードID111は、APソースコード121の識別情報であり、APコードID11nは、APソースコード12nの識別情報である。APソースコード121は、上記情報システムの単体の機能を提供するソースプログラムファイルの集合である。また、AP用リポジトリ100は、APソースコード121から12nの更新履歴を管理する。
 テスト用リポジトリ200は、上記情報システムのテストプログラムのソースコードやリソースデータ等の履歴を管理するデータベースである。テスト用リポジトリ200は、テストID211とテスト用ソースコード221の組、・・・、テストID21m(mは2以上の自然数。)とテスト用ソースコード22mの組を記憶する。テストID211は、テスト用ソースコード221の識別情報であり、テストID21mは、テスト用ソースコード22mの識別情報である。テスト用ソースコード221は、上記情報システムの単体テスト、結合テスト又はシナリオテスト(総合テスト)の機能を提供するソースプログラムファイルの集合である。また、テスト用リポジトリ200は、テスト用ソースコード221から22mの更新履歴を管理する。
 仮想システム600は、サーバ61から6iを備える。サーバ61から6iは、物理サーバである。サーバ61は、仮想コンテナ611から61j(jは2以上の自然数。)、・・・サーバ6iは、仮想コンテナ6i1から6ik(kは2以上の自然数。)をそれぞれ、備える。また、仮想システム600は、仮想コンテナサーバ(不図示)を備える。仮想コンテナサーバは、外部からの指示に応じて、サーバ61から6i内のリソースを割り当てて、仮想サーバコンテナ、仮想DBコンテナ等を構築する。
 図4は、本実施形態2にかかる商用環境71とテスト環境E0の関係を説明するための図である。本実施形態では、仮想システム600は、運用対象の情報システム710を稼働させる商用環境71を複数の仮想コンテナの集合により構築しているものとする。また、仮想システム600は、通常、情報システム710のテスト用の情報システム730を稼働させるテスト環境E0を構築することができる。つまり、テスト環境E0は、商用環境71のミラー環境として仮想システム600上に構築することが可能である。しかし、本実施形態では、仮想システム600には、通常、テスト環境E0が構築されていないものとする。仮想コンテナのリソースを確保するためのコストを抑制するためである。尚、以降の図において破線で示す仮想コンテナは、リソースが割り当てられておらず、構築されていないことを示す。
 商用環境71上の情報システム710は、仮想サーバコンテナ711、712、713、715、717及び718、並びに、仮想DB(DataBase)コンテナ714、716及び719のそれぞれが物理サーバに構築されていることを示す。また、この例では、仮想サーバコンテナ711と712が接続され、仮想サーバコンテナ712と713及び715が接続され、仮想サーバコンテナ713と仮想DBコンテナ714が接続され、仮想サーバコンテナ715と仮想DBコンテナ716が接続されていることを示す。また、仮想サーバコンテナ717と718が接続され、仮想サーバコンテナ718と仮想DBコンテナ719が接続されていることを示す。但し、情報システム710の構成は、これに限定されない。
 テスト環境E0上の情報システム730は、仮想サーバコンテナ731、732、733、735、737及び738、並びに、仮想DBコンテナ734、736及び739のそれぞれが物理サーバに構築され得ることを示す。ここで、テスト環境E1は、仮想サーバコンテナ731、732及び733、並びに、仮想DBコンテナ734のそれぞれが物理サーバに構築された場合に部分的な情報システムを配備可能な環境を示す。また、テスト環境E2は、仮想サーバコンテナ731、732及び735、並びに、仮想DBコンテナ736のそれぞれが物理サーバに構築された場合に部分的な情報システムを配備可能な環境を示す。つまり、テスト環境E1とE2とは、仮想サーバコンテナ731及び732が共通するが、他の環境、仮想サーバコンテナ及び仮想DBコンテナが異なることを示す。
 テスト環境E12は、テスト環境E1及びE2を合わせた環境である。つまり、テスト環境E12は、仮想サーバコンテナ731、732、733及び735、並びに、仮想DBコンテナ734及び736のそれぞれが物理サーバに構築された場合に部分的な情報システムを配備可能な環境を示す。
 テスト環境E3は、仮想サーバコンテナ737及び738、並びに、仮想DBコンテナ739のそれぞれが物理サーバに構築された場合に部分的な情報システムを配備可能な環境を示す。つまり、テスト環境E3は、テスト環境E1、E2及びE12とは異なる環境であることを示す。
 図3に戻り説明を続ける。
 テスト支援システム500は、CMDB300とテスト支援装置400とを備える。CMDB300及びテスト支援装置400の一部又は全ては、同一のハードウェアで構成されてもよい。または、CMDB300は、複数台のストレージで冗長化されてもよい。また、テスト支援装置400は、複数台のコンピュータで冗長化されていても良く、各機能ブロックが複数台のコンピュータで実現されてもよい。
 CMDB300は、情報システムを構成する複数の構成情報のそれぞれと、各構成情報に対応するテストプログラム及びテスト環境の組とを関連付けて登録したデータベースの一例である。ここで、「構成情報」とは、情報システムにおける設計情報、情報システムに設定するための各種パラメータ、情報システムに実装するソフトウェアに関する情報(プログラムのソースコード、ライブラリ等やこれらから生成されたプログラムモジュール)を含む。本実施形態では、構成情報は、少なくともプログラムモジュールを含むものとして説明する。CMDB300は、テスト定義情報310、テストレベル設定情報320及びジョブフロー定義情報330を記憶する。
 テスト定義情報310は、APコードIDごとのテストプログラム及びテスト環境の組を定義した情報である。また、テスト定義情報310は、特定の構成情報に対して、複数のテストレベルのそれぞれに対応するテストプログラム及びテスト環境の組が関連付けられていてもよい。また、テスト定義情報310は、特定の構成情報に対応するテストプログラム及びテスト環境の組が、特定の構成情報と関連付けられていてもよい。
 図5は、本実施形態2にかかるテスト定義情報310の例を示す図である。テスト定義情報310は、APコードIDごとに、複数のテストレベルのそれぞれに対応するテストプログラム及びテスト環境の組が関連付けられている例を示す。具体的には、APコードID311ごとに、単体テスト312、テスト環境313、結合テスト314、テスト環境315、シナリオテスト316及びテスト環境317が関連付けられている。ここで、単体テスト312に設定される値は、単体テストにおけるテストプログラムのテストIDのリストを示す。また、結合テスト314に設定される値は、結合テストにおけるテストプログラムのテストIDのリストを示す。また、シナリオテストに設定される値は、シナリオテストにおけるテストプログラムのテストIDのリストを示す。
 また、テスト環境313は単体テスト312におけるテスト環境を示し、テスト環境315は結合テスト314におけるテスト環境を示し、テスト環境317はシナリオテスト316におけるテスト環境を示す。つまり、単体テスト312とテスト環境313は単体テスト組301であり、結合テスト314とテスト環境315は結合テスト組302であり、シナリオテスト316とテスト環境317はシナリオテスト組303である。ここで、単体テスト312、結合テスト314及びシナリオテスト316は、テストレベルを示す。また、この例では、APコードID「apc1」において、単体テストのテストIDは、「UT11」、「UT12」及び「UT13」であり、テスト環境は「E1」であることを示す。また、APコードID「apc1」において、結合テストのテストIDは「CT1」であり、テスト環境は「E12」であることを示す。また、APコードID「apc1」において、シナリオテストのテストIDは「ST1」であり、テスト環境は「E0」であることを示す。
 また、この例では、単体テスト組301は、APコードID「apc1」、「apc2」及び「apc3」で異なることを示す。つまり、単体テスト「UT21」を実行するためには、「apc2」のロードモジュール及びテスト環境「E2」が必要であるが、「apc1」及び「apc3」のロードモジュール及びテスト環境「E1」及び「E3」が不要であることを示す。
 また、この例では、結合テスト組302は、APコードID「apc1」及び「apc2」に共通し、「apc3」には定義されていないことを示す。つまり、結合テスト「CT1」を実行するためには、「apc1」及び「apc2」のいずれか一方のみが更新されていたとしても、「apc1」及び「apc2」の両方のロードモジュール及びテスト環境「E12」が必要であることを示す。
 さらに、この例では、シナリオテスト組303は、APコードID「apc1」、「apc2」、「apc3」に共通することを示す。つまり、シナリオテスト「ST1」を実行するためには、「apc1」、「apc2」及び「apc3」の全てのロードモジュール及びテスト環境「E0」が必要であることを示す。
 尚、上述した単体テスト312、結合テスト314及びシナリオテスト316に定義されたテストIDは、上述したテスト用リポジトリ200内のテストID211等の1つ以上と対応しているものとする。また、上述したテスト環境313、315及び317に設定されたE0、E1、E2、E12及びE3は、図4の仮想コンテナが定義されているものとする。例えば、テスト環境E1は、仮想サーバコンテナ731、732及び733と仮想DBコンテナ734がこの順序で接続されることが定義されているものとする。
 図6は、本実施形態2にかかるテストレベル設定情報320の例を示す図である。テストレベル設定情報320は、APコードIDごとに、実行すべきテストレベルが設定された情報である。言い換えると、テストレベル設定情報320は、特定の構成情報に対して、実行すべきテストレベルがさらに関連付けられた情報である。具体的には、APコードID311及びテストレベル322の組ごとに、ジョブグループID323及び実行すべきテストレベル324が設定されている。テストレベル322は、単体テスト、結合テスト、シナリオテスト等のテストの種類及びレベルを示す。ジョブグループID323は、ジョブの集合であるジョブグループすなわちジョブフローの識別情報である。実行すべきテストレベル324は、特定のAPコードIDにおいて、関連付けられたテストレベルを実行すべきか否かを示す情報である。この例では、「〇」が実行すべきことを示し、「-」が実行すべきでない、つまり実行する必要がないことを示すものとする。尚、テストレベル設定情報320は、実行すべきテストレベル324の項目の代わりに、実行すべきテストレベルのAPコードID311、テストレベル322及びジョブグループID323の組が登録されたものであってもよい。
 図7は、本実施形態2にかかるジョブフロー定義情報330の例を示す図である。ジョブフロー定義情報330は、ジョブグループID331ごとに、ジョブID332及びジョブ内容333の組の集合を定義した情報である。例えば、ジョブグループID331「JG11」は、ジョブID332「J111」、「J112」、「J113」、「J114」及び「J115」の順序で実行されることを示す。例えば、「J111」は、「テスト環境E1を構築」というジョブ内容を示す。「J112」は、「apc1のロードモジュールを生成」というジョブ内容を示す。「J113」は、「単体テストUT11を実行」というジョブ内容を示す。「J114」は、「単体テストUT12を実行」というジョブ内容を示す。「J115」は、「単体テストUT13を実行」というジョブ内容を示す。
 尚、「J113」、「J212」、「J312」、「JCT2」及び「JST2」は、APコードIDを固定せずに、テスト支援装置400において特定及び指定されたAPコードIDに対応するロードモジュールを生成するものとしてもよい。
 図8は、本実施形態2にかかるテスト支援装置400の構成を示すブロック図である。テスト支援装置400は、記憶部410、メモリ420、通信部430及び制御部440を備える。記憶部410は、ハードディスク、フラッシュメモリ等の記憶装置の一例である。記憶部410は、テスト支援プログラム411を記憶する。テスト支援プログラム411は本実施形態2にかかるテスト支援処理等が実装されたコンピュータプログラムである。
 メモリ420は、RAM(Random Access Memory)等の揮発性記憶装置であり、制御部440の動作時に一時的に情報を保持するための記憶領域である。通信部430は、テスト支援装置400の内部と、外部との通信インタフェースである。
 制御部440は、テスト支援装置400の各構成を制御するプロセッサつまり制御装置である。制御部440は、記憶部410からテスト支援プログラム411をメモリ420へ読み込ませ、テスト支援プログラム411を実行する。これにより、制御部440は、登録部441、検出部442、特定部443、構築部444、配備部445及びテスト実行部446の機能を実現する。
 登録部441は、情報システムを構成する複数の構成情報のそれぞれと、各構成情報に対応するテストプログラム及びテスト環境の組とを関連付けてCMDB300に登録する。また、登録部441は、特定の構成情報に対して、当該特定の構成情報に対応し、かつ、複数のテストレベルのそれぞれに対応するテストプログラム及びテスト環境の組を関連付けてCMDB300に登録する。また、登録部441は、特定の構成情報に対して、実行すべきテストレベルがさらに関連付けてCMDB300に登録する。具体的には、登録部441は、情報システムのテストを管理する管理者が操作する管理者端末(不図示)から入力された情報に応じて、テスト定義情報310、テストレベル設定情報320及びジョブフロー定義情報330をCMDB300に登録する。尚、登録部441は、管理者端末から入力されたテスト用ソースコードを、テスト用リポジトリ200に登録してもよい。
 検出部442は、AP用リポジトリ100を監視し、APソースコード121から12nの一部が更新されたことを検出する。例えば、検出部442は、定期的に、AP用リポジトリ100の更新状態を確認してもよい。または、検出部442は、AP用リポジトリ100とローカルリポジトリ(不図示)との同期処理時に、更新を検出してもよい。検出部442は、更新を検出した場合、更新されたAPコードIDを特定部443へ通知する。
 特定部443は、上述した特定部11の一例である。特定部443は、検出部442により構成情報の一部の更新が検出された場合、CMDB300を参照して、検出した構成情報に関連付けられたテストプログラム及びテスト環境の組を特定する。具体的には、特定部443は、検出部442から更新されたAPコードIDが通知された場合、テストレベル設定情報320から、通知されたAPコードIDについて実行すべきテストレベル324が「〇」であるレコードを特定し、当該レコードのテストレベル322及びジョブグループID323を特定する。そして、特定部443は、テスト定義情報310から、通知されたAPコードID及び特定したテストレベルのテストID及びテスト環境を特定する。
 さらに、特定部443は、CMDB300を参照して、構成情報に関係する他の構成情報及び他のテスト環境の組を特定する。具体的には、特定部443は、CMDB300を参照して、検出した構成情報に関連付けられたテストレベルを特定し、当該テストレベルに対応するテストプログラム及びテスト環境の組を、構成情報に関係する他の構成情報及び他のテスト環境の組として特定する。例えば、通知されたAPコードID「apc2」、特定されたテストレベルが結合テスト「CT1」である場合、特定部443は、テスト定義情報310から、「CT1」を実行するために必要な他のAPコードID「apc1」及び他のテスト環境「E2」を特定する。テスト環境「E2」は、「E12」に含まれるためである。
 構築部444は、上述した構築部12の一例である。構築部444は、特定したテスト環境を仮想システム600上に構築する。構築部444は、テストプログラムの実行後に、テスト環境を破棄するとよい。これにより、テスト環境を一時的な使用とし、使用時間(レンタル時間)を抑制できる。そのため、テスト環境の維持コストを低減できる。
 配備部445は、上述した配備部13の一例である。配備部445は、検出した構成情報に関係する部分的な情報システムを、構築したテスト環境へ配備する。具体的には、配備部445は、AP用リポジトリ100から、検出したAPコードIDに対応するAPソースコードを取得して、ロードモジュールを生成する。ここで、生成されるロードモジュールは、情報システム全体のアプリケーションではなく、更新に関係する部分的な情報システムに対応するアプリケーションである。そして、配備部445は、生成したロードモジュールを、構築したテスト環境へ配備する。
 さらに、構成情報に関係する他の構成情報が特定された場合、配備部445は、検出した構成情報に対応するプログラムモジュールと、特定した他の構成情報に対応するプログラムモジュールとを合わせて、部分的な情報システムとして、構築したテスト環境へ配備する。
 テスト実行部446は、上述したテスト実行部14の一例である。テスト実行部446は、テスト環境に配備された部分的な情報システムに対して、特定したテストプログラムを実行する。
 図9は、本実施形態2にかかるテスト支援処理の流れを示すフローチャートである。まず、情報システムの開発者等が操作する開発者端末(不図示)は、情報システムを構成するアプリケーションプログラムの一部に対応するAPソースコードを修正し、修正後のAPソースコードをAP用リポジトリ100へ登録する。
 そして、検出部442は、AP用リポジトリ100を監視し、更新されたAPソースコードを検出する(S201)。検出部442は、検出したAPソースコードに対応するAPコードIDを、特定部443へ通知する。ここでは、APコードID「apc1」が通知されるものとする。
 これに応じて、特定部443は、検出したAPソースコードに関連付けられたテストレベルを特定する(S202)。例えば、特定部443は、テストレベル設定情報320の中から、検出部442から通知されたAPコードID「apc1」について実行すべきテストレベル324が「〇」であるレコードを特定する。そして、特定部443は、当該レコードのテストレベル322「単体テスト」及びジョブグループID323「JG11」を特定する。
 次に、特定部443は、検出されたAPソースコード及び特定されたテストレベルに対応するテストID及びテスト環境を特定する(S203)。例えば、特定部443は、テスト定義情報310の中から、APコードID「apc1」の単体テスト312「UT11」、「UT12」及び「UT13」並びにテスト環境313「E1」を特定する。
 そして、特定部443は、テストレベルが他のAPソースコードに関係するか否かを判定する(S204)。例えば、特定部443は、テスト定義情報310の中から、APコードID「apc1」の単体テストが、他のAPコードIDとは共通していないことから、テストレベルが他のAPソースコードに関係しない(S204でNO)と判定する。
 そこで、構築部444は、特定したテスト環境「E1」を、仮想システム600上に構築する(S206)。図10は、本実施形態2にかかる検出されたAPコードのテストレベルが単体テストである場合に構築されるテスト環境の例を示す図である。ここでは、構築部444は、仮想システム600上に、4つの仮想コンテナを割り当て、仮想サーバコンテナ731、732及び733並びに仮想DBコンテナ734をテスト環境E1として構築する。一方、このとき、仮想サーバコンテナ735、737及び738、並びに、仮想DBコンテナ736及び739は、構築されていないことを示す。
 図9に戻り説明を続ける。
 続いて、配備部445は、検出されたAPソースコードから、部分的なロードモジュールを生成する(S207)。例えば、配備部445は、AP用リポジトリ100から、APコードID「apc1」に対応するAPソースコードを取得し、当該APソースコードから、情報システムにおける部分的なロードモジュールを生成する。そして、配備部445は、生成したロードモジュールをテスト環境「E1」へ配備する(S208)。例えば、図10の情報システム730aがテスト環境「E1」に配備される。
 そして、テスト実行部446は、テスト環境「E1」上のロードモジュールに対して、特定したテストIDのテストプログラムを実行する(S209)。これにより、テスト実行部446は、実行結果を取得し、実行結果を検証し、テストの成否を判定する。
 尚、上述したステップS206からS209について、ジョブフロー定義情報330を用いて実行する場合は、次のようになる。まず、特定部443は、ジョブフロー定義情報330の中から、ステップS202で特定したジョブグループID「JG11」に対応付けられたジョブID「J111」から「J115」を特定する。そして、構築部444は、「J111」として、仮想システム600上にテスト環境E1を構築する(S206)。具体的には、構築部444は、テスト環境E1に定義された4つの仮想コンテナを仮想システム600上に割り当て(払い出し)、仮想サーバコンテナ731、732及び733並びに仮想DBコンテナ734を構築する。次に、配備部445は、「J112」として、APコードID「apc1」に対応するロードモジュールを生成(S207)及びテスト環境E1上に配備する(S208)。
 その後、テスト実行部446は、「J113」として、単体テストのテストID「UT11」に対応するテストコードを、テスト用リポジトリ200から取得する。テスト実行部446は、取得したテストコードを必要に応じてコンパイル、ビルド等して、実行可能なプログラムモジュール(テストプログラム)を生成してもよい。そして、テスト実行部446は、テストコード又は生成したプログラムモジュールを、テスト環境E1上に配備されたロードモジュールに対して実行する。同様に、テスト実行部446は、「J114」として、単体テストのテストID「UT12」を対象に、上記と同様に実行する。その後、テスト実行部446は、「J115」として、単体テストのテストID「UT13」を対象に、上記と同様に実行する。
 その後、構築部444は、構築したテスト環境「E1」を破棄する(S210)。尚、ジョブフロー定義情報330は、各ジョブグループIDの最後のジョブIDに、構築したテスト環境の破棄処理を追加してもよい。
 次に、検出されたAPコードのテストレベルが結合テストである場合について説明する。ここでは、更新されたAPソースコードに対応するAPコードID「apc2」が通知されるものとする。この場合、特定部443は、テストレベル設定情報320の中から、APコードID「apc2」について実行すべきテストレベル324が「〇」である2つのレコードを特定する。そして、特定部443は、各レコードのテストレベル322及びジョブグループID323として、「単体テスト」及び「JG21」と、「結合テスト」及び「JGCT」とを特定する(S202)。そして、特定部443は、テスト定義情報310の中から、APコードID「apc2」の単体テスト312「UT21」及びテスト環境313「E2」と、結合テスト314「CT1」及びテスト環境315「E12」を特定する(S203)。
 ここで、特定部443は、テスト定義情報310の中から、テストレベルが他のAPソースコードに関係する(S204でYES)と判定する。APコードID「apc2」の結合テストが、他のAPコードID「apc1」と共通しているためである。そこで、特定部443は、特定したテストレベルに対応するテストIDに関連付けられた他のAPソースコード、テストID及びテスト環境を特定する(S205)。具体的には、特定部443は、結合テストのテストID「CT1」に関連付けられた他のAPコードID「apc1」、テストID「UT11」、「UT12」及び「UT13」並びにテスト環境「E1」を特定する。但し、APコードID「apc1」は更新されていないため、特定部443は、テストID「UT11」、「UT12」及び「UT13」を特定しなくてもよい。つまり、更新されていないAPコードID「apc1」の単体テストは実行しなくてもよい。また、この例では、結合テスト「CT1」のテスト環境「E12」に「E1」及び「E2」が含まれるため、構築対象のテスト環境を「E12」のみとしてもよい。
 続いて、構築部444は、特定したテスト環境「E12」を、仮想システム600上に構築する(S206)。図11は、本実施形態2にかかる検出されたAPコードのテストレベルが結合テストである場合に構築されるテスト環境の例を示す図である。ここでは、構築部444は、仮想システム600上に、6つの仮想コンテナを割り当て、仮想サーバコンテナ731、732、733及び735並びに仮想DBコンテナ734及び736をテスト環境E12として構築する。尚、テスト環境E2も構築されていることを示す。一方、このとき、仮想サーバコンテナ737及び738、並びに、仮想DBコンテナ739は、構築されていないことを示す。
 図9に戻り説明を続ける。
 続いて、配備部445は、AP用リポジトリ100から、APコードID「apc1」及び「apc2」に対応するAPソースコードを取得し、当該APソースコードから、情報システムにおける部分的なロードモジュールを生成する(S207)。そして、配備部445は、生成したロードモジュールをテスト環境「E12」へ配備する(S208)。例えば、図11の情報システム730bがテスト環境「E12」に配備される。そして、テスト実行部446は、テスト環境「E12」上のロードモジュールに対して、特定したテストIDのテストプログラムを実行する(S209)。この例では、テスト実行部446は、テスト環境「E2」上のロードモジュールに対して、単体テスト「UT21」を実行する。テスト実行部446は、「UR21」の実行結果が成功した場合、テスト環境「E12」上のロードモジュールに対して、結合テスト「CT1」を実行する。
 尚、上述したステップS206からS209について、ジョブフロー定義情報330を用いて実行する場合は、次のようにしてもよい。例えば、先に「JG21」を実行し、テスト環境E2を破棄する。その後、「JGCT」を実行し、テスト環境E12を破棄する。または、「JGCT」における「JCT1」及び「JCT2」を実行し、「apc2」の単体テストに相当する「J213」を実行し、その後、結合テストに相当する「JGCT」を実行し、テスト環境E12を破棄してもよい。
 また、テストレベル設定情報320において、APコードID「apc2」について結合テストのみが実行すべきテストレベル324である場合、ジョブグループID「JGCT」のみが実行される。この場合でも、結合テストのために、「apc1」及び「apc2」に対応するロードモジュールが配備されるが、「apc3」は配備されず、テスト環境「E3」も構築されない。
 そのため、本実施形態により、アプリケーションの部分的な更新時に、商用環境と比べて部分的なテスト環境を構築し、部分的なロードモジュールが生成、配備され、更新された機能に対応する部分のテストプログラムが実行される。よって、情報システムのテスト環境の構築及びテストの実施を効率的に実施することができる。
<その他の実施形態>
 上述の例において、プログラムは、コンピュータに読み込まれた場合に、実施形態で説明された1又はそれ以上の機能をコンピュータに行わせるための命令群(又はソフトウェアコード)を含む。プログラムは、非一時的なコンピュータ可読媒体又は実体のある記憶媒体に格納されてもよい。限定ではなく例として、コンピュータ可読媒体又は実体のある記憶媒体は、random-access memory(RAM)、read-only memory(ROM)、フラッシュメモリ、solid-state drive(SSD)又はその他のメモリ技術、CD-ROM、digital versatile disc(DVD)、Blu-ray(登録商標)ディスク又はその他の光ディスクストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ又はその他の磁気ストレージデバイスを含む。プログラムは、一時的なコンピュータ可読媒体又は通信媒体上で送信されてもよい。限定ではなく例として、一時的なコンピュータ可読媒体又は通信媒体は、電気的、光学的、音響的、またはその他の形式の伝搬信号を含む。
 なお、本開示は上記実施形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。また、本開示は、それぞれの実施形態を適宜組み合わせて実施されてもよい。
 上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
 (付記A1)
 情報システムを構成する複数の構成情報のうち一部の更新を検出した場合、前記複数の構成情報のそれぞれと各構成情報に対応するテストプログラム及びテスト環境の組とを関連付けて登録したデータベースを参照して、当該検出した構成情報に関連付けられたテストプログラム及びテスト環境の組を特定する特定手段と、
 前記特定したテスト環境を仮想システム上に構築する構築手段と、
 前記検出した構成情報に関係する部分的な情報システムを、前記構築したテスト環境へ配備する配備手段と、
 前記テスト環境に配備された前記部分的な情報システムに対して、前記特定したテストプログラムを実行するテスト実行手段と、
 を備えるテスト支援装置。
 (付記A2)
 前記特定手段は、前記データベースを参照して、前記構成情報に関係する他の構成情報及び他のテスト環境の組をさらに特定し、
 前記配備手段は、前記検出した構成情報に対応するプログラムモジュールと、前記特定した他の構成情報に対応するプログラムモジュールとを合わせて、前記部分的な情報システムとして、前記構築したテスト環境へ配備する
 付記A1に記載のテスト支援装置。
 (付記A3)
 前記データベースは、
 特定の構成情報に対して、複数のテストレベルのそれぞれに対応するテストプログラム及びテスト環境の組が関連付けられ、
 前記特定の構成情報に対して、実行すべきテストレベルがさらに関連付けられ、
 前記特定手段は、
 前記データベースを参照して、前記検出した構成情報に関連付けられたテストレベルを特定し、当該テストレベルに対応するテストプログラム及びテスト環境の組を、前記構成情報に関係する他の構成情報及び他のテスト環境の組として特定する
 付記A2に記載のテスト支援装置。
 (付記A4)
 前記構築手段は、前記テストプログラムの実行後に、前記テスト環境を破棄する
 付記A1からA3までのいずれか1項に記載のテスト支援装置。
 (付記A5)
 前記構成情報は、少なくともプログラムモジュールを含む
 付記A1からA4までのいずれか1項に記載のテスト支援装置。
 (付記B1)
 情報システムを構成する複数の構成情報のそれぞれと、各構成情報に対応するテストプログラム及びテスト環境の組とを関連付けて登録したデータベースと、
 前記データベースと接続されたテスト支援装置と、を備え、
 前記テスト支援装置は、
 前記複数の構成情報のうち一部の更新を検出した場合、前記データベースを参照して、当該検出した構成情報に関連付けられたテストプログラム及びテスト環境の組を特定する特定手段と、
 前記特定したテスト環境を仮想システム上に構築する構築手段と、
 前記検出した構成情報に関係する部分的な情報システムを前記構築したテスト環境へ配備する配備手段と、
 前記テスト環境に配備された前記部分的な情報システムに対して、前記特定したテストプログラムを実行するテスト実行手段と、
 を備えるテスト支援システム。
 (付記B2)
 前記特定手段は、前記データベースを参照して、前記構成情報に関係する他の構成情報及び他のテスト環境の組をさらに特定し、
 前記配備手段は、前記検出した構成情報に対応するプログラムモジュールと、前記特定した他の構成情報に対応するプログラムモジュールとを合わせて、前記部分的な情報システムとして、前記構築したテスト環境へ配備する
 付記B1に記載のテスト支援システム。
 (付記C1)
 情報システムを構成する複数の構成情報のうち一部の更新を検出した場合、前記複数の構成情報のそれぞれと各構成情報に対応するテストプログラム及びテスト環境の組とを関連付けて登録したデータベースを参照して、当該検出した構成情報に関連付けられたテストプログラム及びテスト環境の組を特定し、
 前記特定したテスト環境を仮想システム上に構築し、
 前記検出した構成情報に関係する部分的な情報システムを前記構築したテスト環境へ配備し、
 前記テスト環境に配備された前記部分的な情報システムに対して、前記特定したテストプログラムを実行する、
 テスト支援方法。
 (付記D1)
 情報システムを構成する複数の構成情報のうち一部の更新を検出した場合、前記複数の構成情報のそれぞれと各構成情報に対応するテストプログラム及びテスト環境の組とを関連付けて登録したデータベースを参照して、当該検出した構成情報に関連付けられたテストプログラム及びテスト環境の組を特定する特定処理と、
 前記特定したテスト環境を仮想システム上に構築する構築処理と、
 前記検出した構成情報に関係する部分的な情報システムを前記構築したテスト環境へ配備する配備処理と、
 前記テスト環境に配備された前記部分的な情報システムに対して、前記特定したテストプログラムを実行するテスト実行処理と、
 をコンピュータに実行させるテスト支援プログラムが格納された非一時的なコンピュータ可読媒体。
 以上、実施形態(及び実施例)を参照して本願発明を説明したが、本願発明は上記実施形態(及び実施例)に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
 1 テスト支援装置
 11 特定部
 12 構築部
 13 配備部
 14 テスト実行部
 N ネットワーク
 100 AP用リポジトリ
 111 APコードID
 11n APコードID
 121 APソースコード
 12n APソースコード
 200 テスト用リポジトリ
 211 テストID
 21m テストID
 221 テスト用ソースコード
 22m テスト用ソースコード
 300 CMDB
 310 テスト定義情報
 311 APコードID
 312 単体テスト
 313 テスト環境
 314 結合テスト
 315 テスト環境
 316 シナリオテスト
 317 テスト環境
 301 単体テスト組
 302 結合テスト組
 303 シナリオテスト組
 320 テストレベル設定情報
 321 APコードID
 322 テストレベル
 323 ジョブグループID
 324 実行すべきテストレベル
 330 ジョブフロー定義情報
 331 ジョブグループID
 332 ジョブID
 333 ジョブ内容
 400 テスト支援装置
 410 記憶部
 411 テスト支援プログラム
 420 メモリ
 430 通信部
 440 制御部
 441 登録部
 442 検出部
 443 特定部
 444 構築部
 445 配備部
 446 テスト実行部
 500 テスト支援システム
 600 仮想システム
 61 サーバ
 611 仮想コンテナ
 61j 仮想コンテナ
 6i サーバ
 6i1 仮想コンテナ
 6ik 仮想コンテナ
 71 商用環境
 710 情報システム
 711 仮想サーバコンテナ
 712 仮想サーバコンテナ
 713 仮想サーバコンテナ
 714 仮想DBコンテナ
 715 仮想サーバコンテナ
 716 仮想DBコンテナ
 717 仮想サーバコンテナ
 718 仮想サーバコンテナ
 719 仮想DBコンテナ
 E0 テスト環境
 E1 テスト環境
 E2 テスト環境
 E12 テスト環境
 E3 テスト環境
 730 情報システム
 730a 情報システム
 730b 情報システム
 731 仮想サーバコンテナ
 732 仮想サーバコンテナ
 733 仮想サーバコンテナ
 734 仮想DBコンテナ
 735 仮想サーバコンテナ
 736 仮想DBコンテナ
 737 仮想サーバコンテナ
 738 仮想サーバコンテナ
 739 仮想DBコンテナ

Claims (9)

  1.  情報システムを構成する複数の構成情報のうち一部の更新を検出した場合、前記複数の構成情報のそれぞれと各構成情報に対応するテストプログラム及びテスト環境の組とを関連付けて登録したデータベースを参照して、当該検出した構成情報に関連付けられたテストプログラム及びテスト環境の組を特定する特定手段と、
     前記特定したテスト環境を仮想システム上に構築する構築手段と、
     前記検出した構成情報に関係する部分的な情報システムを、前記構築したテスト環境へ配備する配備手段と、
     前記テスト環境に配備された前記部分的な情報システムに対して、前記特定したテストプログラムを実行するテスト実行手段と、
     を備えるテスト支援装置。
  2.  前記特定手段は、前記データベースを参照して、前記構成情報に関係する他の構成情報及び他のテスト環境の組をさらに特定し、
     前記配備手段は、前記検出した構成情報に対応するプログラムモジュールと、前記特定した他の構成情報に対応するプログラムモジュールとを合わせて、前記部分的な情報システムとして、前記構築したテスト環境へ配備する
     請求項1に記載のテスト支援装置。
  3.  前記データベースは、
     特定の構成情報に対して、複数のテストレベルのそれぞれに対応するテストプログラム及びテスト環境の組が関連付けられ、
     前記特定の構成情報に対して、実行すべきテストレベルがさらに関連付けられ、
     前記特定手段は、
     前記データベースを参照して、前記検出した構成情報に関連付けられたテストレベルを特定し、当該テストレベルに対応するテストプログラム及びテスト環境の組を、前記構成情報に関係する他の構成情報及び他のテスト環境の組として特定する
     請求項2に記載のテスト支援装置。
  4.  前記構築手段は、前記テストプログラムの実行後に、前記テスト環境を破棄する
     請求項1から3までのいずれか1項に記載のテスト支援装置。
  5.  前記構成情報は、少なくともプログラムモジュールを含む
     請求項1から4までのいずれか1項に記載のテスト支援装置。
  6.  情報システムを構成する複数の構成情報のそれぞれと、各構成情報に対応するテストプログラム及びテスト環境の組とを関連付けて登録したデータベースと、
     前記データベースと接続されたテスト支援装置と、を備え、
     前記テスト支援装置は、
     前記複数の構成情報のうち一部の更新を検出した場合、前記データベースを参照して、当該検出した構成情報に関連付けられたテストプログラム及びテスト環境の組を特定する特定手段と、
     前記特定したテスト環境を仮想システム上に構築する構築手段と、
     前記検出した構成情報に関係する部分的な情報システムを前記構築したテスト環境へ配備する配備手段と、
     前記テスト環境に配備された前記部分的な情報システムに対して、前記特定したテストプログラムを実行するテスト実行手段と、
     を備えるテスト支援システム。
  7.  前記特定手段は、前記データベースを参照して、前記構成情報に関係する他の構成情報及び他のテスト環境の組をさらに特定し、
     前記配備手段は、前記検出した構成情報に対応するプログラムモジュールと、前記特定した他の構成情報に対応するプログラムモジュールとを合わせて、前記部分的な情報システムとして、前記構築したテスト環境へ配備する
     請求項6に記載のテスト支援システム。
  8.  情報システムを構成する複数の構成情報のうち一部の更新を検出した場合、前記複数の構成情報のそれぞれと各構成情報に対応するテストプログラム及びテスト環境の組とを関連付けて登録したデータベースを参照して、当該検出した構成情報に関連付けられたテストプログラム及びテスト環境の組を特定し、
     前記特定したテスト環境を仮想システム上に構築し、
     前記検出した構成情報に関係する部分的な情報システムを前記構築したテスト環境へ配備し、
     前記テスト環境に配備された前記部分的な情報システムに対して、前記特定したテストプログラムを実行する、
     テスト支援方法。
  9.  情報システムを構成する複数の構成情報のうち一部の更新を検出した場合、前記複数の構成情報のそれぞれと各構成情報に対応するテストプログラム及びテスト環境の組とを関連付けて登録したデータベースを参照して、当該検出した構成情報に関連付けられたテストプログラム及びテスト環境の組を特定する特定処理と、
     前記特定したテスト環境を仮想システム上に構築する構築処理と、
     前記検出した構成情報に関係する部分的な情報システムを前記構築したテスト環境へ配備する配備処理と、
     前記テスト環境に配備された前記部分的な情報システムに対して、前記特定したテストプログラムを実行するテスト実行処理と、
     をコンピュータに実行させるテスト支援プログラムが格納された非一時的なコンピュータ可読媒体。
PCT/JP2022/008428 2022-02-28 2022-02-28 テスト支援装置、システム、及び、方法、並びに、コンピュータ可読媒体 WO2023162272A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/008428 WO2023162272A1 (ja) 2022-02-28 2022-02-28 テスト支援装置、システム、及び、方法、並びに、コンピュータ可読媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/008428 WO2023162272A1 (ja) 2022-02-28 2022-02-28 テスト支援装置、システム、及び、方法、並びに、コンピュータ可読媒体

Publications (1)

Publication Number Publication Date
WO2023162272A1 true WO2023162272A1 (ja) 2023-08-31

Family

ID=87765258

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/008428 WO2023162272A1 (ja) 2022-02-28 2022-02-28 テスト支援装置、システム、及び、方法、並びに、コンピュータ可読媒体

Country Status (1)

Country Link
WO (1) WO2023162272A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015204026A (ja) * 2014-04-15 2015-11-16 日本電信電話株式会社 資源使用許可システム及び資源使用許可方法
WO2018066040A1 (ja) * 2016-10-03 2018-04-12 株式会社日立製作所 管理計算機及びテスト環境決定方法
US20210089437A1 (en) * 2019-09-20 2021-03-25 The Toronto-Dominion Bank Systems and methods for automated provisioning of a virtual mainframe test environment
JP2021103354A (ja) * 2019-12-24 2021-07-15 トヨタ自動車株式会社 プログラムの試験方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015204026A (ja) * 2014-04-15 2015-11-16 日本電信電話株式会社 資源使用許可システム及び資源使用許可方法
WO2018066040A1 (ja) * 2016-10-03 2018-04-12 株式会社日立製作所 管理計算機及びテスト環境決定方法
US20210089437A1 (en) * 2019-09-20 2021-03-25 The Toronto-Dominion Bank Systems and methods for automated provisioning of a virtual mainframe test environment
JP2021103354A (ja) * 2019-12-24 2021-07-15 トヨタ自動車株式会社 プログラムの試験方法

Similar Documents

Publication Publication Date Title
CN110297689B (zh) 智能合约执行方法、装置、设备及介质
US10333981B2 (en) Method and apparatus for security checking of image for container
US11550641B2 (en) Extending the kubernetes API in-process
US10956143B2 (en) Server updates
JP7316726B2 (ja) ソフトウェア・コンポーネントに関連するセキュリティ・リスクを検出する方法、システム、およびプログラム
US20130219022A1 (en) Hypothetical policy and event evaluation
US20200310779A1 (en) Validating a firmware compliance policy prior to use in a production system
CN111176818B (zh) 分布式预测的方法、装置、系统、电子设备及存储介质
US11803413B2 (en) Migrating complex legacy applications
US20230161614A1 (en) Detecting vulnerabilities in configuration code of a cloud environment utilizing infrastructure as code
CN111831567B (zh) 应用的测试环境配置方法、装置、系统和介质
JPWO2016013199A1 (ja) 仮想化基盤管理装置、仮想化基盤管理システム、仮想化基盤管理方法、及び、仮想化基盤管理プログラム
CN112162761A (zh) 自动化部署项目至公有云容器化平台的方法、系统及设备
US8448133B2 (en) Software development, deployment and evolution system, method and program product
CN111813379B (zh) 应用部署方法及装置、电子设备、计算机可读存储介质
JP2022100301A (ja) ソフトウェア・アップグレードがコンピューティング・デバイスに与える潜在的な影響を判定するための方法、コンピュータ・プログラム、および更新推奨コンピュータ・サーバ(ソフトウェア・アップグレードの安定性の推奨)
US11294804B2 (en) Test case failure with root cause isolation
CN111712795A (zh) 用于评估应用部署的方法、设备、计算机程序产品和可读介质
WO2023162272A1 (ja) テスト支援装置、システム、及び、方法、並びに、コンピュータ可読媒体
US8819494B2 (en) Automatically changing parts in response to tests
US11550697B2 (en) Cross jobs failure dependency in CI/CD systems
WO2021045833A1 (en) Enhanced virtual machine image management system
US20230275931A1 (en) Dynamic management of role-based access control systems
US20150178074A1 (en) Method, a system, and a non-transitory computer-readable medium for supporting application development
CN108289114B (zh) 云端服务系统及处理云端服务异常的方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22928794

Country of ref document: EP

Kind code of ref document: A1