Dispatching system for automatic test
1. A dispatch system for automated testing, the dispatch system comprising: the system comprises a scheduling server and a plurality of test execution devices, wherein each test execution device is provided with a test environment for executing a test task; the scheduling server is connected with each test execution device through a network;
the test execution equipment is used for responding to a registration instruction and sending registration information to the scheduling server; the scheduling server is configured to associate the test execution device and the scheduling server based on the registration information, so that a test environment in the test execution device is used to execute a test task distributed by the scheduling server;
the test execution equipment is also used for responding to a logout instruction and sending logout information to the scheduling server; the scheduling server is further configured to release an association relationship between the test execution device and the scheduling server based on the logout information, so that a test environment in the test execution device is used to execute a test task triggered by a target object, where the target object is an object other than the scheduling server.
2. The scheduling system of claim 1 wherein the registration information comprises configuration information of the test execution device; the scheduling server is configured to store the configuration information of the test execution device in a database, where the configuration information stored in the database is used to indicate that the test execution device is associated with the scheduling server.
3. The scheduling system of claim 2 wherein the logging information includes configuration information of the test execution apparatus; the scheduling server is further configured to delete the configuration information of the test execution device from the database.
4. The scheduling system of claim 1, wherein the scheduling server is further configured to send registration success information to the test execution device after associating the test execution device with the scheduling server;
the test execution device is further configured to monitor the test task distributed by the scheduling server based on the registration success information.
5. The scheduling system of claim 1, wherein the scheduling server is further configured to send logout success information to the test execution device after the association relationship between the test execution device and the scheduling server is released;
the test execution device is further configured to stop monitoring the test task distributed by the scheduling server and monitor the test task triggered by the target object based on the logout success information.
6. The scheduling system of claim 1 wherein the registration information further includes test capability information of the test execution device; the scheduling server is further used for associating the test execution equipment with the test capability information;
the scheduling server is further configured to determine, based on test capability information required by the test task to be executed, a test execution device associated with the test capability information, and distribute the test task to the test execution device.
7. The scheduling system of claim 6 wherein the scheduling server is further configured to release the association relationship between the test execution device and the test capability information of the test execution device after the association relationship between the test execution device and the scheduling server is released.
8. The scheduling system of claim 6 wherein the test execution device is further configured to obtain modified test capability information, and send capability update information to the scheduling server, where the capability update information includes the updated test capability information;
the scheduling server is further configured to update the test capability information associated with the test execution device to the changed test capability information.
9. The scheduling system of claim 6 further comprising: a management device;
the management equipment is respectively connected with the test execution equipment and the scheduling server through a network;
the management equipment is used for displaying a capability query interface, and query options are displayed on the capability query interface; responding to the triggering of the query option, determining that a query instruction is received, and sending capability query information to the scheduling server, wherein the capability query information carries any test capability information to be queried;
the scheduling server is further configured to query the test execution device associated with the test capability information, and send the queried device information of the test execution device to the management device;
the management device is further configured to display the queried device information in the capability query interface.
10. The scheduling system of claim 1, wherein the test execution device is further configured to receive a test task distributed by the scheduling server, execute the test task in the test environment to obtain a test result, and send the test result to the scheduling server;
the dispatching server is also used for outputting the test result.
11. The scheduling system according to claim 1 or 10, wherein the scheduling server is further configured to determine an execution status of the test execution device when the association relationship between the test execution device and the scheduling server is released; if the execution state is the executing test task, the test state of the executing test task is marked as unexecuted, so that the scheduling server schedules other test execution equipment to execute the executing test task.
12. The scheduling system of claim 1 wherein the test execution device is further configured to display a device management interface, the device management interface displaying a registration option and a logout option;
the test execution device is further configured to determine that the registration instruction is received in response to the registration option being triggered; the test execution device is further configured to determine that the logout instruction is received in response to the logout option being triggered.
13. The scheduling system of claim 1 further comprising: a management device;
the management equipment is respectively connected with the test execution equipment and the scheduling server through a network;
the management equipment is also used for displaying a task management interface, and the task management interface displays task management options of a plurality of test tasks;
the task management options comprise filtering options, and the management device is further configured to generate a filtering instruction in response to the filtering options being triggered, where the filtering instruction carries filtering conditions, and perform filtering display on the plurality of test tasks based on the filtering conditions.
14. The scheduling system of claim 13 wherein the task management options further include an export option, the management device further configured to export test data for any of the test tasks in response to the export option for the test task being triggered.
15. The dispatch system of claim 1, wherein the dispatch system has associated therewith a vulnerability management system;
the vulnerability management system is used for responding to submission of a version file aiming at any application program vulnerability, triggering a test task for testing the version file, and sending the test task to the scheduling server;
the scheduling server is used for triggering the test execution equipment to execute the test task, obtaining a test result and submitting the test result to the vulnerability management system.
16. The scheduling system of claim 15 wherein the vulnerability management system is further configured to update a test status of the application vulnerability based on the test results.
Background
After the product (e.g., software product or hardware product) is developed, a technician may test the product to determine whether the product is usable normally according to the test result. At present, a test environment is generally established through test execution equipment, and a product to be tested is tested through test capability provided by the test environment; for example, the test may be performed by an automated test or a manual test.
Disclosure of Invention
The embodiment of the application provides an automatic test scheduling system which can improve the flexibility of sharing a test environment. The scheduling system includes: the system comprises a scheduling server and a plurality of test execution devices, wherein each test execution device is provided with a test environment for executing a test task; the scheduling server is connected with each test execution device through a network;
the test execution equipment is used for responding to a registration instruction and sending registration information to the scheduling server; the scheduling server is configured to associate the test execution device and the scheduling server based on the registration information, so that a test environment in the test execution device is used to execute a test task distributed by the scheduling server;
the test execution equipment is also used for responding to a logout instruction and sending logout information to the scheduling server; the scheduling server is further configured to release an association relationship between the test execution device and the scheduling server based on the logout information, so that a test environment in the test execution device is used to execute a test task triggered by a target object, where the target object is an object other than the scheduling server.
In the embodiment of the application, the association relationship between the test execution device and the scheduling server can be dynamically managed in a registration and logout mode, so that the test environment configured by the test execution device is dedicated to the automatic test distributed by the scheduling server when the test execution device and the scheduling server are associated, and the test environment can be used by the test triggered by the target object when the test execution device and the scheduling server are not associated, thereby improving the flexibility of sharing the test environment.
Drawings
FIG. 1 illustrates a schematic diagram of a scheduling system for automated testing shown in an exemplary embodiment of the present application;
FIG. 2 illustrates a schematic diagram of a registration process shown in an exemplary embodiment of the present application;
FIG. 3 illustrates a flow chart of a registration process shown in an exemplary embodiment of the present application;
FIG. 4 is a flow diagram illustrating a process for adding test capabilities in accordance with an illustrative embodiment of the present application;
FIG. 5 illustrates a flow diagram of a logoff process, shown in an exemplary embodiment of the present application;
FIG. 6 illustrates a flow diagram of a delete testability process shown in an exemplary embodiment of the present application;
FIG. 7 illustrates a flow chart of a change test capability process shown in an exemplary embodiment of the present application;
FIG. 8 illustrates a schematic diagram of a device management interface shown in an exemplary embodiment of the present application;
FIG. 9 illustrates a schematic diagram of a task management interface shown in an exemplary embodiment of the present application.
Detailed Description
To make the objects, technical solutions and advantages of the present application more clear, embodiments of the present application will be described in further detail below with reference to the accompanying drawings.
Reference herein to "a plurality" means two or more. "and/or" describes the association relationship of the associated objects, meaning that there may be three relationships, e.g., a and/or B, which may mean: a exists alone, A and B exist simultaneously, and B exists alone. The character "/" generally indicates that the former and latter associated objects are in an "or" relationship.
Referring to fig. 1, a schematic diagram of a scheduling system for automated testing according to an exemplary embodiment of the present application is shown.
The scheduling system includes: the system comprises a scheduling server and a plurality of test execution devices, wherein each test execution device is provided with a test environment for executing a test task; the dispatching server is connected with each test execution device through a network;
the test execution equipment is used for responding to the registration instruction and sending registration information to the scheduling server; the scheduling server is used for associating the test execution equipment with the scheduling server based on the registration information so that the test environment in the test execution equipment is used for executing the test tasks distributed by the scheduling server;
the test execution equipment is also used for responding to the logout instruction and sending logout information to the scheduling server; and the scheduling server is also used for releasing the incidence relation between the test execution equipment and the scheduling server based on the logout information, so that the test environment in the test execution equipment is used for executing the test task triggered by the target object, and the target object is an object except the scheduling server.
The scheduling system is a scheduling system for an automated test, and the automated test may include at least one of a software test or a hardware test, which is not specifically limited in this application; for example, the automated test may be a regression test.
The scheduling server can be a server, or a server cluster consisting of a plurality of servers, or a cloud computing service center; the present application takes a scheduling server as an example for scheduling an automated test. The test execution device may be at least one of a smartphone, a tablet Personal Computer (PC) device, or other electronic device for executing test tasks.
The target object may be a technician operating the test execution device, and accordingly, after the association relationship between the test execution device and the scheduling server is released, the test environment in the test execution device may be used for manual testing.
In this embodiment, the test execution device sends registration information to the scheduling server to indicate that the test execution device applies for registration to the scheduling server, and correspondingly, the test execution device sends logout information to the scheduling server to indicate that the test execution device applies for logout to the scheduling server.
In the embodiment of the application, by establishing a registration/logout mechanism triggered by the autonomy of the test execution equipment, the incidence relation between the test execution equipment and the scheduling server is not managed in a unified manner by the scheduling server in a static configuration mode any more, but is managed by triggering registration/logout by the test execution equipment, so that on one hand, the management complexity of a plurality of test execution equipment included in the scheduling system is reduced, and the flexibility of dynamically managing the incidence relation between the scheduling server and the test execution equipment is improved; on the other hand, because the test environment configured by the test execution device is dedicated to the automated test distributed by the scheduling server when the test execution device and the scheduling server are associated, and the test environment can be used by the test triggered by the target object when the test execution device and the scheduling server are not associated, the test resource provided by the test execution device can be shared by the test triggered by the target object and the automated test in a time-sharing manner, so that the utilization of the test resource is maximized.
In the embodiment of the application, the registration information includes configuration information of the test execution device; and the scheduling server is used for storing the configuration information of the test execution equipment in a database, and the configuration information stored in the database is used for indicating that the test execution equipment is associated with the scheduling server.
The configuration information includes information such as a device identifier, an Internet Protocol (IP) address, or test case information of the test execution device. The device identification is an identification for indexing the test execution device. The test case information includes at least one test case supported by the test execution device.
For example, the device identifier (index) may be represented as an identifier of device 1(test _ rack _1), device 2(test _ rack _2), or device 3(test _ rack _ 3); the test case information may include a list of test cases supported by the test execution device.
In the embodiment of the application, the dispatch server is provided with a common port, and the common port is used for information interaction between the test execution device and the dispatch server. In some embodiments, the common port may be a socket port.
In the embodiment of the application, the configuration information of the test execution device is stored in the database of the scheduling server, so that the test execution device and the scheduling server are associated, the operation is simple and convenient, and the efficiency is high.
It should be noted that, because the scheduling system for the automated test provided by the present application includes a plurality of test execution devices, correspondingly, the database of the scheduling server may store configuration information of the plurality of test execution devices associated with the scheduling server.
For example, referring to fig. 2, taking the public port 10000 as an example for explanation, the test execution device 1, the test execution device 2, and the test execution device 3 respectively apply for registration to the scheduling server through the public port 10000, and after the scheduling server receives the registration information through the public port 10000, the registration information is analyzed to obtain configuration information, and the configuration information is respectively stored in the database.
In some embodiments, the scheduling server is further configured to send registration success information to the test execution device after associating the test execution device with the scheduling server;
and the test execution equipment is also used for monitoring the test tasks distributed by the scheduling server based on the registration success information.
The registration success information is used for indicating that the test execution equipment is successfully associated with the scheduling server; after the test execution device and the scheduling server are successfully associated, the test environment configured by the test execution device becomes an exclusive test resource of the scheduling server, and the scheduling server can distribute the test task to the test execution device, and correspondingly, the test execution device can start to monitor the test task distributed by the scheduling server.
For example, referring to fig. 3, which shows a flowchart of a registration process shown in an exemplary embodiment of the present application, a test execution device sends registration information to a scheduling server; the scheduling server receives and analyzes the registration information; and inputting the analyzed configuration information into a database, and returning registration success information.
In the embodiment of the application, on one hand, the test execution device can determine that the current test execution device is successfully associated with the scheduling server based on the registration success information sent by the scheduling server, so that the accuracy of monitoring the test task is high; on the other hand, once the two are successfully associated, the test execution device can start the test task distributed by the monitoring scheduling server, and the timeliness of triggering the monitoring test task is higher.
In other embodiments, when the test execution device and the scheduling server are associated, an unsuccessful association, that is, a failure of the association may occur, and accordingly, the scheduling server is further configured to send registration failure information to the test execution device when the test execution device and the scheduling server are not successfully associated.
The registration failure information is used for indicating that the test execution equipment is not successfully associated with the scheduling server.
In a possible implementation manner, the test execution device may prompt the operation object of the test execution device, and correspondingly, the test execution device is further configured to output failure prompt information based on registration failure information, where the failure prompt information is used to prompt that the operation object of the test execution device is not successfully associated with the scheduling server currently.
The operation object may be an object of the current operation test execution device; for example, the operation target is a technician who operates the test execution apparatus.
In the implementation mode, the test execution equipment can prompt the operation object through the failure prompt information when the test execution equipment is not successfully associated with the scheduling server, so that the operation object can timely find out that the test execution equipment fails to register, and then timely troubleshoots the reasons causing the unsuccessful association, thereby improving the troubleshooting efficiency.
In some embodiments, when the test execution device sends registration information to the scheduling server, that is, when applying for registration to the scheduling server, the test execution device also reports test capability information, and correspondingly, the registration information also includes test capability information of the test execution device; the scheduling server is also used for associating the test execution equipment with the test capability information;
and the scheduling server is also used for determining the test execution equipment related to the test capability information based on the test capability information required by the test task to be executed and distributing the test task to the test execution equipment.
Wherein the test capability information is used for representing the test capability of the test execution device. In this embodiment of the present application, for each test execution device, the test capability of the test execution device may be determined according to a test environment configured by the test execution device, which is not specifically limited in this application; for example, if the test environment configured by the test execution device is a core network for simulating a base station of a fifth Generation (5G) mobile communication technology, the test capability of the test execution device may be 5G mobile communication.
In the embodiment of the present application, the test capability of the scheduling system is composed of the test capability of each test execution device associated with the scheduling server.
In one possible implementation manner, the scheduling server may store the association relationship between the test execution device and the test capability information in the form of a test capability information table. For example, referring to table 1, the three fields in the test capability information table are: the test set identifier (test _ suite _ name), the device identifier list (test _ rack _ list), and the test case list (test _ suite _ case _ list).
Table 1 has six test set identifiers, which are: the test set identifier 1(test _ suite _1), the test set identifier 2(test _ suite _2), the test set identifier 3(test _ suite _3), the test set identifier 4(test _ suite _4), the test set identifier 5(test _ suite _5), and the test set identifier 6(test _ suite _ 6).
TABLE 1
The test set is a set of at least one test execution device associated with the same test capability, and correspondingly, the device identifier list is an identifier list of the at least one test execution device, and the test case list is a list of test cases supported by the at least one test execution device. For example, the test set identification may be a name of the test capability, and the device identification list may be a name of the test execution device.
The device identification lists corresponding to the test set identification 1 and the test set identification 2 are both empty fields, which indicate that no test execution device is associated with the test capability corresponding to the test set, that is, no test execution device supports the test capability in the current scheduling system; correspondingly, the test case lists corresponding to the test set identifier 1 and the test set identifier 2 are both empty fields.
The device identifier lists corresponding to the test set identifier 3, the test set identifier 4, the test set identifier 5 and the test set identifier 6 are respectively as follows: [ device (client) _6_6.6.6.101], [ device _6_6.6.6.102], [ device _6_6.6.6.103, device _6_6.6.6.104, device _6_6.6.6.105, device _6_6.6.6.101, device _6_6.6.6.102], [ device _6_6.6.6.103, device _6_6.6.6.104, device _6_6.6.6.105, device _6_6.6.6.101, device _6_6.6.6.102 ]; the test case lists corresponding to the test set identifier 3, the test set identifier 4, the test set identifier 5 and the test set identifier 6 are respectively as follows: [ example 1, example 2], [ example 3, example 4, example 5], [ example 6, example 7] and [ example 8, example 9 ].
For example, referring to fig. 4, which shows a flowchart of a process of adding a test capability according to an exemplary embodiment of the present application, a test execution device sends registration information including test capability information to a scheduling server; the dispatching server receives and analyzes the test capability information; and updating the testing capability information table according to the analyzed testing capability information.
For another example, if a test execution device "device _6_ 6.6.6.106" supporting the test capabilities corresponding to the test set identifier 1 and the test set identifier 5 is associated with the scheduling server, the scheduling server associates the test execution device with the test capability information reported by the test execution device, and then the changed test capability information table refers to table 2.
TABLE 2
The device identification list corresponding to the test set identification 1 is changed from an empty field to [ device _6_6.6.6.106], which indicates that a test execution device exists in the current scheduling system to support the test capability corresponding to the test set identification 1; and the device identification list corresponding to the test set identification 5 is added with 'device _6_ 6.6.6.106'; and because the test case supported by the test execution device "device _6_ 6.6.6.106" includes case 10, "case 10" is added to the test case lists corresponding to the test set identifier 1 and the test set identifier 5, respectively.
In this embodiment of the application, each test execution device is configured with a test environment, the test capabilities provided by different test environments may be different, and different test tasks may require different test capabilities, so that the scheduling server may distribute, to the test execution device, the test task to be executed that can be executed by the test capability in combination with the test capability of each test execution device.
In the embodiment of the application, the scheduling server can distribute a proper test task for the test execution device by associating the test execution device with the test capability information of the test execution device, so that the accuracy of task distribution is improved.
In the embodiment of the application, the logout information comprises configuration information of the test execution equipment; and the scheduling server is also used for deleting the configuration information of the test execution equipment from the database.
Wherein, the configuration information may include at least one item of information such as a device identifier or an IP address of the test execution device. In this embodiment, the logging-off information includes configuration information for the scheduling server to uniquely determine, based on the configuration information, configuration information of the test execution device to be logged-off from at least one piece of configuration information already stored in the database.
In the embodiment of the present application, since the configuration information stored in the database is used to indicate that the test execution device is associated with the scheduling server, if the configuration information of the test execution device is deleted from the database, it indicates that the scheduling server is disassociated from the test execution device.
In the embodiment, the scheduling server can be triggered to release the association relationship between the test execution device and the scheduling server only by sending the logout information to the scheduling server, so that the configuration file of the scheduling server does not need to be modified or the scheduling server does not need to be restarted, the operation steps are simplified, and the logout efficiency is improved.
In some embodiments, the scheduling server is further configured to send logout success information to the test execution device after the incidence relation between the test execution device and the scheduling server is released;
and the test execution equipment is also used for stopping monitoring the test task distributed by the scheduling server and monitoring the test task triggered by the target object based on the logout success information.
The logout success information is used for indicating that the test execution equipment and the scheduling server are successfully disassociated; after the incidence relation between the test execution device and the scheduling server is removed, the test environment configured by the test execution device is no longer exclusive test resource of the scheduling server, the scheduling server cannot distribute the test task to the test execution device, and correspondingly, the test execution device can stop monitoring the test task distributed by the scheduling server, so as to start the test task triggered by the monitoring target object.
In the embodiment of the application, the logout success information is sent to the test execution equipment, so that the test execution equipment can timely know that the test execution equipment is currently disassociated from the scheduling server, and preparation can be made for manual test.
For example, referring to fig. 5, which shows a flowchart of a logout process shown in an exemplary embodiment of the present application, a test execution device sends logout information to a scheduling server; the scheduling server receives and analyzes the logout information; and deleting the configuration information of the test execution equipment from the database, and returning logout success information.
In some embodiments, the scheduling server is further configured to, after the association relationship between the test execution device and the scheduling server is released, release the association relationship between the test execution device and the test capability information of the test execution device.
In a possible implementation manner, the association relationship between the test execution device and the test capability information of the test execution device is stored in a test capability information table, and correspondingly, the scheduling server is further configured to delete the device identifier of the test execution device from a device identifier list corresponding to the test capability indicated by the test capability information in the test capability information table.
In the embodiment of the application, the test execution device and the test capability information of the test execution device are disassociated, so that the test resource of the test execution device can be used by other objects except the scheduling server, thereby providing support for sharing of the test resource.
For example, referring to fig. 6, which shows a flowchart illustrating deleting a test capability according to an exemplary embodiment of the present application, a test execution device sends a logout message to a scheduling server; the scheduling server receives and analyzes the logout information; and deleting the equipment identification of the test execution equipment from the test capability information table to obtain an updated test capability information table.
In other embodiments, when the association relationship between the test execution device and the scheduling server is released, an unsuccessful release, that is, a release failure, may occur.
For example, if the test capability information table of the current scheduling system refers to table 2, the test execution device "device _6_ 6.6.6.106" supporting the test capabilities corresponding to the test set identifier 1 and the test set identifier 5 is disassociated from the scheduling server, and the changed test capability information table refers to table 1.
And the logout failure information is used for indicating that the association relationship between the test execution equipment and the scheduling server is not successfully released.
In a possible implementation manner, the test execution device may prompt the operation object of the test execution device, and correspondingly, the test execution device is further configured to output failure prompt information based on the logout failure information, where the failure prompt information is further configured to prompt that the operation object of the test execution device does not successfully release the association relationship between the test execution device and the scheduling server currently.
In some embodiments, a technician may change the test capability of the test execution device, and accordingly, the test execution device is further configured to obtain the changed test capability information and send capability update information to the scheduling server, where the capability update information includes the updated test capability information;
and the scheduling server is also used for updating the test capability information related to the test execution equipment into the changed test capability information.
In a possible implementation manner, the test capability of the test execution device is changed when the test execution device is not associated with the scheduling server, and accordingly, the capability update information may be registration information.
In this implementation manner, the test execution device may generate the changed test capability information after changing the test capability, and send the registration information to the scheduling server again, that is, apply for registration to the scheduling server again; correspondingly, the scheduling server associates the changed test capability information with the test execution device.
For example, referring to fig. 7, which shows a flowchart illustrating a method for changing testing capability according to an exemplary embodiment of the present application, a scheduling server logs off a test execution device through a log-off message sent by the test execution device; after the testing capability of the testing execution equipment is modified, the testing execution equipment acquires the modified testing capability information and sends registration information to the scheduling server, wherein the registration information comprises the modified testing capability information, and the scheduling server registers the testing execution equipment and updates a testing capability information table.
In another possible implementation manner, the test capability of the test execution device is changed when the test execution device is associated with the scheduling server, and accordingly, in this implementation manner, the scheduling server may update the stored test capability information associated with the test execution device to the changed test capability information.
In the embodiment of the application, the stored test capability information associated with the test execution equipment is updated in time after the test capability of the test execution equipment is changed, so that the test capability stored by the scheduling server is always the latest test capability, and the accuracy of the test capability of the scheduling system is improved.
In some embodiments, after associating the test execution device and the scheduling server, the scheduling server may distribute a test task to be executed to the test execution device, and correspondingly, the test execution device is further configured to receive the test task distributed by the scheduling server, execute the test task in a test environment, obtain a test result, and send the test result to the scheduling server;
and the scheduling server is also used for outputting the test result.
For any test task, if the test task is not executed, the scheduling server determines that the test state of the test task is not executed; if the test task is being executed by the test execution equipment, the scheduling server determines that the test state of the test task is being executed; and if the corresponding test result exists in the test task, the scheduling server determines that the test state of the test task is finished.
In the embodiment of the application, when the test execution device executes any test task, the test execution device can send the test result to the scheduling server, so that a technician can further process the test task through the test result output by the scheduling server.
In some embodiments, when the association relationship between the test execution device and the scheduling server is released, the test execution device may execute the test task, and the scheduling server may determine the test state of the test task in combination with the execution state of the test execution device, and correspondingly, the scheduling server is further configured to determine the execution state of the test execution device when the association relationship between the test execution device and the scheduling server is released; if the execution state is the executing test task, the test state of the executing test task is marked as unexecuted, so that the scheduling server schedules other test execution devices to execute the executing test task.
In the embodiment of the application, when the test execution device is logged off, the test state of the test task which is being executed by the test execution device is reset to be unexecuted, so that the test result of the test task is not influenced even if the test execution device is logged off, and the normal execution of the test task is further ensured.
In some embodiments, the test execution device is further configured to display a device management interface, where the device management interface displays a registration option and a logout option;
the test execution equipment is also used for responding to the triggering of the registration option and determining that a registration instruction is received; the test execution device is further used for responding to the triggering of the logout option and determining that a logout instruction is received.
The device management Interface may be a Graphical User Interface (GUI). The device management interface can display information such as device identification, IP address, test case list, device state, association state and the like. The device status may be any one of idle or busy, etc.; the association status may be either associated or unassociated.
For example, referring to fig. 8, the device id of the test execution device is device _1_6.6.6.101, the IP address is 6.6.6.101, and the supported multiple test cases are: in case 1, case 2, and case 3, the device status is busy, the association status is association, the operation options include a registration option and a logout option, the registration option may be a registration button (online), and the logout option may be a logout button (offline).
In this embodiment, the operation object of the test execution device may trigger a registration option or a logout option through the device management interface.
In the embodiment of the application, the information monitoring mechanism for registering and logging out the test execution device is established on the scheduling server, so that the association relationship between the test execution device and the scheduling server is triggered and established by each test execution device, namely the association relationship is changed according to the registration and logging out operations of the test execution device, and the association relationship is convenient to disassemble and assemble flexibly.
In some embodiments, the scheduling system further comprises: a management device;
the management equipment is respectively connected with the test execution equipment and the scheduling server through a network;
the management equipment is used for displaying a capability query interface, and query options are displayed on the capability query interface; responding to the triggering of the query option, determining that a query instruction is received, and sending capability query information to a scheduling server, wherein the capability query information carries any test capability information to be queried;
the scheduling server is also used for inquiring the test execution equipment related to the test capability information and sending the inquired equipment information of the test execution equipment to the management equipment;
and the management device is also used for displaying the inquired device information in the capability inquiry interface.
The query option may be a query button, which is not specifically limited in this application. The capability query interface is also provided with a query entrance, and correspondingly, the query entrance is used for inputting the test capability information to be queried. The management device is also used for responding to the triggering of the query selection, acquiring the test capability information to be queried input based on the query entrance, and generating the capability query information based on the test capability information.
It should be noted that, in some embodiments, the test execution device may directly communicate with the dispatch server, and accordingly, the test execution device is installed with a target application served by the dispatch server, and the test execution device can implement information interaction with the dispatch server through the target application.
Correspondingly, the test execution device is further configured to display the capability query interface, determine that a query instruction is received in response to a query option being triggered, send capability query information to the scheduling server, and display the queried device information in the capability query interface.
In the embodiment of the application, the testing capability of the scheduling system can be inquired through the management equipment, so that a technician can know the testing capability of the scheduling system, and the transparency of the testing capability is further improved.
In further embodiments, the test execution device may communicate with the dispatch server as a network (web) management platform by means of the management device. In this embodiment, the management device is provided with a target application served by the scheduling server, and the management device can realize information interaction with the scheduling server through the target application.
The number of the management devices in the scheduling system may be 1 or more, which is not specifically limited in this application. The management device may be connected to the plurality of test execution devices through a network when the number is 1, and each of the management devices may be connected to at least one of the test execution devices through a network when the number is plural. In the embodiment of the present application, a case where the number of management apparatuses is plural and 1 test execution apparatus is connected to each management apparatus is described as an example.
In this embodiment, the management device may be regarded as a client device (client) of the scheduling system, and the scheduling server may be regarded as a server device (server) of the scheduling system. Accordingly, the technician can perform capability query through the target application installed on the management device.
It should be noted that, when the test execution device is connected to the management device, the test execution device may also apply for registration or logout from the scheduling server through the management device; correspondingly, the management device is also used for displaying a device management interface, the device management interface displays the management options of the test execution device, and in response to the management options being triggered, the management device displays the registration options and the logout options of the test execution device on the device management interface.
The technician can trigger the registration option or the logout option through the management device, so as to trigger the test execution device to apply for registration or logout from the scheduling server.
In some embodiments, the management device is further configured to display a task management interface, where the task management interface displays task management options of the plurality of test tasks;
the task management options comprise filtering options, the management device is further used for responding to triggering of the filtering options, generating a filtering instruction, the filtering instruction carries filtering conditions, and filtering and displaying the plurality of test tasks based on the filtering conditions.
Wherein, the technical personnel can carry out the scheduling management of the test task through the management equipment. The filtering condition may be a generation time of the test task or a keyword of the task name, and the like, which is not specifically limited in this application. In this embodiment, a greater number of test tasks may be scheduled in the system, and the technician may be concerned with only a portion of the test tasks, so that the technician may trigger the filtering option.
For example, taking the filtering condition as the generation time of the test task as an example, referring to fig. 9, the device management interface displays the filtering options, the time selected by the technician is the start time 2021 year 4 month 19 day and the end time 2021 year 4 month 20 day, and the number of the test tasks displayed on the current interface may also be set, for example, the number is 2.
In the embodiment of the application, by setting the filtering function, technicians can conveniently search a part of currently concerned test tasks, so that the interface display effect is optimized, and the convenience of checking the test tasks is improved.
In a possible implementation manner, the task management interface may further display information such as a task identifier, a task name, an execution sequence (sequence), a type (type), a priority (priority), a created path (built path), a trace path (trace path), a list of related persons (spare person list), a test set (test suite), a selected test case list (selected case list), an executed time (time out), a test status (execute status), a test result (result), a creation time, a start time, a stop time, a device identifier, or an operation option (including an option of updating or stopping execution).
For example, taking test tasks as task 1 and task 2 as an example, and taking a task management interface to display a task identifier, a task name, an execution sequence, an executed time, a test state, a device identifier, and an operation option of the test task as an example for explanation, continuing with fig. 9, the task identifiers of task 1 and task 2 are A, B respectively, the task names are task 1 and task 2 respectively, the execution sequence is 1 and 2 respectively, the executed time is 1 hour and 0 respectively, the test state is testing and testing respectively, the device identifiers are device 1 and device 2 respectively, and the operation option is stop executing and updating respectively.
In some embodiments, the task management options further include an export option, and the management device is further configured to export test data for the test tasks in response to the export option for any of the test tasks being triggered.
In this embodiment, the technician may trigger the export option of any test task through the management device, thereby triggering the management device to jump to the storage location of the test task and export the test data of the test task. For example, the file type of the exported test data may be a table (excel) type.
In the embodiment of the application, by setting the export function, a technician can perform offline data analysis on the test data of the test task, so that the data analysis mode is enriched.
In some embodiments, the scheduling system is associated with a vulnerability (bug) management system;
the vulnerability management system is used for responding to submission of a version file aiming at any application program vulnerability, triggering a test task for testing the version file and sending the test task to the scheduling server;
and the scheduling server is used for triggering the test execution equipment to execute the test task, obtaining a test result and submitting the test result to the vulnerability management system.
After a technician submits a version file aiming at any application program bug through the bug management system, the bug management system can generate a corresponding test task.
In the embodiment of the application, the scheduling system and the vulnerability management system are associated, so that the vulnerability management system can trigger the test execution equipment to execute the test task through the scheduling system, a technician is not required to perform offline communication test, the labor cost is saved, the operation flow is simplified, and the test efficiency of the test task is improved.
In this embodiment, the vulnerability management system is further configured to update the test status of the application vulnerability based on the test result.
For the version file which is already tested, the vulnerability management system can update the testing state of the vulnerability from testing to testing completion after receiving the testing result. If the bug is not tested, the bug management system determines that the testing state of the bug is not tested. Correspondingly, the vulnerability management system is also used for sending the test task corresponding to the vulnerability of which the test state is not tested to the scheduling system.
In the embodiment of the application, by updating the test state of the vulnerability, technicians can conveniently check the current state of each vulnerability, so that the convenience of vulnerability checking is improved.
Those skilled in the art will recognize that, in one or more of the examples described above, the functions described in the embodiments of the present application may be implemented in hardware, software, firmware, or any combination thereof. When implemented in software, the functions may be stored on or transmitted over as one or more program codes or code on a computer-readable medium. Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage media may be any available media that can be accessed by a general purpose or special purpose computer.
The present application is intended to cover various modifications, alternatives, and equivalents, which may be included within the spirit and scope of the present application.