Solid state disk testing method and device, electronic equipment and storage medium

By building a centralized test management platform and automated script library on the test management platform, the problem of large and low efficiency of solid-state drive testing tasks in industrial production is solved, and an efficient and automated test process is realized, which improves production efficiency and reduces The cost.

CN119440925APending Publication Date: 2025-02-14INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411388973.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-30
Publication Date
2025-02-14

AI Technical Summary

Technical Problem

In industrial production, the testing tasks of solid-state drives are huge, relying entirely on manual testing and deployment is inefficient, labor-intensive and error-prone, and lacks automated and intelligent testing processes.

Method used

By building a centralized test management platform, establish communication connections with multiple servers configured with solid-state drives, intelligently match server performance status and test tasks, and use the automated distribution and execution of script libraries to ensure efficient and automatic execution of test tasks.

Benefits of technology

It greatly improves the efficiency and scalability of testing, ensures the reasonable allocation and optimal utilization of testing resources, reduces manual errors, improves production efficiency and reduces costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119440925A_ABST
    Figure CN119440925A_ABST
Patent Text Reader

Abstract

The invention provides a solid state disk test method and device, electronic equipment and a storage medium, which are applied to a first server, a test management platform is deployed in the first server, the first server establishes communication connection with at least one second server, and each second server is configured with at least one solid state disk. Each second server is used as a test node to be managed by a test management platform, and the method comprises the following steps: in response to a test task, determining a target second server matched with the test task based on the server performance state of the second server managed in the test management platform; and under the condition that the test task is not the solid state disk virtualization test task, calling a test case script matched with the test task from a script library of the test management platform, and distributing the test case script to the target second server to control the target second server to test the solid state disk. Therefore, an efficient and automatic test framework is formed, and the test efficiency and expandability are greatly improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of hardware testing, and in particular to a solid state hard disk testing method, device, electronic equipment and storage medium. Background Art

[0002] When testing an SSD (Solid State Drive), you usually need to focus on multiple test points to ensure its performance and stability. These test points include performance evaluation, long-term stability testing, TRIM command processing, TRIM formatting, normal and abnormal power on and off, diversified IO operation testing, module function verification, and functional cross-testing.

[0003] In the industrial production process, facing the above massive testing tasks, if we completely rely on manual testing deployment, it is not only inefficient, but also labor-intensive, time-consuming and error-prone. Therefore, automating and intelligentizing the testing process is crucial to improving production efficiency and reducing costs. Summary of the invention

[0004] The present invention provides a solid state hard disk testing method, device, electronic equipment and storage medium, which are used to solve the technical problems existing in the related technologies.

[0005] The present invention provides a solid state drive testing method, which is applied to a first server, wherein a test management platform is deployed in the first server and a communication connection is established with at least one second server, wherein each of the second servers is configured with at least one solid state drive, and each of the second servers is managed by the test management platform as a test node, and the method comprises: In response to the test task, determining a target second server matching the test task based on a server performance status of at least one second server managed in the test management platform; Determine whether the test task is a solid state drive virtualization test task; When the test task is not a solid-state drive virtualization test task, a test case script matching the test task is called from a script library of the test management platform, and the test case script is distributed to the target second server to control the target second server to perform a solid-state drive test.

[0006] According to a solid state hard disk testing method provided by the present invention, the method further includes: The test case script matching the solid-state drive virtualization test task is called from the script library of the test management platform, and the test case script matching the solid-state drive virtualization test task is distributed to the target second server to control the target second server to perform a solid-state drive virtualization test on the virtual solid-state drive created based on the solid-state drive on the virtual machine of the target second server.

[0007] In some embodiments, before calling the test case script matching the solid state drive virtualization test task from the script library of the test management platform, the method further includes: Calling an environment preprocessing script from a script library of the test management platform, and performing environment preprocessing on the target second server based on the environment preprocessing script; A virtual machine creation script is called from a script library of the test management platform, a virtual machine is created on the target second server based on the virtual machine creation script, and a virtual solid state hard disk created based on the solid state hard disk is mounted on the virtual machine.

[0008] According to a solid state drive testing method provided by the present invention, the testing task includes a solid state drive power-on and power-off testing task, and the method further includes: Call the test case script that matches the solid state drive power on and off test task from the script library of the test management platform; and distribute the test case script that matches the solid state drive power on and off test task to the target second server to control the target second server to perform power on and off test on the solid state drive.

[0009] According to a solid state drive testing method provided by the present invention, the test task includes at least one test subtask, and the method further includes: Parsing the test task to obtain at least one test subtask corresponding to the test task; Calling the test case scripts matching each of the test subtasks from the script library of the test management platform; Determining a current test resource capacity based on the number of the target second servers and the server status of each of the target second servers; When the current test resource capacity is not less than the capacity threshold and at least one of the test subtasks is independent of each other, the test case scripts matching at least one of the test subtasks are distributed to the plurality of target second servers respectively, so as to control the plurality of target second servers to jointly perform the solid state drive test; When the current test resource capacity is less than a capacity threshold, or when at least one of the test subtasks is not independent of each other, determining a test order between at least one of the test subtasks; Distribute the test case scripts matching at least one of the solid state drive power-on and power-off test subtasks to one of the target second servers in sequence according to the test sequence, so as to control the target second server to perform the solid state drive test in accordance with the test sequence.

