SSD automatic environment distribution test method and system

Through the SSD automated environment distribution test methods and systems, the problems of inefficient, insufficient coverage and inconsistent results of traditional SSD testing methods are solved, and efficient, comprehensive and reliable testing is achieved.

CN119883890APending Publication Date: 2025-04-25SHENZHEN CITY TECHWIN SEMICONDUCTOR COMPANY LIMITED
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411828681.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-12
Publication Date
2025-04-25

AI Technical Summary

Technical Problem

Traditional SSD testing methods rely on manual operations, resulting in inefficient testing, insufficient test coverage, insufficient resource utilization and lack of consistency in test results.

Method used

Provides SSD automation environment distribution test methods and systems, and realizes automated testing by obtaining task configuration files, parsing and obtaining test task parameters, creating test case queues, calculating thread pool size, allocating threads and executing test cases, and generating visual reports.

Benefits of technology

It improves the comprehensiveness of testing efficiency and test coverage, optimizes resource utilization, and ensures the consistency and reliability of test results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119883890A_ABST
    Figure CN119883890A_ABST
Patent Text Reader

Abstract

The invention provides an SSD automatic environment distribution test method and system, and the method comprises the steps: obtaining a task configuration file, analyzing the task configuration file, and obtaining a test task parameter; wherein the test task parameters comprise the maximum concurrency number; acquiring a corresponding test environment according to a test environment list in the task configuration file; obtaining all test cases; creating a test case queue according to the priority level and the execution sequence of each test case; calculating the size of a thread pool according to the maximum concurrency number and the number of the test environments; distributing a corresponding number of threads in the system according to the size of the thread pool, and enabling each thread to take out a to-be-executed test case from the test case queue according to a set rule; testing the to-be-executed test case to generate a visual report; test efficiency and test coverage comprehensiveness are improved, resource utilization is optimized, and consistency and reliability of test results are determined.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of storage testing, and in particular to a SSD automated environment distribution testing method and system. Background Art

[0002] In storage technology, SSD has been widely used in data centers and high-performance computing fields due to its excellent high-speed reading and writing capabilities and low latency characteristics. However, traditional SSD testing methods mostly rely on manual operations and have the following problems:

[0003] First, the testing efficiency is quite low. Manually distributing the test environment and executing test cases is time-consuming and prone to errors.

[0004] Secondly, the test coverage is insufficient. It is difficult to deal with numerous test cases and complex test environment configurations at the same time, and it is impossible to achieve comprehensive coverage.

[0005] Furthermore, resource utilization is not sufficient. Manual testing makes it difficult to achieve parallel testing in multiple environments, resulting in a large amount of test resources being idle and wasted.

[0006] Finally, the test results lack consistency. Due to the interference of human factors, the repeatability of the test results is poor. Summary of the invention

[0007] In view of this, the purpose of the present invention is to provide an SSD automated environment distribution test method and system to improve test efficiency and comprehensiveness of test coverage, optimize resource utilization, and determine the consistency and reliability of test results.

[0008] In a first aspect, an embodiment of the present invention provides an SSD automated environment distribution test method, the method comprising:

[0009] Get the task configuration file.

[0010] Parsing the task configuration file to obtain test task parameters; wherein the test task parameters include the maximum number of concurrent connections;

[0011] Acquire the corresponding test environment according to the test environment list in the task configuration file;

[0012] Get all test cases;

[0013] Creating a test case queue according to the priority level and execution order of each of the test cases;

[0014] Calculate the size of the thread pool according to the maximum number of concurrent connections and the number of test environments;

[0015] Allocating a corresponding number of threads in the system according to the size of the thread pool, so that each of the threads takes out the test cases to be executed from the test case queue according to the set rules;

[0016] The test cases to be executed are tested and a visual report is generated.

[0017] Further, according to the priority level and execution order of each of the test cases, a test case queue is created, including:

[0018] Determine the priority level of each test case according to the importance of the function, the risk level and the scope of the failure impact;

[0019] Determine the execution order of each of the test cases according to the set conditions and the sequential dependencies;

[0020] Setting a first weight value for a test case with a high priority level;

[0021] Setting a second weight value for a test case with a low priority level; wherein the first weight value is greater than the second weight value;

[0022] Placing the test cases with high priority levels at the front end of the test case queue, and sorting the test cases according to a directed acyclic graph or a linked list;

[0023] If there are multiple test cases with the same priority and no dependency, they are sorted according to preset rules to obtain the test case queue.

