Distribution network design software test method and system based on CAD platform, and storage medium
By constructing an automated testing framework on the CAD platform and using intelligent agents, asynchronous multi -protocol transmission systems and deep learning computer vision technology, the problem of time -consuming resources of the existing distribution network design software testing method has been solved, and efficient and accurate automation is achieved. test.
Patent Information
- Application Number
- CN202411864077.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-18
- Publication Date
- 2025-01-21
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
The existing distribution network design software testing methods consume a lot of time and resources, and the results of manual testing are not reliable, making it difficult to fully cover 100% of the software's functions.
Based on the CAD platform, the Pytest is used to build an automated testing framework. It uses intelligent proxy to dynamically capture test operations, and use asynchronous multi -protocol transmission systems and deep learning computer visual identification and interactive network design software interface elements to achieve automated testing.
A comprehensive coverage of the software function of the distribution network design, improve the test efficiency and accuracy, reduce the time and resource consumption of manual testing, and improve the efficiency of problem tracking and processing.
Smart Images

Figure CN119336649A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of information processing, and in particular to a distribution network design software testing method, system and storage medium based on a CAD platform. Background Art
[0002] Distribution network design software is mainly used for the design, drawing, material statistics and cost calculation of distribution network projects. The distribution network design software is based on the CAD design platform and is built by absorbing power design standards and rapid design methods. It integrates graphics drawing, report statistics, pole type optimization, design safety verification, and project cost calculation. It can effectively assist designers to complete the design work of distribution network projects in a standardized and efficient manner.
[0003] After multiple iterations and optimizations, about 80% of the functions of the current distribution network design software have reached a very stable state. However, although each update iteration is mainly focused on optimizing the existing functions, which only account for 10%, the updated test scope still needs to cover 100% of the functions of the entire software; currently, conventional distribution network design software testing is mainly carried out by testers according to test tasks; due to the large number of test project scenarios and complex data, the testing process requires a lot of time and resources; in addition, due to the subjective differences in testers' experience and judgment, the reliability of manual test results is not high, and the accuracy of evaluating distribution network design software is not high. Summary of the invention
[0004] Based on this, the purpose of the present invention is to provide a distribution network design software testing method, system, and storage medium based on a CAD platform to solve the technical problems existing in the prior art.
[0005] The present invention proposes a distribution network design software testing method based on a CAD platform, comprising: Build an automated testing framework based on pytest, distribute and add test tasks in the automated testing framework, and configure the current execution environment based on the test tasks; Dynamically capture and analyze the test operations of executing the test tasks through an intelligent agent to obtain abnormal data in the test and report the abnormal data to an error management system; Adopting an asynchronous multi-protocol transmission system and combining the asynchronous multi-protocol transmission system with a communication protocol to obtain a parallel control mechanism for multi-protocol cross-process data interaction; Based on deep learning and computer vision, the interface elements in the distribution network design software are identified during the test operation, and interactive operations are performed according to the parallel control mechanism to complete the test of the distribution network design software; The step of constructing an automated testing framework according to pytest and distributing and adding test tasks in the automated testing framework includes: Build an automated testing framework based on pytest, and encapsulate the automated testing framework into a test environment based on distributed virtual containerization to obtain several independent container images; Deploy the same test environment image on different computing nodes in the automated test framework, and add the test tasks to the RabbitMQ task queue accordingly; Based on the distributed task scheduling engine in the RabbitMQ task queue, test tasks are dynamically selected from the RabbitMQ task queue and distributed to different computing nodes according to resource conditions.
[0006] Preferably, the step of dynamically capturing and analyzing the test operation of executing the test task by an intelligent agent to obtain abnormal data in the test and reporting the abnormal data to an error management system includes: Embedding the event hook in the intelligent agent into the test operation and the corresponding resource management module so that the intelligent agent can capture the process data in the test operation in real time; Perform feature distribution on process data in the test operation by means of unsupervised learning, analyze the feature-distributed process data based on a rule engine, and identify abnormal data in the process data; An error model library is constructed, the abnormal data is imported into the error model library, the abnormal data is classified based on association rules, and the classified abnormal data is reported to the ZenTao management system.
[0007] Preferably, the step of adopting an asynchronous multi-protocol transmission system and combining the asynchronous multi-protocol transmission system with a communication protocol comprises: Calling the event loop and asynchronous I / O driver architecture in the asynchronous multi-protocol transmission system; Obtaining task requirements in the test task, and dynamically selecting a communication protocol according to the task requirements, wherein the communication protocol includes at least an XML-RPC protocol and a ZeroMQ protocol; Selecting an architecture task manager in the driver architecture, and allocating the task requirements to different asynchronous channels and executing them through the architecture task manager; The resource usage of each computing node in executing the test operation is monitored in real time, and the test tasks of different computing nodes are allocated through the architecture task manager based on the load balancing algorithm.
[0008] Preferably, the step of identifying interface elements in the distribution network design software during the test operation based on deep learning and computer vision, and performing interactive operations according to the parallel control mechanism includes: Taking screenshots of various pages and views in the CAD interface based on different viewing angles, different scales, and different resolutions to cover the scenes and elements when the distribution network design software is working; Mark the bounding boxes of CAD entities and their label categories in the captured images, adjust and enhance the screenshots to improve the robustness of each screenshot and ensure the size and format of each screenshot is consistent; Pre-training and transfer learning are performed on the convolutional neural network model so that the convolutional neural network model can recognize the annotated CAD primitives; The CAD interface image is input into the learned convolutional neural network model, the coordinate position and category information of each CAD primitive are output, and the model interacts with the mouse operation.
[0009] Preferably, the step of inputting the CAD interface image into the learned convolutional neural network model, outputting the coordinate position and category information of each CAD primitive, and interacting with the mouse operation comprises: The CAD interface image is divided into a training set and a test set, the training set is input into the convolutional neural network model, and the convolutional neural network model is evaluated and adjusted based on the F1 score so that the recognition result of the convolutional neural network model meets expectations; Inputting the test set into the adjusted convolutional neural network model, removing redundant bounding boxes of CAD primitives based on non-maximum suppression, performing edge detection and shape analysis based on computer vision, and identifying CAD primitives; The coordinate position of each CAD primitive is determined through OpenCV, and the mouse operation is simulated according to the coordinate position of the identified CAD primitive, so that the distribution network design software can be controlled by the mouse to perform CAD primitive transformation.
[0010] Preferably, the step of performing edge detection and shape analysis based on computer vision to identify CAD primitives comprises: The CAD interface is divided into a plurality of graphic element data blocks, and based on a parallel computing framework, the divided graphic element data blocks are distributed to corresponding recognition nodes, so that each recognition node performs a recognition task independently; Extracting the multidimensional attributes of the image data block respectively through a plurality of feature extraction units in the parallel computing framework, and converting the extracted multidimensional attributes into a multidimensional feature vector; Each of the recognition nodes performs edge and shape recognition on the multidimensional feature vector on the recognition node, and merges the recognition results at the central recognition node; The CAD primitives cached in the memory are verified for accuracy based on the consistency check algorithm, and the CAD primitives in the memory are annotated and optimized based on the topological relationship so that the identified CAD primitives meet the requirements.
[0011] Preferably, the step of performing edge and shape recognition on the multidimensional feature vector on each of the identification nodes comprises: Dynamically adjusting the recognition threshold of the convolutional neural network model during the recognition process according to the CAD primitive label type and shape feature identified by the multidimensional feature vector to reduce misclassification of the CAD primitive; Monitoring the recognition and classification results of the CAD primitives, and performing feature feedback according to the recognition and classification results of the CAD primitives to adjust model parameters of the convolutional neural network model; Distributed cache is introduced to cache the recognized CAD primitives into the memory of computing nodes based on the discontinuity of distributed storage.
[0012] The present invention also proposes a distribution network design software testing system based on a CAD platform, comprising: A construction module is used to build an automated test framework based on pytest, distribute and add test tasks in the automated test framework, and configure the current execution environment according to the test tasks; A capture module is used to dynamically capture and analyze the test operations of executing the test task through an intelligent agent to obtain abnormal data in the test and report the abnormal data to an error management system; A combining module, used to adopt an asynchronous multi-protocol transmission system, and combine the asynchronous multi-protocol transmission system with a communication protocol to obtain a parallel control mechanism for multi-protocol cross-process data interaction; An identification module, for identifying interface elements in the distribution network design software during the test operation based on deep learning and computer vision, and performing interactive operations according to the parallel control mechanism to complete the test of the distribution network design software; The step of constructing an automated testing framework according to pytest and distributing and adding test tasks in the automated testing framework includes: Build an automated testing framework based on pytest, and encapsulate the automated testing framework into a test environment based on distributed virtual containerization to obtain several independent container images; Deploy the same test environment image on different computing nodes in the automated test framework, and add the test tasks to the RabbitMQ task queue accordingly; Based on the distributed task scheduling engine in the RabbitMQ task queue, test tasks are dynamically selected from the RabbitMQ task queue and distributed to different computing nodes according to resource conditions.
[0013] The present invention also provides a storage medium on which a computer program is stored, and when the program is executed by a processor, the above-mentioned distribution network design software testing method based on the CAD platform is implemented.
[0014] The present invention also provides a computer, which includes a memory, a processor, and a computer program stored on the memory and executable on the processor. When the processor executes the computer program, the above-mentioned method for testing the distribution network design software based on the CAD platform is implemented.
[0015] The beneficial effects of the present invention compared with the prior art are as follows: An automated test framework is constructed according to pytest, test tasks are distributed and added in the automated test framework, the current execution environment is configured according to the test tasks, and through the implementation of the pytest framework and automated test cases, the system can ensure comprehensive coverage of the functions of the distribution network design software, including stable and basic functions; The test operations for executing test tasks are dynamically captured and behaviorally analyzed through an intelligent agent to obtain abnormal data during the test and report the abnormal data to the error management system; Automatically submit Bug and error logs to the ZenTao Bug management system, improving the efficiency of problem tracking and handling, and ensuring that problems found during the test can be quickly reported and resolved; An asynchronous multi-protocol transmission system is adopted, and the asynchronous multi-protocol transmission system is combined with communication protocols to obtain a parallel control mechanism for multi-protocol cross-process data interaction; Through the parallel execution mechanism driven by asynchronous events, it is ensured that in high-concurrency scenarios, inter-process communication can maintain low latency and high efficiency, realizing stable cross-process control and data transmission, and being able to quickly and reliably manage and test the background services and data structures of the distribution network design software, improving the stability and accuracy of the test; Based on deep learning and computer vision, the interface elements in the distribution network design software during test operations are recognized, and interaction operations are performed according to the parallel control mechanism to complete the test of the distribution network design software; The automated interaction operations based on deep learning and computer vision can efficiently execute operations such as primitive positioning, drawing, and moving, accurately identify and extract the attributes of business primitives and CAD primitives in the distribution network design software, ensuring that the test covers all key business elements, improving the efficiency and accuracy of the graphical interface test, and being suitable for large-scale promotion.
[0016] The additional aspects and advantages of the present invention will be partially given in the following description, partially become obvious from the following description, or be understood through the practice of the present invention. Description of the Drawings
[0017] Figure 1 It is a flowchart of the method for testing the distribution network design software based on the CAD platform in Embodiment 1 of the present invention; Figure 2 It is a structural block diagram of the computer in Embodiment 4 of the present invention.
[0018] The following specific embodiments will further illustrate the present invention in conjunction with the above-mentioned drawings. Specific Embodiments
[0019] In order to facilitate the understanding of the present invention, the present invention will be described more fully below with reference to the relevant drawings. Several embodiments of the present invention are given in the drawings. However, the present invention can be implemented in many different forms and is not limited to the embodiments described herein. On the contrary, the purpose of providing these embodiments is to make the disclosure of the present invention more thorough and comprehensive.
[0020] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art to which the present invention belongs. The terms used herein in the specification of the present invention are only for the purpose of describing specific embodiments and are not intended to limit the present invention. The term "and / or" used herein includes any and all combinations of one or more of the related listed items.
[0021] Embodiment 1 See also Figure 1 , which shows a distribution network design software testing method based on a CAD platform in a first embodiment of the present invention, and the distribution network design software testing method based on a CAD platform specifically includes steps S10 to S40: S10, building an automated testing framework based on pytest, adding test tasks in the automated testing framework, and configuring the current execution environment according to the test tasks; The step of constructing an automated testing framework according to pytest and distributing and adding test tasks in the automated testing framework includes: Build an automated testing framework based on pytest, and encapsulate the automated testing framework into a test environment based on distributed virtual containerization to obtain several independent container images; Deploy the same test environment image on different computing nodes in the automated test framework, and add the test tasks to the RabbitMQ task queue accordingly; Based on the distributed task scheduling engine in the RabbitMQ task queue, test tasks are dynamically selected from the RabbitMQ task queue and distributed to different computing nodes according to resource conditions.
[0022] In the specific implementation, engineers built an automated testing framework based on the traditional pytest to write test cases. Pytest refers to the unit testing framework, which is a third-party unit testing framework for Python. It is efficient and compatible. The containerization technology can use the Docker application container engine; RabbitMQ is an open source message queue service software. Based on the distributed task scheduling engine in the RabbitMQ task queue, tasks can be dynamically taken out of the queue and distributed to different computing nodes for operation according to resource conditions, thereby expanding the distributed task scheduling and dynamic resource allocation capabilities, so that automated test tasks can be executed on distributed systems across nodes. Task distribution and resource scheduling are automatically performed by an efficient task scheduling engine to ensure that the execution of test cases in different physical nodes or virtual environments can maintain consistency and stability. The test framework can automatically adapt to the current execution environment according to the test task, and perform parallel processing of test tasks according to the dynamic changes of system resources, ensuring that the functions in the distribution network design software are fully covered and tested, and improving the execution efficiency in large-scale test scenarios.
[0023] S20, dynamically capturing and analyzing the test operations of executing the test task through an intelligent agent to obtain abnormal data in the test and report the abnormal data to an error management system; Optionally, the step of dynamically capturing and analyzing the test operation of executing the test task by an intelligent agent to obtain abnormal data in the test and reporting the abnormal data to an error management system includes: Embedding the event hook in the intelligent agent into the test operation and the corresponding resource management module so that the intelligent agent can capture the process data in the test operation in real time; Perform feature distribution on process data in the test operation by means of unsupervised learning, analyze the feature-distributed process data based on a rule engine, and identify abnormal data in the process data; An error model library is constructed, the abnormal data is imported into the error model library, the abnormal data is classified based on association rules, and the classified abnormal data is reported to the ZenTao management system.
[0024] In the specific implementation, the event hooks in the intelligent proxy (IAProxy) are embedded in the user interface (UI) events, file downloads, memory allocation and other operations and resource management modules. Through the event hooks, IAProxy can capture events such as user interface interactions, file system operations, network requests, exception logs, etc. in real time; IAProxy contains multiple data collectors for recording detailed process data of system behavior, and the recorded data include: capturing UI operation data of UI element status changes and user operation trajectories through Windows UI Automation API; real-time monitoring of memory usage, CPU load, network status, etc. through Windows Performance Counters performance counters, identifying system resource data of memory leaks, CPU bottlenecks or network timeouts; monitoring system logs and application logs to capture log data of warnings, errors or exception stack information.
[0025] Furthermore, IAProxy can train the feature distribution of normal operation data through unsupervised learning to help identify abnormal behavior. The unsupervised learning method can be a machine learning model that includes anomaly detection algorithms; for example, the Isolation Forest algorithm or the One-Class SVM algorithm can detect abnormal behavior of the system when there are more normal operation samples; Time series prediction model: Predict the change trend of memory and CPU through time series. If the actual data is detected to deviate from the predicted value by more than the threshold, it is considered that there may be a resource management problem. IAProxy regularly updates the model to adapt to changes in system operation modes and ensure the accuracy of detection capabilities. IAProxy can use a rule-based engine to analyze collected data in real time; for example, some rules may be defined as: if the system memory growth exceeds a certain threshold and continues for a period of time without being released, it is determined that there may be a memory leak.
[0026] Furthermore, a complex error model library is established, which can include the characteristics of common system errors such as memory leaks, deadlocks, CPU surges, and network disconnections. For example, memory leaks may manifest as: continuous growth in memory usage, low memory recovery rates for specific modules; network disconnection problems may manifest as: multiple connection failures, long response times, etc. IAProxy uses the error model library to perform anomaly detection and association analysis based on the collected real-time data. The error model library can analyze and classify potential anomalies through association rules, time series relationships, and other methods. For example, when system resources monitor high CPU usage, network connection timeouts, and repeated restarts of UI components, the system can infer that a module of the application may have thread deadlock or resource competition problems; finally, the classified abnormal data is automatically submitted to the ZenTao Bug Management System; the efficiency of problem tracking and processing is improved, ensuring that problems found in testing can be quickly fed back and resolved.
[0027] S30, using an asynchronous multi-protocol transmission system, and combining the asynchronous multi-protocol transmission system with a communication protocol to obtain a parallel control mechanism for multi-protocol cross-process data interaction; Optionally, the step of adopting an asynchronous multi-protocol transmission system and combining the asynchronous multi-protocol transmission system with a communication protocol comprises: Calling the event loop and asynchronous I / O driver architecture in the asynchronous multi-protocol transmission system; Obtaining task requirements in the test task, and dynamically selecting a communication protocol according to the task requirements, wherein the communication protocol includes at least an XML-RPC protocol and a ZeroMQ protocol; Selecting an architecture task manager in the driver architecture, and allocating the task requirements to different asynchronous channels and executing them through the architecture task manager; The resource usage of each computing node in executing the test operation is monitored in real time, and the test tasks of different computing nodes are allocated through the architecture task manager based on the load balancing algorithm.
[0028] In specific implementation, the asynchronous multi-protocol transmission system (AMPS) combined with efficient communication protocols can realize cross-process and cross-node data transmission and remote calls. Through the asynchronous event-driven parallel execution mechanism, it is ensured that inter-process communication can maintain low latency and high efficiency in high-concurrency scenarios; specifically, AMPS uses the event loop and asynchronous I / O driver architecture to handle communication tasks. This mechanism avoids blocking calls and enables AMPS to process requests in parallel in multi-tasking scenarios. That is, each communication request is added to the event queue as an independent event, and is efficiently processed through asynchronous I / O operations to ensure that other requests will not be blocked due to waiting for a response to a request during concurrent requests. This can make full use of CPU and network resources and avoid performance bottlenecks. The communication protocol includes at least XML-RPC protocol and ZeroMQ protocol; XML-RPC protocol provides the function of remote procedure call, which is suitable for transmitting structured data (such as JSON or XML format) between nodes. XML-RPC provides a simple API interface in the form of synchronous call, which is convenient for cross-language and cross-platform calls. In AMPS, it is mainly used to transmit non-real-time data such as status updates and task instructions. ZeroMQ protocol is a high-performance communication library that supports asynchronous message transmission and is suitable for real-time communication that requires low latency. ZeroMQ is responsible for real-time data stream transmission across processes and nodes in AMPS. ZeroMQ supports multiple communication modes (such as publish / subscribe, request / response, push / pull, etc.) and can dynamically select the most appropriate mode to reduce latency. Obtain the task requirements in the test task, and the AMPS system dynamically selects the protocol according to the task requirements. For example, the system can choose XML-RPC when transferring status, and use ZeroMQ in scenarios with high requirements for data transmission and real-time response to ensure low latency and real-time data transmission.
[0029] Furthermore, AMPS has a built-in asynchronous task manager that arranges all remote calls and data transmission tasks in different asynchronous channels for parallel execution. The task manager will assign tasks to idle channels or suitable nodes based on task priority and resource availability. When a node is busy, AMPS can schedule new tasks to other nodes for execution to balance the load; optionally, to avoid overloading a process or node, AMPS will monitor the resource usage of each node (such as CPU, memory, network bandwidth, etc.) in real time, and intelligently distribute task requirements to different nodes based on the load balancing algorithm to ensure stability and efficiency under high concurrency.
[0030] S40, based on deep learning and computer vision, identifying the interface elements in the distribution network design software when performing the test operation, and performing interactive operations according to the parallel control mechanism to complete the test of the distribution network design software.
[0031] Optionally, the step of identifying interface elements in the distribution network design software during the test operation based on deep learning and computer vision, and performing interactive operations according to the parallel control mechanism includes: Taking screenshots of various pages and views in the CAD interface based on different viewing angles, different scales, and different resolutions to cover the scenes and elements when the distribution network design software is working; Mark the bounding boxes of CAD entities and their label categories in the captured images, adjust and enhance the screenshots to improve the robustness of each screenshot and ensure the size and format of each screenshot is consistent; Pre-training and transfer learning are performed on the convolutional neural network model so that the convolutional neural network model can recognize the annotated CAD primitives; The CAD interface image is input into the learned convolutional neural network model, the coordinate position and category information of each CAD primitive are output, and the model interacts with the mouse operation.
[0032] Specifically, the screenshots include screenshots at different perspectives, scales and resolutions, which can ensure the generalization ability of the model in various environments. The annotated CAD primitives in the image can include poles, wires, text labels, etc. The annotation tools can be selected from LabelImg or RectLabel, etc. The screenshot adjustment includes noise cleaning and contrast adjustment to improve the recognition accuracy of the model; the screenshot enhancement includes rotation, scaling, cropping, flipping, etc.; the size of each screenshot can be unified as 224 pixels × 224 pixels, and the format can be unified as RGB format. The convolutional neural network model (CNN) can use ResNet, VGG, YOLO and other model architectures. Preferably, for scenes with high real-time detection requirements, a lightweight YOLO model architecture can be selected. The annotated CAD primitives are used for transfer learning of CNN, and the first few layers of the CNN model are retained to extract common low-level features such as edges and textures. Then, the last few layers of the model are fine-tuned to identify specific CAD primitives. During the fine-tuning process, the model accuracy is evaluated using indicators such as cross entropy loss or IoU loss.
[0033] The step of inputting the CAD interface image into the learned convolutional neural network model, outputting the coordinate position and category information of each CAD primitive, and interacting with the mouse operation comprises: The CAD interface image is divided into a training set and a test set, the training set is input into the convolutional neural network model, and the convolutional neural network model is evaluated and adjusted based on the F1 score so that the recognition result of the convolutional neural network model meets expectations; Inputting the test set into the adjusted convolutional neural network model, removing redundant bounding boxes of CAD primitives based on non-maximum suppression, performing edge detection and shape analysis based on computer vision, and identifying CAD primitives; The coordinate position of each CAD primitive is determined through OpenCV, and the mouse operation is simulated according to the coordinate position of the identified CAD primitive, so that the distribution network design software can be controlled by the mouse to perform CAD primitive transformation.
[0034] The trained model can generate bounding boxes and category labels for primitives. During the inference process, the CAD interface image is input into the model, and the model outputs the location coordinates and category information of the CAD primitives. The F1 score is an indicator used in statistics to measure the accuracy of a binary classification model. It takes into account both the precision and recall of the classification model. Non-maximum suppression (NMS) is used to remove redundant bounding boxes to ensure that each primitive generates only one accurate bounding box to reduce false detection and multiple box detection. Computer vision is used for edge detection and shape analysis to further improve positioning accuracy. Combined with the bounding box output by the model, the specific shape and position of the primitive are further analyzed through OpenCV. For example, contour detection is used to locate the center point of the tower, and Hough transform is used to detect the wire. According to the identified primitive category and position, mouse events are simulated for automatic interaction. By controlling the mouse click, drag and other operations, the primitives in the software interface can be directly manipulated to achieve automated operations such as selection, copying, and deletion. The trained model can be encapsulated into a service for easy integration with CAD distribution network design software. Tools such as TensorFlowServing or ONNX Runtime can be selected for encapsulation to facilitate efficient loading and reasoning of the model. The recognition and interactive operation modules are connected to the test framework through the API interface to achieve a closed loop of automated operation. The system will load the interface image, call the recognition model, locate the primitives, and automatically interact according to the task requirements. Multiple rounds of test operations such as automatic positioning, clicking and dragging different primitives are simulated to verify the stability and interactive effect of the system; test feedback will be used to further optimize the model or image processing process, and ultimately ensure that the system's automated recognition and interactive functions meet actual application requirements.
[0035] The step of performing edge detection and shape analysis based on computer vision to identify CAD primitives includes: The CAD interface is divided into a plurality of graphic element data blocks, and based on a parallel computing framework, the divided graphic element data blocks are distributed to corresponding recognition nodes, so that each recognition node performs a recognition task independently; Extracting the multidimensional attributes of the image data block respectively through a plurality of feature extraction units in the parallel computing framework, and converting the extracted multidimensional attributes into a multidimensional feature vector; Each of the recognition nodes performs edge and shape recognition on the multidimensional feature vector on the recognition node, and merges the recognition results at the central recognition node; The CAD primitives cached in the memory are verified for accuracy based on the consistency check algorithm, and the CAD primitives in the memory are annotated and optimized based on the topological relationship so that the identified CAD primitives meet the requirements.
[0036] Optionally, when processing massive amounts of CAD primitives, the overall data is first divided into multiple small data blocks according to the primitive category, spatial location or topological structure, etc., to ensure that each computing node only processes a small portion of the data, thereby improving the efficiency of data parallel processing. Through parallel computing frameworks such as Apache Spark or Dask, the fragmented primitive data is distributed to multiple nodes, and each node independently performs primitive recognition and feature analysis tasks. The framework uses multi-core or multi-GPU resources in the cluster to achieve parallel processing on multiple nodes; for different types of primitives such as poles, wires, and voltage markers, the parallel computing framework can use multiple feature extraction modules to extract multidimensional attributes from the primitives. These attributes include geometric shape features (such as length, width, area), topological attributes (such as connection relationships, adjacency relationships), color or texture features, etc. The extracted primitive attributes are converted into multidimensional feature vectors for automatic classification and labeling through machine learning models. The feature vector contains all the important attributes of the primitive for subsequent recognition and classification steps. Each node uses local processing power to load machine learning or deep learning models (such as random forests, SVMs, or convolutional neural networks, etc.) to classify and identify primitive feature vectors. Since the image metadata has been assigned to multiple nodes, the nodes can efficiently complete the classification and labeling tasks of a large number of image elements locally. The calculation results of each node are merged at the central node, and a consistency verification algorithm is used to ensure the accuracy of the classification and recognition results. The framework will automatically remove low-confidence annotations and perform secondary analysis to ensure the reliability of the classification results. In some optional embodiments, the system can further optimize the annotation of the aggregated results. For example, a verification method based on topological relationships (such as ensuring the correct connection between the tower and the wire) is used to verify the rationality of the recognition. For uncertain image elements, secondary recognition or manual review can be performed.
[0037] The step of performing edge and shape recognition on the multidimensional feature vector on each of the identification nodes comprises: Dynamically adjusting the recognition threshold of the convolutional neural network model during the recognition process according to the CAD primitive label type and shape feature identified by the multidimensional feature vector to reduce misclassification of the CAD primitive; Monitoring the recognition and classification results of the CAD primitives, and performing feature feedback according to the recognition and classification results of the CAD primitives to adjust model parameters of the convolutional neural network model; Distributed cache is introduced to cache the recognized CAD primitives into the memory of computing nodes based on the discontinuity of distributed storage.
[0038] Optionally, the system automatically adjusts the recognition threshold according to the primitive type and feature distribution during the recognition process. For example, for certain primitive categories with a high false positive rate, the system can adjust the model's classification threshold or weighting strategy to reduce misclassification. During the continuous primitive recognition process, the system monitors the accuracy of the classification results and adaptively adjusts the model parameters based on feedback. Common adaptive means include adjusting feature weights, updating classifier parameters, or selecting a model that is more suitable for a specific primitive type. By introducing distributed caching, the system caches frequently accessed primitive data in the memory of the computing node to avoid I / O bottlenecks caused by excessive data volume. Distributed memory management also supports data sharing between nodes, allowing computing tasks to fully utilize the memory resources of the entire cluster. At the same time, the task scheduler can dynamically allocate computing tasks according to the load of the node to further optimize resource utilization. The parallel computing framework divides the feature extraction and recognition tasks of each primitive to ensure that feature extraction and classification recognition are performed in parallel. For example, a node can run multiple threads or processes simultaneously to process different categories of primitives such as towers, conductors, and voltage markers, further speeding up the recognition speed.
[0039] Furthermore, in some optional embodiments, the IAccessible interface can be extended to enable the system to recognize and operate MFC self-drawn controls and third-party UI library controls through extension and reflection mechanisms, so that the UIAutomation library can accurately recognize and operate custom controls, ensuring that the testing of all user interface elements can proceed smoothly.
[0040] The IAccessible interface is an assistive technology interface for Windows, which provides standardized control information for UIAutomation. It allows assistive tools (such as screen readers or automated testing tools) to obtain control properties (such as name, type, status) and perform simple operations (such as click, select); because MFC self-drawn controls and some third-party UI controls do not implement the standard IAccessible interface, UIAutomation cannot obtain information about these controls by default. Therefore, by customizing the IAccessible interface extension, standardized auxiliary information and operable interfaces are provided for these controls. Custom extensions allow adding specific properties of controls (such as custom drawn color, size, status, etc.) and operation methods (such as double-click, drag, etc.), which enhances the recognition accuracy of controls.
[0041] The reflector component dynamically detects the properties and methods of controls through the reflection mechanism. Using Windows API (such as EnumChildWindows) to recursively traverse all controls in the form and obtain the handle and basic information of each control (such as the control class name, parent-child relationship), the reflector can extract undisclosed custom properties through the control handle. For example, for MFC self-drawn controls, the SendMessage function can be used to interact with the internal state of the control and access its internal properties. For third-party library controls, the reflector automatically parses the specific properties of the control through the class name or feature identifier (such as the control ID) of the control. The control reflector generates an access path (similar to the DOM tree path) based on the properties of the control to help automated tools find the exact location of the control. Through this path, the system can still identify and operate the control even if the control position changes.
[0042] After the reflector obtains the class name, hierarchy, properties and other information of the control, it passes this information to the custom IAccessible interface as the basic data for generating the accessible path and features of the control. The reflector can automatically generate an access path (such as "main window-subwindow-control") based on the control tree structure and pass it to the IAccessible interface, so that UIAutomation can quickly locate the control through the path. When the UIAutomation library needs to access a specific control, the system directly locates and operates the control through the access path and control properties provided by the custom IAccessible interface, realizing accurate identification of custom controls and third-party controls.
[0043] MFC self-drawn controls usually do not have standard IAccessible support, resulting in the automation tools being unable to recognize them by default. Custom IAccessible extensions ensure that self-drawn controls can be recognized and operated consistently with standard UI controls by providing standard properties and behaviors (such as control name, bounding rectangle, enabled / disabled state, etc.). Third-party UI libraries (such as DevExpress, Telerik, etc.) often contain custom rendered or encapsulated controls, and standard UIAutomation cannot directly recognize their properties. Through the control reflector and custom IAccessible interface, the system can extract the custom properties of these controls, simulate UI operations (such as drag and drop, sliding, selection, etc.), and expose the operation interface to the UIAutomation library.
[0044] With the support of custom IAccessible extension, UIAutomation library can access all controls (including self-drawn and third-party controls), identify the characteristics of controls and perform standard operations. This compatibility makes the system's automated test coverage higher and can handle complex UI structures. In addition to supporting UIAutomation to perform standard operations (such as click, input, etc.), IAccessible extension allows custom operations of controls (such as pinch-to-zoom, scroll) to be implemented. This not only improves the accuracy of automated testing, but also simulates the user's real operation scenarios.
[0045] If a control is updated (such as property changes or layout adjustments), the IAccessible extension and reflector will regenerate the access path and update the reflection result to ensure that the control can still be identified and operated after the change. The IAccessible interface extension supports the identification and operation of new custom control types. The framework can automatically generate corresponding access paths and methods based on the characteristics of the new control type, making the system more compatible and scalable.
[0046] In summary, the distribution network design software testing method based on the CAD platform proposed in this application builds an automated testing framework based on pytest, distributes and adds test tasks in the automated testing framework, configures the current execution environment according to the test tasks, and through the implementation of the pytest framework and automated test cases, the system can ensure that the functions of the distribution network design software are fully covered, including stability and basic functions; dynamically captures and analyzes the test operations that execute test tasks through intelligent agents to obtain abnormal data in the test and report the abnormal data to the error management system; automatically submits bugs and error logs to the ZenTao Bug management system, which improves the efficiency of problem tracking and handling, and ensures that problems found in the test can be quickly fed back and resolved; adopts an asynchronous multi-protocol transmission system, and combines the asynchronous multi-protocol transmission system with the communication protocol to obtain multi-protocol cross Parallel control mechanism for process data interaction; through the asynchronous event-driven parallel execution mechanism, it ensures that in high-concurrency scenarios, inter-process communication can maintain low latency and high efficiency, achieve stable cross-process control and data transmission, and can quickly and reliably manage and test the background services and data structures of the distribution network design software, improving the stability and accuracy of the test; based on deep learning and computer vision, it identifies the interface elements in the distribution network design software during test operations, and performs interactive operations according to the parallel control mechanism to complete the test of the distribution network design software; the automated interactive operations based on deep learning and computer vision can efficiently perform operations such as graphics positioning, drawing, and movement, accurately identify and extract the properties of business graphics and CAD graphics in the distribution network design software, ensure that the test covers all key business elements, improve the efficiency and accuracy of graphical interface testing, and are suitable for large-scale promotion.
[0047] Embodiment 2 This embodiment provides a distribution network design software testing system based on a CAD platform, including: A construction module is used to build an automated test framework based on pytest, distribute and add test tasks in the automated test framework, and configure the current execution environment according to the test tasks; A capture module is used to dynamically capture and analyze the test operations of executing the test task through an intelligent agent to obtain abnormal data in the test and report the abnormal data to an error management system; A combining module, used to adopt an asynchronous multi-protocol transmission system, and combine the asynchronous multi-protocol transmission system with a communication protocol to obtain a parallel control mechanism for multi-protocol cross-process data interaction; An identification module, for identifying interface elements in the distribution network design software during the test operation based on deep learning and computer vision, and performing interactive operations according to the parallel control mechanism to complete the test of the distribution network design software; The step of constructing an automated testing framework according to pytest and distributing and adding test tasks in the automated testing framework includes: Build an automated testing framework based on pytest, and encapsulate the automated testing framework into a test environment based on distributed virtual containerization to obtain several independent container images; Deploy the same test environment image on different computing nodes in the automated test framework, and add the test tasks to the RabbitMQ task queue accordingly; Based on the distributed task scheduling engine in the RabbitMQ task queue, test tasks are dynamically selected from the RabbitMQ task queue and distributed to different computing nodes according to resource conditions.
[0048] Preferably, the step of dynamically capturing and analyzing the test operation of executing the test task by an intelligent agent to obtain abnormal data in the test and reporting the abnormal data to an error management system includes: Embedding the event hook in the intelligent agent into the test operation and the corresponding resource management module so that the intelligent agent can capture the process data in the test operation in real time; Perform feature distribution on process data in the test operation by means of unsupervised learning, analyze the feature-distributed process data based on a rule engine, and identify abnormal data in the process data; An error model library is constructed, the abnormal data is imported into the error model library, the abnormal data is classified based on association rules, and the classified abnormal data is reported to the ZenTao management system.
[0049] Preferably, the step of adopting an asynchronous multi-protocol transmission system and combining the asynchronous multi-protocol transmission system with a communication protocol comprises: Calling the event loop and asynchronous I / O driver architecture in the asynchronous multi-protocol transmission system; Obtaining task requirements in the test task, and dynamically selecting a communication protocol according to the task requirements, wherein the communication protocol includes at least an XML-RPC protocol and a ZeroMQ protocol; Selecting an architecture task manager in the driver architecture, and allocating the task requirements to different asynchronous channels and executing them through the architecture task manager; The resource usage of each computing node in executing the test operation is monitored in real time, and the test tasks of different computing nodes are allocated through the architecture task manager based on the load balancing algorithm.
[0050] Preferably, the step of identifying interface elements in the distribution network design software during the test operation based on deep learning and computer vision, and performing interactive operations according to the parallel control mechanism includes: Taking screenshots of various pages and views in the CAD interface based on different viewing angles, different scales, and different resolutions to cover the scenes and elements when the distribution network design software is working; Mark the bounding boxes of CAD entities and their label categories in the captured images, adjust and enhance the screenshots to improve the robustness of each screenshot and ensure the size and format of each screenshot is consistent; Pre-training and transfer learning are performed on the convolutional neural network model so that the convolutional neural network model can recognize the annotated CAD primitives; The CAD interface image is input into the learned convolutional neural network model, the coordinate position and category information of each CAD primitive are output, and the model interacts with the mouse operation.
[0051] Preferably, the step of inputting the CAD interface image into the learned convolutional neural network model, outputting the coordinate position and category information of each CAD primitive, and interacting with the mouse operation comprises: The CAD interface image is divided into a training set and a test set, the training set is input into the convolutional neural network model, and the convolutional neural network model is evaluated and adjusted based on the F1 score so that the recognition result of the convolutional neural network model meets expectations; Inputting the test set into the adjusted convolutional neural network model, removing redundant bounding boxes of CAD primitives based on non-maximum suppression, performing edge detection and shape analysis based on computer vision, and identifying CAD primitives; The coordinate position of each CAD primitive is determined through OpenCV, and the mouse operation is simulated according to the coordinate position of the identified CAD primitive, so that the distribution network design software can be controlled by the mouse to perform CAD primitive transformation.
[0052] Preferably, the step of performing edge detection and shape analysis based on computer vision to identify CAD primitives comprises: The CAD interface is divided into a plurality of graphic element data blocks, and based on a parallel computing framework, the divided graphic element data blocks are distributed to corresponding recognition nodes, so that each recognition node performs a recognition task independently; Extracting the multidimensional attributes of the image data block respectively through a plurality of feature extraction units in the parallel computing framework, and converting the extracted multidimensional attributes into a multidimensional feature vector; Each of the recognition nodes performs edge and shape recognition on the multidimensional feature vector on the recognition node, and merges the recognition results at the central recognition node; The CAD primitives cached in the memory are verified for accuracy based on the consistency check algorithm, and the CAD primitives in the memory are annotated and optimized based on the topological relationship so that the identified CAD primitives meet the requirements.
[0053] Preferably, the step of performing edge and shape recognition on the multidimensional feature vector on each of the identification nodes comprises: Dynamically adjusting the recognition threshold of the convolutional neural network model during the recognition process according to the CAD primitive label type and shape feature identified by the multidimensional feature vector to reduce misclassification of the CAD primitive; Monitoring the recognition and classification results of the CAD primitives, and performing feature feedback according to the recognition and classification results of the CAD primitives to adjust model parameters of the convolutional neural network model; Distributed cache is introduced to cache the recognized CAD primitives into the memory of computing nodes based on the discontinuity of distributed storage.
[0054] Embodiment 3 A third embodiment of the present invention provides a storage medium on which a computer program is stored. When the program is executed by a processor, the above-mentioned distribution network design software testing method based on the CAD platform is implemented.
[0055] Embodiment 4 The present invention also provides a computer, see Figure 2 , shown is a computer in the fourth embodiment of the present invention, including a memory 10, a processor 20, and a computer program 30 stored in the memory 10 and executable on the processor 20. When the processor 20 executes the computer program 30, the above-mentioned distribution network design software testing method based on the CAD platform is implemented.
[0056] The memory 10 includes at least one type of storage medium, including flash memory, hard disk, multimedia card, card-type memory (e.g., SD or DX memory, etc.), magnetic memory, magnetic disk, optical disk, etc. In some embodiments, the memory 10 may be an internal storage unit of a computer, such as a hard disk of the computer. In other embodiments, the memory 10 may also be an external storage device, such as a plug-in hard disk, a smart memory card (Smart Media Card, SMC), a secure digital (Secure Digital, SD) card, a flash card, etc. Further, the memory 10 may also include both an internal storage unit of the computer and an external storage device. The memory 10 may be used not only to store application software and various types of data installed in the computer, but also to temporarily store data that has been output or is to be output.
[0057] Among them, in some embodiments, the processor 20 can be an electronic control unit (Electronic Control Unit, abbreviated as ECU, also known as a vehicle computer), a central processing unit (Central Processing Unit, CPU), a controller, a microcontroller, a microprocessor or other data processing chip, used to run the program code stored in the memory 10 or process data, such as executing access restriction programs, etc.
[0058] It should be pointed out that Figure 2 The structure shown does not constitute a limitation on the computer. In other embodiments, the computer may include fewer or more components than shown in the figure, or combine certain components, or arrange the components differently.
[0059] Those skilled in the art will appreciate that the logic and / or steps represented in the flowchart or otherwise described herein, for example, may be considered as an ordered list of executable instructions for implementing logical functions, and may be specifically implemented in any computer-readable medium for use by an instruction execution system, device or apparatus (such as a computer-based system, a system including a processor, or other system that can fetch instructions from an instruction execution system, device or apparatus and execute instructions), or in conjunction with such instruction execution systems, devices or apparatuses. For purposes of this specification, "computer-readable medium" may be any device that can contain, store, communicate, propagate or transmit a program for use by an instruction execution system, device or apparatus, or in conjunction with such instruction execution systems, devices or apparatuses.
[0060] More specific examples of computer-readable media (a non-exhaustive list) include the following: an electrical connection with one or more wires (electronic device), a portable computer disk case (magnetic device), a random access memory (RAM), a read-only memory (ROM), an erasable and programmable read-only memory (EPROM or flash memory), an optical fiber device, and a portable compact disk read-only memory (CDROM). In addition, the computer-readable medium may even be a paper or other suitable medium on which the program is printed, since the program may be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, deciphering or, if necessary, processing in another suitable manner, and then stored in a computer memory.
[0061] It should be understood that the various parts of the present invention can be implemented by hardware, software, firmware or a combination thereof. In the above-mentioned embodiments, multiple steps or methods can be implemented by software or firmware stored in a memory and executed by a suitable instruction execution system. For example, if implemented by hardware, as in another embodiment, it can be implemented by any one of the following technologies known in the art or a combination thereof: a discrete logic circuit having a logic gate circuit for implementing a logic function for a data signal, a dedicated integrated circuit having a suitable combination of logic gate circuits, a programmable gate array (PGA), a field programmable gate array (FPGA), etc.
[0062] The technical features of the above-described embodiments may be arbitrarily combined. To make the description concise, not all possible combinations of the technical features in the above-described embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0063] The above-mentioned embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the invention patent. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the patent of the present application shall be subject to the attached claims.
Claims
1. A distribution network design software testing method based on a CAD platform, characterized in that: include; Build an automated testing framework based on pytest, distribute and add test tasks in the automated testing framework, and configure the current execution environment based on the test tasks; Dynamically capture and analyze the test operations of executing the test tasks through intelligent agents to obtain abnormal data in the test and report the abnormal data to the error management system; Adopting an asynchronous multi-protocol transmission system and combining the asynchronous multi-protocol transmission system with a communication protocol to obtain a parallel control mechanism for multi-protocol cross-process data interaction; Based on deep learning and computer vision, the interface elements in the distribution network design software are identified during the test operation, and interactive operations are performed according to the parallel control mechanism to complete the test of the distribution network design software; The step of constructing an automated testing framework according to pytest and distributing and adding test tasks in the automated testing framework includes: Build an automated testing framework based on pytest, and encapsulate the automated testing framework into a test environment based on distributed virtual containerization to obtain several independent container images; Deploy the same test environment image on different computing nodes in the automated test framework, and add the test tasks to the RabbitMQ task queue accordingly; Based on the distributed task scheduling engine in the RabbitMQ task queue, test tasks are dynamically selected from the RabbitMQ task queue and distributed to different computing nodes according to resource conditions.
2. The CAD platform-based distribution network design software testing method according to claim 1, characterized in that: The step of dynamically capturing and analyzing the test operation of executing the test task by the intelligent agent to obtain abnormal data in the test and reporting the abnormal data to the error management system includes: Embedding the event hook in the intelligent agent into the test operation and the corresponding resource management module so that the intelligent agent can capture the process data in the test operation in real time; Perform feature distribution on process data in the test operation by means of unsupervised learning, analyze the feature-distributed process data based on a rule engine, and identify abnormal data in the process data; An error model library is constructed, the abnormal data is imported into the error model library, the abnormal data is classified based on association rules, and the classified abnormal data is reported to the ZenTao management system.
3. The CAD platform-based distribution network design software testing method according to claim 1, characterized in that: The step of adopting the asynchronous multi-protocol transmission system and combining the asynchronous multi-protocol transmission system with the communication protocol comprises: Calling the event loop and asynchronous I / O driver architecture in the asynchronous multi-protocol transmission system; Obtaining task requirements in the test task, and dynamically selecting a communication protocol according to the task requirements, wherein the communication protocol includes at least an XML-RPC protocol and a ZeroMQ protocol; Selecting an architecture task manager in the driver architecture, and allocating the task requirements to different asynchronous channels and executing them through the architecture task manager; The resource usage of each computing node in executing the test operation is monitored in real time, and the test tasks of different computing nodes are allocated through the architecture task manager based on the load balancing algorithm.
4. The method for testing distribution network design software based on CAD platform according to claim 1, characterized in that: The steps of identifying interface elements in the distribution network design software during the test operation based on deep learning and computer vision, and performing interactive operations according to the parallel control mechanism include: Taking screenshots of various pages and views in the CAD interface based on different viewing angles, different scales, and different resolutions to cover the scenes and elements when the distribution network design software is working; Mark the bounding boxes of CAD entities and their label categories in the captured images, adjust and enhance the screenshots to improve the robustness of each screenshot and ensure the size and format of each screenshot is consistent; Pre-training and transfer learning are performed on the convolutional neural network model so that the convolutional neural network model can recognize the annotated CAD primitives; The CAD interface image is input into the learned convolutional neural network model, the coordinate position and category information of each CAD primitive are output, and the model interacts with the mouse operation.
5. The CAD platform-based distribution network design software testing method according to claim 4, characterized in that: The step of inputting the CAD interface image into the learned convolutional neural network model, outputting the coordinate position and category information of each CAD primitive, and interacting with the mouse operation comprises: The CAD interface image is divided into a training set and a test set, the training set is input into the convolutional neural network model, and the convolutional neural network model is evaluated and adjusted based on the F1 score so that the recognition result of the convolutional neural network model meets expectations; Inputting the test set into the adjusted convolutional neural network model, removing redundant bounding boxes of CAD primitives based on non-maximum suppression, performing edge detection and shape analysis based on computer vision, and identifying CAD primitives; The coordinate position of each CAD primitive is determined through OpenCV, and the mouse operation is simulated according to the coordinate position of the identified CAD primitive, so that the distribution network design software can be controlled by the mouse to perform CAD primitive transformation.
6. The CAD platform-based distribution network design software testing method according to claim 5, characterized in that: The step of performing edge detection and shape analysis based on computer vision to identify CAD primitives includes: The CAD interface is divided into a plurality of graphic element data blocks, and based on a parallel computing framework, the divided graphic element data blocks are distributed to corresponding recognition nodes, so that each recognition node performs a recognition task independently; Extracting the multidimensional attributes of the image data block respectively through a plurality of feature extraction units in the parallel computing framework, and converting the extracted multidimensional attributes into a multidimensional feature vector; Each of the recognition nodes performs edge and shape recognition on the multidimensional feature vector on the recognition node, and merges the recognition results at the central recognition node; The CAD primitives cached in the memory are verified for accuracy based on the consistency check algorithm, and the CAD primitives in the memory are annotated and optimized based on the topological relationship so that the identified CAD primitives meet the requirements.
7. The CAD platform-based distribution network design software testing method according to claim 6, characterized in that: The step of performing edge and shape recognition on the multidimensional feature vector on each of the identification nodes comprises: Dynamically adjusting the recognition threshold of the convolutional neural network model during the recognition process according to the CAD primitive label type and shape feature identified by the multidimensional feature vector to reduce misclassification of the CAD primitive; Monitoring the recognition and classification results of the CAD primitives, and performing feature feedback according to the recognition and classification results of the CAD primitives to adjust model parameters of the convolutional neural network model; Distributed cache is introduced to cache the recognized CAD primitives into the memory of computing nodes based on the discontinuity of distributed storage.
8. A distribution network design software testing system based on a CAD platform, characterized in that: include: A construction module is used to build an automated test framework based on pytest, distribute and add test tasks in the automated test framework, and configure the current execution environment according to the test tasks; A capture module is used to dynamically capture and analyze the test operations of executing the test task through an intelligent agent to obtain abnormal data in the test and report the abnormal data to an error management system; A combining module, used to adopt an asynchronous multi-protocol transmission system, and combine the asynchronous multi-protocol transmission system with a communication protocol to obtain a parallel control mechanism for multi-protocol cross-process data interaction; An identification module, for identifying interface elements in the distribution network design software during the test operation based on deep learning and computer vision, and performing interactive operations according to the parallel control mechanism to complete the test of the distribution network design software; The step of constructing an automated testing framework according to pytest and distributing and adding test tasks in the automated testing framework includes: Build an automated testing framework based on pytest, and encapsulate the automated testing framework into a test environment based on distributed virtual containerization to obtain several independent container images; Deploy the same test environment image on different computing nodes in the automated test framework, and add the test tasks to the RabbitMQ task queue accordingly; Based on the distributed task scheduling engine in the RabbitMQ task queue, test tasks are dynamically selected from the RabbitMQ task queue and distributed to different computing nodes according to resource conditions.
9. A storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, a distribution network design software testing method based on a CAD platform as described in any one of claims 1 to 7 is implemented.
10. A computer comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the distribution network design software testing method based on the CAD platform as described in any one of claims 1 to 7 is implemented.
Citation Information
Patent Citations
Welding spot detection method based on convolutional neural network
CN113409250A
Scheduling method and system for software automatic testing
CN113626344A
Automatic test method and device for user interface, electronic equipment and storage medium
CN113778898A
Equipment identification detection method and device, electronic equipment and medium
CN117315706A
UI automatic test system and method, computer equipment and storage medium
CN117472754A