[0010] According to a solid state hard disk testing method provided by the present invention, the method further includes: Calling a code download script from a script library of the test management platform, and downloading the firmware code of the solid state drive configured in the second server from a source code library based on the code download script; compiling the firmware code of the solid state drive into firmware that can be run in the second server, and transmitting the compiled firmware to the second server; and

[0011] When the firmware version of the solid state drive is updated, a firmware update script is called from the script library of the test management platform, and the firmware update script is sent to the second server to control the second server to perform firmware update.

[0012] According to a solid state hard disk testing method provided by the present invention, the method further includes: Call the disk identification script from the script library of the test management platform, and based on the disk identification script, check one by one whether the solid-state hard disks configured in at least one of the second servers can be normally identified, and if it is found that there are solid-state hard disks that cannot be normally identified, output corresponding prompt information.

[0013] According to a solid state hard disk testing method provided by the present invention, the method further includes: In response to a first input, extracting at least one test case script from the first input; Based on the test functions corresponding to the test case scripts, the tags matching the test case scripts are marked, so as to call the test case scripts matching the test tasks from the script library of the test management platform based on the tags.

[0014] The present invention also provides a solid state drive test device, which is applied to a first server, wherein a test management platform is deployed in the first server and a communication connection is established with at least one second server, wherein each of the second servers is configured with at least one solid state drive, and each of the second servers is managed by the test management platform as a test node, and the device comprises: A first testing module, configured to determine, in response to a test task, a target second server matching the test task based on a server performance status of at least one second server managed in the test management platform; A second test module, used to determine whether the test task is a solid state drive virtualization test task; The third test module is used to call the test case script matching the test task from the script library of the test management platform when the test task is not a solid-state drive virtualization test task, and distribute the test case script to the target second server to control the target second server to perform solid-state drive testing.

[0015] The present invention also provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, any of the above-mentioned solid state hard disk testing methods is implemented.

[0016] The present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the solid-state hard disk testing method described in any one of the above is implemented.

[0017] The present invention also provides a computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the solid state hard disk testing method described above is implemented.

[0018] The solid-state hard disk test method, device, electronic device and storage medium provided by the present invention, a test management platform is deployed in the first server, and a communication connection is established with at least one second server, wherein each second server is configured with at least one solid-state hard disk, and each second server is managed by the test management platform as a test node, specifically, the first server responds to the test task, and determines the target second server matching the test task based on the server performance status of at least one second server managed in the test management platform; then judges whether the test task is a solid-state hard disk virtualization test task, and when the test task is not a solid-state hard disk virtualization test task, calls the test case script matching the test task from the script library of the test management platform, and distributes the test case script to the target second server to control the target second server to perform solid-state hard disk testing. The solid-state hard disk test method proposed by the present invention forms an efficient and automated test framework by constructing a centralized test management platform and establishing a communication connection with multiple second servers configured with solid-state hard disks, which greatly improves the efficiency and scalability of the test. By intelligently matching the performance status of the second server with the test task, the reasonable allocation and optimal utilization of the test resources are ensured, and the automated distribution and execution of the script library are utilized to ensure the efficient and automatic execution of the test task. BRIEF DESCRIPTION OF THE DRAWINGS

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

[0020] Figure 1 It is a scenario schematic diagram of the solid state drive testing method provided by the present invention.

[0021] Figure 2 It is a flow chart of the solid state hard disk testing method provided by the present invention.

[0022] Figure 3 It is a structural schematic diagram of the solid state hard disk testing device provided by the present invention.

[0023] Figure 4 It is a structural schematic diagram of the electronic device provided by the present invention. DETAILED DESCRIPTION

[0024] In order to make the purpose, technical solution and advantages of the present invention clearer, the technical solution of the present invention will be clearly and completely described below in conjunction with the drawings of the present invention. 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.

[0025] It should be noted that in the description of the present invention, the terms "include", "comprise" or any other variant thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "include one..." do not exclude the existence of other identical elements in the process, method, article or device including the elements. The orientation or position relationship indicated by the terms "upper", "lower" and the like is based on the orientation or position relationship shown in the drawings, which is 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 a limitation 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 it can be an indirect connection through an intermediate medium, or it can be a connection between the two elements. For those skilled in the art, the specific meanings of the above terms in the present invention can be understood according to specific circumstances.