[0024] Furthermore, the method further comprises:

[0025] The status of the test cases is monitored and updated, and when the condition of any of the test cases changes, the test case queue is dynamically adjusted.

[0026] Further, the test cases to be executed are tested to generate a visual report, including:

[0027] Testing the test case to be executed to obtain a test result;

[0028] Using a machine learning-assisted anomaly detection algorithm to collect detailed performance indicators during the SSD test from the test results;

[0029] Combining the detailed performance indicators with an intelligent result analysis engine, using data mining techniques to identify patterns and trends in the test results, thereby generating an analysis report;

[0030] The analysis report is used to generate the visualization report.

[0031] Further, the attribute information of the test environment includes: the disk shape of the SSD to be tested, the model of the SSD main control chip, the CPU model of the host to which the SSD is mounted, the hard disk serial number, the IP address of the host to which the SSD is mounted, the SSH password, the SSH port, the SSH user name, the test instrument of the host, the interface type, the operating system of the host, the purpose of the host and the RAID card model of the host;

[0032] The test task parameters also include test batch, whether resources are locked upon failure, initiator, execution order and task name.

[0033] Furthermore, the method further comprises:

[0034] If the thread does not take out the test case to be executed from the test case queue within a set time and the thread is in an idle state, the thread is abandoned.

[0035] Furthermore, the method further comprises:

[0036] Monitor the working status, execution efficiency and resource consumption of each thread in real time to obtain monitoring results;

[0037] According to the monitoring result, the size and parameters of the thread pool are dynamically adjusted.

[0038] In a second aspect, an embodiment of the present invention provides an SSD automated environment distribution test system, the system comprising:

[0039] The task configuration file acquisition module is used to obtain the task configuration file.

[0040] A parsing module, used to parse the task configuration file to obtain test task parameters; wherein the test task parameters include the maximum number of concurrent connections;

[0041] A test environment acquisition module, used to acquire the corresponding test environment according to the test environment list in the task configuration file;

[0042] Test case acquisition module, used to obtain all test cases;

[0043] A creation module, used to create a test case queue according to the priority level and execution order of each of the test cases;

[0044] A calculation module, used for calculating the size of the thread pool according to the maximum concurrency number and the number of test environments;

[0045] An allocation module, used to allocate a corresponding number of threads in the system according to the size of the thread pool, so that each of the threads takes out the test cases to be executed from the test case queue according to the set rules;

[0046] The test module is used to test the test cases to be executed and generate a visual report.

[0047] In a third aspect, an embodiment of the present invention provides an electronic device, including a memory and a processor, wherein the memory stores a computer program executable on the processor, and the processor implements the method described above when executing the computer program.

[0048] In a fourth aspect, an embodiment of the present invention provides a computer-readable medium having a non-volatile program code executable by a processor, wherein the program code enables the processor to execute the method as described above.

[0049] The embodiment of the present invention provides an SSD automated environment distribution test method and system, including: obtaining a task configuration file, parsing the task configuration file, and obtaining test task parameters; wherein the test task parameters include a maximum concurrency number; obtaining a corresponding test environment according to a test environment list in the task configuration file; obtaining all test cases; creating a test case queue according to the priority level and execution order of each test case; calculating the size of a thread pool according to the maximum concurrency number and the number of test environments; allocating a corresponding number of threads in the system according to the size of the thread pool, so that each thread takes out a test case to be executed from the test case queue according to a set rule; testing the test case to be executed and generating a visual report; improving test efficiency and the comprehensiveness of test coverage, optimizing resource utilization, and determining the consistency and reliability of test results.

[0050] Other features and advantages of the present invention will be described in the following description, and partly become apparent from the description, or understood by practicing the present invention. The purpose and other advantages of the present invention are realized and obtained by the structures particularly pointed out in the description, claims and drawings.

[0051] In order to make the above-mentioned objects, features and advantages of the present invention more obvious and easy to understand, preferred embodiments are given below and described in detail with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0052] In order to more clearly illustrate the specific implementation methods of the present invention or the technical solutions in the prior art, the drawings required for use in the specific implementation methods or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some implementation methods of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0053] Figure 1 A flow chart of the SSD automated environment distribution test method provided in the first embodiment of the present invention;

[0054] Figure 2 A flowchart of step S105 in the SSD automated environment distribution test method provided in the first embodiment of the present invention;