[0026] The terms "first", "second", etc. in the present invention are used to distinguish similar objects, and are not used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged under appropriate circumstances, so that the embodiments of the present invention can be implemented in an order other than those illustrated or described herein, and the objects distinguished by "first", "second", etc. are generally of the same type, and the number of objects is not limited. For example, the first object can be one or more. In addition, "and / or" means at least one of the connected objects, and the character " / " generally indicates that the objects associated with each other are in an "or" relationship.

[0027] Generally, during the production process, SSDs not only need to undergo multiple tests such as read and write tests, bad block tests, and stress tests on sample SSDs to verify the integrity of SSD functions, but also need to undergo power-on and power-off tests on large batches of hard disks. To verify the stability of the disk, SSDs need to undergo power-on and power-off tests on a batch basis.

[0028] From the perspective of testing, SSD power failure tests are divided into two categories: normal power failure and abnormal power failure. Normal power failure means that before the power failure, the host will send a "standby immediately" command to notify the SSD, and then the SSD will shut down normally according to the predetermined process. In this process, there is clear information exchange between the host and the SSD. Abnormal power failure means that the SSD does not receive any notification, and the power cord is directly disconnected, causing the SSD to suddenly lose power supply. In this case, there is no information exchange between the host and the SSD.

[0029] SR-IOV (Single Root I / O Virtualization) is an IO virtualization technology that aims to reduce platform resource overhead and improve hardware resource utilization. Through SR-IOV, a physical PCIe device can virtualize multiple virtual devices (Virtual Function, VF) and pass these virtual devices directly to each virtual machine. This method realizes the application scenario of a single physical PCIe device supporting multiple virtual machines, thereby improving the sharing efficiency of hardware resources and the overall performance of the system.

[0030] In virtualization and cloud computing scenarios, the combination of NVMe SSD (Non-Volatile Memory Express SolidState Drive) and SR-IOV technology can significantly improve the high performance of SSD. Specifically, by combining the underlying high-speed storage medium of NVMe SSD with the SR-IOV feature, multiple virtual machines can directly access physical hardware resources. This method not only reduces the CPU utilization of the host machine, but also gives full play to the high performance advantages of SSD.

[0031] However, SSDs with SR-IOV enabled also have higher requirements in terms of testing. Since SSDs need to support IO requests from multiple virtual machines at the same time and ensure data security and integrity in the event of abnormal power failures, a large number of testing tasks are required to verify their performance and stability.

[0032] In the industrial production process, facing the above massive testing tasks, if we completely rely on manual testing deployment, it is not only inefficient, but also labor-intensive, time-consuming and error-prone. Therefore, realizing the automation and intelligence of the testing process is also crucial to improving production efficiency and reducing costs.

[0033] Based on this, this embodiment proposes a solid-state hard drive testing method. The solid-state hard drive testing method provided in this embodiment can be executed by a first server, wherein the first server runs a test management platform deployed thereon. The test management platform can be a Jenkins platform. The Jenkins platform is an open source automation platform that is widely used in continuous integration and continuous delivery processes. It supports various programming languages ​​and tools, allowing software projects to be more conveniently automated, built, tested, and deployed.

[0034] Specifically, refer to Figure 1 In the first server 10 proposed in this embodiment, a test management platform 11 is deployed. The first server 10 establishes a communication connection with at least one second server 20. Each second server 20 is configured with at least one solid-state drive. The solid-state drive can enable the SRIOV function and create multiple VFs 21. The second server 20 enables multiple virtual machines 22, and each virtual machine 22 can mount multiple VFs 21. Each second server 20 can be directly managed by the test management platform 11 as a test node.

[0035] Figure 1 FIG. 1 is a flow chart of the solid state drive testing method provided in this embodiment. Figure 1 As shown, including but not limited to the following steps: Step 210, in response to the test task, based on the server performance status of at least one second server managed in the test management platform, determining a target second server matching the test task; Here, the server performance status refers to the status of various performance indicators and parameters of the server during operation, which reflects the performance of the server in terms of stability, response speed, and resource utilization, such as the server's CPU usage, memory usage, disk I / O performance, network connection status, and whether there are other high-priority tasks running on the server.

[0036] After receiving the test tasks submitted by the testers based on the test management platform, the test management platform first analyzes the performance status of all current second servers (CPU usage, memory usage, disk I / O performance, network connection status, and whether other high-priority tasks are running), and based on this real-time information, intelligently determines at least one target second server that can optimally execute the test tasks.

[0037] Furthermore, in order to meet different test requirements, the test management platform can flexibly allocate test tasks to different target second servers. Test tasks for long-term tests can be allocated to target second servers with better performance, while test tasks for short-term tests can be quickly completed on idle target second servers. This maximizes the use of test resources and improves test efficiency.

[0038] Specifically, after receiving the test task, the test management platform parses the test task to determine the task type of the test task. When it is a long-term and resource-intensive test task (such as testing the long-term stability of the SSD in a virtualized environment. The test will simulate multiple virtual machines accessing the same SSD at the same time to evaluate its performance and stability under high concurrent access and long-term operation), the test management platform selects one or more target second servers with better performance based on the performance and current load of the server. The target second server may be equipped with a high-performance CPU, sufficient memory, and a high-speed network connection to ensure that the performance of the SSD during the test will not be limited by the server performance bottleneck. When it is a short-term and low-resource test task (such as a verification test for a quick repair of an SSD driver), the test management platform will look for a target second server that is currently idle.

[0039] Step 220, determining whether the test task is a solid state drive virtualization test task; Step 230, when the test task is not a solid-state drive virtualization test task, call the test case script matching the test task from the script library of the test management platform, and distribute the test case script to the target second server to control the target second server to perform solid-state drive testing.

[0040] Here, the SSD virtualization test task is a test task for a virtual SSD of a SSD. As mentioned above, a physical PCIe device can virtualize multiple virtual devices, that is, the SSD in this embodiment can also create multiple virtual SSDs. Therefore, in addition to performing relevant tests on the SSD in this application, this application can also test the virtual SSD created based on the SSD.

[0041] Once the target second server is determined, the test management platform will first determine whether the test task is a SSD virtualization test task. If the test task is not a SSD virtualization test task but a test task for the SSD itself, the test case script that matches the test task will be called from its script library. These test case scripts are pre-written and contain test steps such as the specific steps required to execute the test, the preparation of test data, and the verification of test results.

[0042] After calling the test case scripts, the test management platform will distribute these test case scripts to at least one target second server, and the target second server will start to execute the test steps defined in the scripts.

[0043] In addition, the test management platform will monitor the test process and collect test data fed back by the target second server. These test data will be used to evaluate the performance and stability of the SSD and determine whether the test task is successfully completed. After the test is completed, the target second server will also send the test results to the test management platform. The test management platform will collect, organize and analyze these test results, generate a detailed test report and display it visually so that testers can easily view it.

[0044] The solid-state drive testing method provided by the embodiment of the present invention forms an efficient and automated testing framework by constructing a centralized test management platform and establishing communication connections with multiple second servers equipped with solid-state drives, thereby greatly improving the efficiency and scalability of the test. By intelligently matching the performance status of the second server with the test task, the reasonable allocation and optimal utilization of the test resources are ensured, and the automated distribution and execution of the script library are utilized to ensure the efficient and automatic execution of the test task.

[0045] In some embodiments, the method further comprises: In the case where the test task is a solid-state drive virtualization test task, a test case script matching the solid-state drive virtualization test task is called from the script library of the test management platform, and the test case script matching the solid-state drive virtualization test task is distributed to the target second server to control the target second server to perform a solid-state drive virtualization test on the virtual solid-state drive created based on the solid-state drive on the virtual machine of the target second server.

[0046] When a SSD virtualization test task needs to be executed, the test management platform will first search for a test case script that matches this test task from its script library. These test case scripts define the specific steps and conditions required to execute virtualization tests, including but not limited to read and write speed tests, concurrent access tests, and data persistence tests on virtual SSDs.

[0047] Once a matching test case script is found, the test management platform will distribute these test case scripts to at least one target second server. After the test case script is distributed to the target second server, the test steps defined in the test case script will be executed on the virtual solid-state hard disk of the solid-state hard disk in the virtual machine of the target second server.

[0048] It should be noted here that the virtual machine of the target second server and the virtual solid-state hard disk of the solid-state hard disk in the target second server can be pre-created on the target second server manually, or they can be created based on a pre-configured script after the solid-state hard disk virtualization test is performed on the specified target second server. There is no restriction on this.

[0049] In addition, during the process of executing the solid-state drive virtualization test on the target second server, the test management platform will collect test data fed back by various target second servers and perform test data analysis to evaluate the performance of the virtual SSD in the virtualization environment, including its performance, reliability, compatibility, etc. In addition, the test data and analysis results can be visualized in one interface so that testers can easily view them.

[0050] The solid-state drive testing method provided by the embodiment of the present invention greatly improves the efficiency of the solid-state drive virtualization testing through the above method.

[0051] In some embodiments, before calling the test case script matching the solid state drive virtualization test task from the script library of the test management platform, the method further includes: Calling an environment preprocessing script from a script library of the test management platform, and performing environment preprocessing on the target second server based on the environment preprocessing script; A virtual machine creation script is called from a script library of the test management platform, a virtual machine is created on the target second server based on the virtual machine creation script, and a virtual solid state hard disk created based on the solid state hard disk is added to the virtual machine.

[0052] Here, the environment preprocessing script is responsible for the environment preparation before the test, such as checking the test server status, configuring the network, installing necessary software, etc. Specifically, the environment preprocessing script will check whether the CPU, memory, network and other hardware resources of each target second server meet the test requirements, and install the virtual machine manager and necessary test tools.