[0055] Figure 3 A schematic diagram of an SSD automated environment distribution test system provided in Embodiment 2 of the present invention. DETAILED DESCRIPTION

[0056] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution of the present invention will be clearly and completely described below in conjunction with the accompanying drawings. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0057] To facilitate understanding of this embodiment, the embodiment of the present invention is described in detail below.

[0058] Embodiment 1:

[0059] Figure 1 This is a flow chart of the SSD automated environment distribution test method provided in the first embodiment of the present invention.

[0060] Reference Figure 1 , the method comprises the following steps:

[0061] Step S101, obtaining a task configuration file; wherein the task configuration file may be a job.yaml file;

[0062] Step S102, parsing the task configuration file to obtain test task parameters; wherein the test task parameters include the maximum number of concurrent connections;

[0063] Specifically, the test task parameters also include the test batch, whether the resource is locked upon failure, the initiator, the execution order, and the task name.

[0064] After parsing the task configuration file, the test task parameters are obtained; in terms of system initialization, the task configuration file is deeply parsed to accurately set the test task parameters. This is in sharp contrast to the vague initialization settings in the existing technology, and can provide clear and accurate guidance for the subsequent test process.

[0065] Step S103, obtaining the corresponding test environment according to the test environment list in the task configuration file;

[0066] Step S104, obtaining all test cases;

[0067] Step S105, creating a test case queue according to the priority level and execution order of each test case;

[0068] Specifically, a test case queue is created, and a test case queue is constructed according to the priority level and execution order of the test cases. Different from the disordered test case processing in the prior art, this method realizes the intelligent scheduling and orderly execution of the test cases.

[0069] Step S106, calculating the size of the thread pool according to the maximum number of concurrent connections and the number of test environments;

[0070] Step S107, allocating a corresponding number of threads in the system according to the size of the thread pool, so that each thread takes out the test case to be executed from the test case queue according to the set rules;

[0071] Step S108: testing the test case to be executed and generating a visual report.

[0072] Specifically, test cases are executed in parallel in multiple test environments, which improves the test throughput. Visual reports are automatically generated after the test is completed, which facilitates the analysis and sharing of test results.

[0073] The SSD automated environment distribution test method provided by the present application shows significant differences in comparison with the prior art, and achieves objective improvement effects through these differences. Traditional SSD testing methods usually rely on manual distribution of test environments and execution of test cases, which is cumbersome, inefficient and error-prone.

[0074] Further, see Figure 2 , step S105 comprises the following steps:

[0075] Step S201, determining the priority level of each test case according to the importance of the function, the risk level and the impact scope of the fault;

[0076] Step S202, determining the execution order of each test case according to the set conditions and the sequential dependency relationship;

[0077] Step S203, setting a first weight value for a test case with a high priority level;

[0078] Step S204, setting a second weight value for the test case with a low priority level; wherein the first weight value is greater than the second weight value;

[0079] Step S205, placing the test cases with high priority levels at the front of the test case queue, and sorting the test cases according to the directed acyclic graph or linked list;

[0080] Step S206: If there are multiple test cases with the same priority and no dependency, they are sorted according to preset rules to obtain a test case queue.

[0081] Specifically, first, conduct a comprehensive analysis and classification of all test cases. Determine the priority level of each test case, which may be based on factors such as the importance of the function, the degree of risk, the scope of the fault impact, etc. At the same time, clarify the execution order requirements of each test case, for example, some test cases must be executed after certain conditions are met, or there is a sequential dependency between some test cases.

[0082] Next, a specific algorithm is used to sort the test cases. For the determination of priority, a numerical weight can be set, and a high-priority test case will receive a higher weight value. The execution order is represented by establishing a data structure such as a directed acyclic graph or a linked list.

[0083] When creating a queue, put high-priority test cases at the front of the queue first. For test cases with execution order dependencies, arrange them in order according to the dependencies. If there are multiple test cases with the same priority and no dependencies, they can be sorted according to preset rules, such as random or by creation time.

[0084] Furthermore, the method further comprises:

[0085] Step S301 , monitor and update the status of the test cases, and dynamically adjust the test case queue when the condition of any test case changes.

[0086] Specifically, the status of the test cases is constantly monitored and updated throughout the process. If the condition of any test case changes, causing its priority or execution order to change, the test case queue is dynamically adjusted in a timely manner.