[0053] Here, the virtual machine creation script can create multiple virtual machines on the target second server and mount a virtual solid-state drive for each virtual machine. Specifically, the virtual machine creation script specifies the configuration of the virtual machine (such as the number of CPUs, memory size, network settings, etc.), and then creates multiple virtual machine instances on the target second server. Each virtual machine will mount a certain number of virtual solid-state drives to simulate a real SSD test environment.

[0054] In this embodiment, the environment preprocessing script and the virtual machine creation script can be pre-configured in the script library of the test management platform, so that there is no need for manual configuration in each second server in advance. Only when the target second server is designated to perform solid-state hard disk virtualization testing, automatic processing is performed by calling the corresponding scripts from the script library of the test management platform, thereby further reducing manual test deployment and improving the efficiency of solid-state hard disk virtualization testing.

[0055] In some embodiments, the test task includes a solid state drive power-on and power-off test task, and the method further includes: Call the test case script that matches the solid state drive power on and off test task from the script library of the test management platform; and distribute the test case script that matches the solid state drive power on and off test task to the target second server to control the target second server to perform power on and off test on the solid state drive.

[0056] When it is necessary to perform power-on and power-off tests on SSDs, the test management platform will first search for test case scripts that match this test task from its script library. These test case scripts may include instructions to power on the SSD, perform a series of operations to verify its operating status, and then power off, and may also include instructions to cycle this process multiple times to check the stability and durability of the SSD.

[0057] Once matching test case scripts are found, the test management platform will distribute these test case scripts to at least one target second server. After the test case scripts are distributed to the target second server, the target second server will start executing the test steps defined in the test case script.

[0058] In addition, during the power-on and power-off tests on the target second server, the test management platform will collect various test data fed back by the target second server, such as response time, error logs, performance indicators, etc., and visualize them in an interface so that testers can easily view and analyze these test results.

[0059] The solid-state hard disk testing method provided by the embodiment of the present invention greatly improves the efficiency of the solid-state hard disk power-on and power-off testing through the above method.

[0060] In some embodiments, the test task includes at least one test subtask, and the method further includes: Parsing the test task to obtain at least one test subtask corresponding to the test task; Calling the test case scripts matching each of the test subtasks from the script library of the test management platform; Determining a current test resource capacity based on the number of the target second servers and the server status of each of the target second servers; When the current test resource capacity is not less than the capacity threshold and at least one of the test subtasks is independent of each other, the test case scripts matching at least one of the test subtasks are distributed to the plurality of target second servers respectively, so as to control the plurality of target second servers to jointly perform the solid state drive test; When the current test resource capacity is less than a capacity threshold, or when at least one of the test subtasks is not independent of each other, determining a test order between at least one of the test subtasks; Distribute the test case scripts matching at least one of the solid state drive power-on and power-off test subtasks to one of the target second servers in sequence according to the test sequence, so as to control the target second server to perform the solid state drive test in accordance with the test sequence.

[0061] It is understandable that a test task may include multiple test subtasks, each of which tests different aspects of the solid-state drive (such as read and write speed, durability, compatibility, etc.) In this embodiment, the input test task is first parsed to identify and separate at least one test subtask it contains.

[0062] Then, for each test subtask, the test management platform calls the test case scripts that match these test subtasks from its built-in script library.

[0063] Furthermore, in order to ensure that there are sufficient resources to perform the test tasks and avoid resource overload, the test management platform uses a preset test resource capacity algorithm to determine the current test resource capacity according to the number of target second servers and their current status (such as load status, remaining resource status).

[0064] If the current test resource capacity is not less than the set capacity threshold, and at least one test subtask is independent of each other (i.e. they do not share resources and do not depend on the execution results of other test subtasks), the test management platform will distribute the test case scripts matching each independent test subtask to multiple target second servers. In this way, multiple servers can execute different test subtasks at the same time, thereby accelerating the testing process.

[0065] If the current test resource capacity is less than the capacity threshold, or at least one of the test subtasks is not independent of each other (i.e. they need to share resources or depend on the execution results of other test subtasks), the test management platform will determine the test order between these subtasks. Then, according to the determined test order, the test case scripts matching each test subtask are distributed to one of the target second servers in turn, and the target second server executes the test in order. This ensures that the test can be carried out in an orderly and accurate manner even when resources are limited or there are dependencies between test subtasks.

[0066] To make it easier to understand, here is an example: For example, there are currently two target second servers (Server A and Server B) available for testing. Server A is currently idle, with low CPU and memory utilization, good disk I / O performance, and no other high-load tasks running. Server B is executing other test tasks, with high CPU and memory utilization, but there are still remaining resources available for additional testing.

[0067] Next, the test management platform will determine a quantified current test resource capacity through weighted calculation based on the number of target second servers and the server status of each target second server (such as the number of CPU cores, CPU and memory utilization, and disk I / O speed).

[0068] Finally, the test task allocation strategy is determined based on the current test resource capacity and the independence between test subtasks.

[0069] For example, when conducting power-on and power-off tests, multiple test subtasks are usually included, such as power timing test, power stability test, power failure protection test, data integrity verification test, performance and function test, reliability test and compatibility test. Among them, power timing test, power stability test, performance and function test, reliability test and compatibility test are not dependent on the results or environment of other tests, and are relatively independent test subtasks, while power failure protection test and data integrity verification test are interdependent and are not relatively independent test subtasks.

[0070] Therefore, when the current test resource capacity is not less than the capacity threshold, and the current test subtask is at least one of the power timing test, power stability test, performance and function test, reliability test, and compatibility test, these test subtasks can be respectively distributed to Server A and Server B. When the current test resource capacity is less than the capacity threshold, or the current test subtask includes a power-off protection test and a data integrity verification test, these test subtasks are distributed to Server A or Server B in sequence according to the test order.

[0071] The solid-state drive testing method provided by the embodiment of the present invention can flexibly cope with different test tasks and resource constraints by comprehensively considering the current test resource capacity and the independence between test subtasks, thereby ensuring that the test tasks can be completed efficiently and orderly.

[0072] In some embodiments, the method further comprises: Calling a code download script from a script library of the test management platform, and downloading the firmware code of the solid state drive configured in the second server from a source code library based on the code download script; compiling the firmware code of the solid state drive into firmware that can be run in the second server, and transmitting the compiled firmware to the second server; and

[0073] When the firmware version of the solid state drive is updated, a firmware update script is called from the script library of the test management platform, and the firmware update script is sent to the second server to control the second server to perform firmware update.

[0074] Specifically, the test management platform determines the version and location of the firmware code of the solid-state drive that needs to be downloaded based on the pre-set firmware hard disk configuration information of the second server. Then, the code download script is retrieved and called from the script library. Here, the purpose of the code download script is to connect to the source code library and download the firmware code related to the solid-state drive configured in the second server. The code download script usually contains necessary information such as credentials for connecting to the source code library (such as user name and password), warehouse address, branch or tag.

[0075] It is understandable that the firmware code downloaded to the test management platform is usually in the form of source code, so in this embodiment, an appropriate compiler will also be used to compile the downloaded firmware code of the solid-state drive into firmware that can be run in the second server according to the compilation instructions and dependencies. After that, the compiled firmware is subjected to code checks, such as static code analysis, dynamic code analysis, unit testing, integration testing, etc., to verify the correctness, stability and security of the firmware. If any problems are found (such as compilation errors, code defects, etc.), they need to be repaired and recompiled and checked until the firmware meets all requirements.

[0076] After completing the above steps, the compiled firmware is transferred to the second server, such as through a file transfer protocol such as SCP, SFTP, FTP, or through a custom API interface, for further testing.

[0077] Furthermore, when the firmware version of the solid-state drive is updated, the firmware update script is called from the script library of the test management platform. The test management platform sends the firmware update script to the second server and triggers its execution through SSH, remote API call, etc.

[0078] The solid-state drive testing method provided by the embodiment of the present invention can easily manage the firmware update process of batch solid-state drives through a test management platform and ensure that they always run on the latest firmware version.

[0079] In some embodiments, the method further comprises: Call the disk identification script from the script library of the test management platform, and based on the disk identification script, check one by one whether the solid-state hard disks configured in at least one of the second servers can be normally identified, and if it is found that there are solid-state hard disks that cannot be normally identified, output corresponding prompt information.

[0080] In this embodiment, the disk identification script is also called from the script library of the test management platform to check the solid-state hard disks in each designated second server one by one. Specifically, the disk identification script detects whether the solid-state hard disk connected to the second server can be detected. For example, whether the connection identifier of the solid-state hard disk is detected in the device list of the second server. Furthermore, the device manager or disk management tool in the second server is also driven to check the current status of the solid-state hard disk to determine whether the solid-state hard disk is in normal working condition. When the connection identifier of the solid-state hard disk can be detected in the device list of the second server, and the solid-state hard disk is in normal working condition, it is determined whether the solid-state hard disk configured in the second server can be normally identified.

[0081] Furthermore, if the disk identification script finds that a certain SSD cannot be identified normally during the inspection process, it will output corresponding prompt information according to the preset logic, such as the serial number of the SSD, the information of the server where it is located, and the specific reason for the failure to identify (such as missing driver, hardware failure), etc., to remind the management personnel to conduct timely inspections and ensure the execution of subsequent automated tests.

[0082] The solid-state drive testing method provided in the embodiment of the present invention realizes automatic checking of the identification status of the solid-state drive in the above manner, and can timely discover and solve potential problems, thereby avoiding the impact of subsequent automatic testing due to hardware failure or configuration error.

[0083] In some embodiments, the method further comprises: In response to a first input, extracting at least one test case script from the first input; Based on the test functions corresponding to the test case scripts, the use case tags matching the test case scripts are marked, so as to call the test case scripts matching the test tasks from the script library of the test management platform based on the use case tags.

[0084] Here, the first input may be a request initiated by a user, or a file imported by a user, etc., and there is no limitation to this.