[0087] At the same time, in order to ensure the rationality and effectiveness of the queue, a regular inspection and optimization mechanism is set up. The executed test cases are reviewed and analyzed, and the priority and execution order of the subsequent unexecuted test cases are re-evaluated and adjusted based on the execution results and feedback to ensure that the entire test case queue can always efficiently and accurately support the testing work.

[0088] Further, step S108 includes the following steps:

[0089] Step S401, testing the test case to be executed and obtaining the test result;

[0090] Step S402, using a machine learning-assisted anomaly detection algorithm to collect detailed performance indicators during the SSD test from the test results; wherein the detailed performance indicators include IOPS, throughput, latency, and multi-dimensional data such as temperature and power consumption;

[0091] Step S403, combining the detailed performance indicators with the intelligent result analysis engine, using data mining technology to identify patterns and trends in the test results, thereby generating an analysis report;

[0092] Step S404: generating the visualization report from the analysis report.

[0093] Specifically, the visual report supports interactive visual display, and users can explore the test results in depth by clicking, filtering, and zooming in. It integrates 3D graphics and heat maps to intuitively display the performance distribution and hot spots of the SSD.

[0094] The interactive visual report display results are generated based on advanced data collection technology (machine learning-assisted anomaly detection algorithm) and intelligent result analysis engine. This changes the single and unintuitive way of presenting results in the existing technology, facilitates more in-depth analysis and sharing, and solves the shortcomings of the existing technology such as single test result data, poor interactivity, and limitations on users' in-depth analysis.

[0095] Furthermore, the attribute information of the test environment includes: the disk form of the SSD to be tested, the model of the SSD main control chip, the CPU model of the host to which the SSD is mounted, the hard disk serial number, the IP address of the host to which the SSD is mounted, the SSH password, the SSH port, the SSH user name, the test instrument of the host, the interface type, the operating system of the host, the purpose of the host and the RAID card model of the host;

[0096] Specifically, the attribute information of the test environment includes:

[0097] controller_form_factor: the form of the SSD to be tested. For example, 0 represents ASIC form and 1 represents FPGA form.

[0098] controller_model: the model of the SSD main control chip;

[0099] cpu_model: CPU model of the host to which the SSD is mounted;

[0100] disk_sn: hard disk serial number, which identifies the unique number of the SSD;

[0101] host_ip: IP address of the host to which the SSD is mounted, used for remote connection and control;

[0102] host_ssh_passwd: SSH password;

[0103] host_ssh_port: SSH port;

[0104] host_ssh_user: SSH username;

[0105] instrumentation: the test instruments possessed by the host;

[0106] interface_type: interface type, identifies the interface type used by the SSD;

[0107] os: operating system of the host;

[0108] purpose: the purpose of the host, which can be used to distinguish the type of business that the environment mainly runs;

[0109] raid_card: host RAID card model.

[0110] During the test environment preparation phase, the test environment list specified in the task configuration file is strictly followed for preparation. Compared with the random or irregular environment preparation in the prior art, this application ensures the accuracy and adaptability of the environment, laying a solid foundation for the smooth progress of the test.

[0111] Furthermore, the method further comprises the following steps:

[0112] Step S501: If the thread does not take out the test case to be executed from the test case queue within the set time and the thread is in an idle state, the thread is abandoned.

[0113] Furthermore, the method further comprises the following steps:

[0114] Step S601, monitor the working status, execution efficiency and resource consumption of each thread in real time to obtain monitoring results;

[0115] Step S602: dynamically adjust the size and parameters of the thread pool according to the monitoring results.

[0116] Specifically, according to the maximum number of concurrent runs and the number of test environments, a thread pool is dynamically calculated and created. Each thread is responsible for taking out the test cases to be executed from the test case queue and executing them in the corresponding test environment.

[0117] First, get the maximum concurrency and the number of test environments. The maximum concurrency represents the upper limit of the number of test tasks that can be performed at the same time, and the number of test environments represents the number of independent test environments available.

[0118] Then, compare the maximum number of concurrent requests with the number of test environments, select the minimum value, and use the minimum value as the initial size of the thread pool. This is to ensure that the number of threads created does not exceed the system's ability to handle simultaneously or the number of available test environments.

[0119] Secondly, create a thread pool object and allocate the corresponding number of threads in the system according to the calculated thread pool size.

[0120] Each thread is given the authority and responsibility to obtain test cases from the test case queue. The thread will take out the test cases to be executed from the test case queue according to certain rules (such as first-in-first-out).