[0085] In this embodiment, the test management platform extracts test case scripts from the first input. These test case scripts are pre-written code segments used to automate testing of specific functions. After extracting the test case scripts, the test management platform will also assign corresponding tags to the test case scripts according to their specific test functions (power on and off tests, performance tests, etc.). These tags are used to further describe and classify the test case scripts for subsequent screening and searching. When a test task needs to be executed, the test management platform will filter and call matching test case scripts from the script library by tags according to the requirements of the test task to ensure the accuracy and efficiency of automated testing.

[0086] The solid state drive testing method provided by the embodiment of the present invention ensures the accuracy and efficiency of automated testing by labeling test case scripts.

[0087] The solid-state hard disk test device provided in this embodiment is described below. The solid-state hard disk test device provided in this embodiment is applied to a first server, in which a test management platform is deployed, and a communication connection is established with at least one second server, wherein each of the second servers is configured with at least one solid-state hard disk, and each of the second servers is managed by the test management platform as a test node. The risk call identification device described below and the risk call identification method described above can be referred to each other.

[0088] Figure 3 is a schematic diagram of the structure of the solid state drive testing device provided in this embodiment, such as Figure 3 As shown, including but not limited to the following modules: A first testing module 310, configured to determine, in response to a test task, a target second server matching the test task based on a server performance status of at least one second server managed in the test management platform; A second test module 320, used to determine whether the test task is a solid state drive virtualization test task; The second test module 330 is used to call the test case script matching the test task from the script library of the test management platform when the test task is not a solid-state drive virtualization test task, and distribute the test case script to the target second server to control the target second server to perform solid-state drive testing.

[0089] The solid-state drive test device provided by the embodiment of the present invention forms an efficient and automated test framework by constructing a centralized test management platform and establishing communication connections with multiple second servers equipped with solid-state drives, thereby greatly improving the efficiency and scalability of the test. By intelligently matching the performance status of the second server with the test task, the reasonable allocation and optimal utilization of the test resources are ensured, and the automated distribution and execution of the script library are utilized to ensure the efficient and automatic execution of the test task.

[0090] It should be noted that the solid state drive testing device provided by the present invention can execute the solid state drive testing method of any of the above embodiments during specific operation, which will not be elaborated in this embodiment.

[0091] Figure 4 is a schematic diagram of the structure of the electronic device provided by the present invention, such as Figure 4 As shown, the electronic device may include: a processor 410, a communication interface 420, a memory 430 and a communication bus 440, wherein the processor 410, the communication interface 420 and the memory 430 complete mutual communication through the communication bus 440. The processor 410 may call the logic instructions in the memory 430 to execute the solid state drive test method, the method comprising: in response to the test task, based on the server performance status of at least one of the second servers managed in the test management platform, determining the target second server matching the test task; judging whether the test task is a solid state drive virtualization test task; if the test task is not a solid state drive virtualization test task, calling the test case script matching the test task from the script library of the test management platform, and distributing the test case script to the target second server, so as to control the target second server to perform the solid state drive test.

[0092] In addition, the logic instructions in the above-mentioned memory 430 can be implemented in the form of a software functional unit and can be stored in a computer-readable storage medium when it is sold or used as an independent product. Based on such an understanding, the technical solution of the present invention, in essence, 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, and the computer software product is stored in a storage medium, including a number of 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 of various embodiments 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. Various media that can store program codes.

[0093] On the other hand, the present invention also provides a computer program product, which includes a computer program stored on a non-transitory computer-readable storage medium, and the computer program includes program instructions. When the program instructions are executed by a computer, the computer can execute the solid-state hard disk testing method provided by the above-mentioned embodiments, and the method includes: in response to a test task, based on the server performance status of at least one second server managed in the test management platform, determining a target second server matching the test task; judging whether the test task is a solid-state hard disk virtualization test task; if the test task is not a solid-state hard disk virtualization test task, calling a test case script matching the test task from a script library of the test management platform, and distributing the test case script to the target second server to control the target second server to perform a solid-state hard disk test.

[0094] On the other hand, the present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, is implemented to execute the solid-state hard disk testing method provided in the above-mentioned embodiments, the method comprising: in response to a test task, determining a target second server matching the test task based on the server performance status of at least one second server managed in the test management platform; judging whether the test task is a solid-state hard disk virtualization test task; if the test task is not a solid-state hard disk virtualization test task, calling a test case script matching the test task from a script library of the test management platform, and distributing the test case script to the target second server to control the target second server to perform a solid-state hard disk test.

[0095] The device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, i.e., they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. Those of ordinary skill in the art may understand and implement it without creative effort.

[0096] Through the description of the above implementation modes, those skilled in the art can clearly understand that each implementation mode can be implemented by means of software plus a necessary general hardware platform, or of course by hardware. Based on such an understanding, the above technical solution can essentially or in other words be embodied in the form of a software product that contributes to the prior art. The computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a magnetic disk, an optical disk, etc., and includes a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods of each embodiment or some parts of the embodiment.

[0097] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A solid state hard disk testing method, characterized in that: Applied to a first server, a test management platform is deployed in the first server, and a communication connection is established with at least one second server, wherein each of the second servers is configured with at least one solid-state hard disk, and each of the second servers is managed by the test management platform as a test node, the method comprising: In response to the test task, determining a target second server matching the test task based on a server performance status of at least one second server managed in the test management platform; Determine whether the test task is a solid state drive virtualization test task; When the test task is not a solid-state drive virtualization test task, a test case script matching the test task is called from a script library of the test management platform, and the test case script is distributed to the target second server to control the target second server to perform a solid-state drive test.

2. The solid state drive testing method according to claim 1, characterized in that: The method further comprises: In the case where the test task is a solid-state drive virtualization test task, a test case script matching the solid-state drive virtualization test task is called from the script library of the test management platform, and the test case script matching the solid-state drive virtualization test task is distributed to the target second server to control the target second server to perform a solid-state drive virtualization test on the virtual solid-state drive created based on the solid-state drive on the virtual machine of the target second server.

3. The solid state drive testing method according to claim 2, characterized in that: Before calling the test case script matching the solid state drive virtualization test task from the script library of the test management platform, the method further includes: Calling an environment preprocessing script from a script library of the test management platform, and performing environment preprocessing on the target second server based on the environment preprocessing script; A virtual machine creation script is called from a script library of the test management platform, a virtual machine is created on the target second server based on the virtual machine creation script, and a virtual solid state hard disk created based on the solid state hard disk is mounted on the virtual machine.

4. The solid state drive testing method according to claim 1, characterized in that: The test task includes a solid state drive power-on and power-off test task, and the method further includes: Call the test case script that matches the solid state drive power on and off test task from the script library of the test management platform; and distribute the test case script that matches the solid state drive power on and off test task to the target second server to control the target second server to perform power on and off test on the solid state drive.

5. The solid state drive testing method according to claim 1, characterized in that: The test task includes at least one test subtask, and the method further includes: Parsing the test task to obtain at least one test subtask corresponding to the test task; Calling the test case scripts matching each of the test subtasks from the script library of the test management platform; Determining a current test resource capacity based on the number of the target second servers and the server performance status of each of the target second servers; When the current test resource capacity is not less than the capacity threshold and at least one of the test subtasks is independent of each other, the test case scripts matching at least one of the test subtasks are distributed to the plurality of target second servers respectively, so as to control the plurality of target second servers to jointly perform the solid state drive test; When the current test resource capacity is less than a capacity threshold, or when at least one of the test subtasks is not independent of each other, determining a test order between at least one of the test subtasks; Distribute the test case scripts matching at least one of the solid state drive power-on and power-off test subtasks to one of the target second servers in sequence according to the test sequence, so as to control the target second server to perform the solid state drive test in accordance with the test sequence.

6. The solid state drive testing method according to claim 1, characterized in that: The method further comprises: Calling a code download script from a script library of the test management platform, and downloading the firmware code of the solid state drive configured in the second server from a source code library based on the code download script; compiling the firmware code of the solid state drive into firmware that can be run in the second server, and transmitting the compiled firmware to the second server; and When the firmware version of the solid state drive is updated, a firmware update script is called from the script library of the test management platform, and the firmware update script is sent to the second server to control the second server to perform firmware update.

7. The solid state drive testing method according to claim 1, characterized in that: The method further comprises: Call the disk identification script from the script library of the test management platform, and based on the disk identification script, check one by one whether the solid-state hard disks configured in at least one of the second servers can be normally identified, and if it is found that there are solid-state hard disks that cannot be normally identified, output corresponding prompt information.

8. The solid state drive testing method according to claim 1, characterized in that: The method further comprises: In response to a first input, extracting at least one test case script from the first input; Based on the test functions corresponding to the test case scripts, the tags matching the test case scripts are marked, so as to call the test case scripts matching the test tasks from the script library of the test management platform based on the tags.

9. A solid state hard disk testing device, characterized in that: Applied to a first server, a test management platform is deployed in the first server, and a communication connection is established with at least one second server, wherein each of the second servers is configured with at least one solid-state hard disk, and each of the second servers is managed by the test management platform as a test node, the device comprises: A first testing module, configured to determine, in response to a test task, a target second server matching the test task based on a server performance status of at least one second server managed in the test management platform; A second test module, used to determine whether the test task is a solid state drive virtualization test task; The third test module is used to call the test case script matching the test task from the script library of the test management platform when the test task is not a solid-state drive virtualization test task, and distribute the test case script to the target second server to control the target second server to perform solid-state drive testing.

10. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the computer program, the solid state drive testing method according to any one of claims 1 to 8 is implemented.

11. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the solid state drive testing method according to any one of claims 1 to 8 is implemented.