[0121] When creating a thread pool, some parameters are also set, such as the idle timeout of the thread. If a thread does not obtain a test case within the specified time and is idle, it will be recycled (discarded) to save system resources.

[0122] At the same time, a thread monitoring mechanism is established. The working status, execution efficiency and resource consumption of each thread are monitored in real time. According to the monitoring results, the size and parameters of the thread pool are dynamically adjusted to ensure that the thread pool is always in the optimal working state. The number of threads is dynamically adjusted according to the needs of the test task to achieve the optimal allocation of test resources.

[0123] During the distributed parallel test execution process, the thread pool is dynamically calculated and created according to the maximum number of concurrent tests and the number of test environments. The existing technology often uses a fixed thread configuration, which cannot flexibly adapt to different test requirements. The dynamic thread pool of this application can optimize resource allocation according to actual conditions and greatly improve test efficiency.

[0124] Embodiment 2:

[0125] Figure 3 A schematic diagram of an SSD automated environment distribution test system provided in Embodiment 2 of the present invention.

[0126] Reference Figure 3 The system comprises:

[0127] The task configuration file acquisition module is used to obtain the task configuration file.

[0128] A parsing module is used to parse the task configuration file to obtain test task parameters; wherein the test task parameters include the maximum number of concurrent connections;

[0129] The test environment acquisition module is used to obtain the corresponding test environment according to the test environment list in the task configuration file;

[0130] Test case acquisition module, used to obtain all test cases;

[0131] Create a module for creating a test case queue based on the priority level and execution order of each test case;

[0132] The calculation module is used to calculate the size of the thread pool according to the maximum concurrency and the number of test environments;

[0133] The allocation module is used to allocate a corresponding number of threads in the system according to the size of the thread pool, so that each thread takes out the test case to be executed from the test case queue according to the set rules;

[0134] The test module is used to test the test cases to be executed and generate visual reports.

[0135] Compared with the prior art, this application has the following advantages:

[0136] First, the test efficiency is significantly improved. Dynamic thread pool management and parallel execution greatly reduce the time required for testing.

[0137] Secondly, the comprehensiveness of test coverage is enhanced. It can handle a large number of complex test cases and diverse test environment configurations at the same time, avoiding omissions and negligence.

[0138] Furthermore, resource utilization is optimized. Thread resources are dynamically allocated according to actual needs to avoid waste and idleness of resources. When the execution of automated use cases fails, the test environment can be locked according to the strategy to reserve for failure location.

[0139] Finally, the consistency and reliability of the test results are ensured, the interference of human factors is reduced, and the repeatability and accuracy of the results are improved.

[0140] An embodiment of the present invention also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, the steps of the SSD automated environment distribution test method provided in the above embodiment are implemented.

[0141] An embodiment of the present invention further provides a computer-readable medium having a non-volatile program code executable by a processor, wherein a computer program is stored on the computer-readable medium, and when the computer program is executed by the processor, the steps of the SSD automated environment distribution test method of the above embodiment are executed.

[0142] The computer program product provided in the embodiment of the present invention includes a computer-readable storage medium storing program code. The instructions included in the program code can be used to execute the method described in the previous method embodiment. The specific implementation can be found in the method embodiment and will not be repeated here.

[0143] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process of the system and device described above can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.

[0144] In addition, in the description of the embodiments of the present invention, unless otherwise clearly specified and limited, the terms "installed", "connected", and "connected" should be understood in a broad sense, for example, it can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection or an electrical connection; it can be a direct connection or an indirect connection through an intermediate medium, or it can be the internal communication of two components. For ordinary technicians in this field, the specific meanings of the above terms in the present invention can be understood according to specific circumstances.

[0145] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium, including several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk, etc., which can store program codes.

[0146] In the description of the present invention, it should be noted that the terms "center", "upper", "lower", "left", "right", "vertical", "horizontal", "inner", "outer", etc., indicating the orientation or positional relationship, are based on the orientation or positional relationship shown in the drawings, and are only for the convenience of describing the present invention and simplifying the description, rather than indicating or implying that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and therefore cannot be understood as limiting the present invention. In addition, the terms "first", "second", and "third" are used for descriptive purposes only, and cannot be understood as indicating or implying relative importance.

[0147] Finally, it should be noted that the above-described embodiments are only specific implementations of the present invention, which are used to illustrate the technical solutions of the present invention, rather than to limit them. The protection scope of the present invention is not limited thereto. Although the present invention is described in detail with reference to the above-described embodiments, ordinary technicians in the field should understand that any technician familiar with the technical field can still modify the technical solutions recorded in the above-described embodiments within the technical scope disclosed by the present invention, or can easily think of changes, or make equivalent replacements for some of the technical features therein; and these modifications, changes or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present invention, and should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention shall be based on the protection scope of the claims.

Claims

1. A SSD automated environment distribution test method, characterized in that: The method comprises: Get the task configuration file. Parsing the task configuration file to obtain test task parameters; wherein the test task parameters include the maximum number of concurrent connections; Acquire the corresponding test environment according to the test environment list in the task configuration file; Get all test cases; Creating a test case queue according to the priority level and execution order of each of the test cases; Calculate the size of the thread pool according to the maximum number of concurrent connections and the number of test environments; Allocating a corresponding number of threads in the system according to the size of the thread pool, so that each of the threads takes out the test cases to be executed from the test case queue according to the set rules; The test cases to be executed are tested and a visual report is generated.

2. The SSD automated environment distribution test method according to claim 1, characterized in that: Create a test case queue based on the priority level and execution order of each of the test cases, including: Determine the priority level of each test case according to the importance of the function, the risk level and the scope of the failure impact; Determine the execution order of each of the test cases according to the set conditions and the sequential dependencies; Setting a first weight value for a test case with a high priority level; Setting a second weight value for a test case with a low priority level; wherein the first weight value is greater than the second weight value; Placing the test cases with high priority levels at the front end of the test case queue, and sorting the test cases according to a directed acyclic graph or a linked list; If there are multiple test cases with the same priority and no dependency, they are sorted according to preset rules to obtain the test case queue.

3. The SSD automated environment distribution test method according to claim 2, characterized in that: The method further comprises: The status of the test cases is monitored and updated, and when the condition of any of the test cases changes, the test case queue is dynamically adjusted.

4. The SSD automated environment distribution test method according to claim 1, characterized in that: Test the test cases to be executed and generate a visual report, including: Testing the test case to be executed to obtain a test result; Using a machine learning-assisted anomaly detection algorithm to collect detailed performance indicators during the SSD test from the test results; Combining the detailed performance indicators with an intelligent result analysis engine, using data mining techniques to identify patterns and trends in the test results, thereby generating an analysis report; The analysis report is used to generate the visualization report.

5. The SSD automated environment distribution test method according to claim 1, characterized in that: The attribute information of the test environment includes: the disk form of the SSD to be tested, the model of the SSD main control chip, the CPU model of the host to which the SSD is mounted, the hard disk serial number, the IP address of the host to which the SSD is mounted, the SSH password, the SSH port, the SSH user name, the test instrument of the host, the interface type, the operating system of the host, the purpose of the host and the RAID card model of the host; The test task parameters also include test batch, whether resources are locked upon failure, initiator, execution order and task name.

6. The SSD automated environment distribution test method according to claim 1, characterized in that: The method further comprises: If the thread does not take out the test case to be executed from the test case queue within a set time and the thread is in an idle state, the thread is abandoned.

7. The SSD automated environment distribution test method according to claim 1, characterized in that: The method further comprises: Monitor the working status, execution efficiency and resource consumption of each thread in real time to obtain monitoring results; According to the monitoring result, the size and parameters of the thread pool are dynamically adjusted.

8. An SSD automated environment distribution test system, characterized in that: The system comprises: The task configuration file acquisition module is used to obtain the task configuration file. A parsing module, used to parse the task configuration file to obtain test task parameters; wherein the test task parameters include the maximum number of concurrent connections; A test environment acquisition module, used to acquire the corresponding test environment according to the test environment list in the task configuration file; Test case acquisition module, used to obtain all test cases; A creation module, used to create a test case queue according to the priority level and execution order of each of the test cases; A calculation module, used for calculating the size of the thread pool according to the maximum concurrency number and the number of the test environments; An allocation module, used for allocating a corresponding number of threads in the system according to the size of the thread pool, so that each of the threads takes out the test cases to be executed from the test case queue according to the set rules; The test module is used to test the test cases to be executed and generate a visual report.

9. An electronic device comprising a memory and a processor, wherein the memory stores a computer program that can be run on the processor, wherein: When the processor executes the computer program, the method according to any one of claims 1 to 6 is implemented.

10. A computer readable medium having a non-volatile program code executable by a processor, characterized in that: The program code enables the processor to execute the method according to any one of claims 1 to 6.