ATC Automated Testing System and ATC Automated Testing Methods

Through the ATC automatic testing system, the automated test script editor and monitor are used, combined with the distributed test engine, the problems of low and cumbersome testing of ATC system in the existing technology are solved, efficient and accurate automated testing is achieved, and the testing is reduced. cost.

CN113434412BActive Publication Date: 2024-12-13CRSC URBAN RAIL TRANSIT TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202110720820.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-06-28
Publication Date
2024-12-13
Estimated Expiration
2041-06-28

AI Technical Summary

Technical Problem

The semi-physical simulation testing system of the existing rail transit signal system requires manual operation, which is time-consuming and labor-intensive, and re-testing is cumbersome during software upgrade verification, and depends on the level and experience of the tester.

Method used

An ATC automatic testing system is designed, including a test script editor, a test monitor, a test main engine and multiple test sub-engines. By automatically generating and executing test scripts, it reduces manual intervention and improves testing efficiency and accuracy.

Benefits of technology

Automatic testing is realized, reducing testing costs, improving testing efficiency and accuracy, reducing repetitive operations, and enhancing the repeatability and versatility of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113434412B_ABST
    Figure CN113434412B_ABST
Patent Text Reader

Abstract

The present invention provides an ATC automatic test system and an ATC automatic test method, the system comprising: a test script editor, a test monitor, a test main engine, a plurality of test sub-engines and a semi-physical simulation test system. The present invention automatically generates a test script corresponding to a configuration file through a test script editor, thereby avoiding the problem that manual compilation of test scripts is inefficient and prone to errors; since the test script can be saved, retesting of the same test case can be achieved by simply rerunning the previous test script, thereby improving test efficiency and accuracy. Through the test monitor, testers can effectively control the execution of automatic tests and observe and track the results of automatic tests. Through the automated test main engine and the test sub-engines, efficient execution of tests can be achieved, with high repeatability, and the conditions of each test and the judgment of the test results are guaranteed to be better than manual tests.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of rail transit system testing, and in particular to an ATC automatic testing system and an ATC automatic testing method. Background Art

[0002] The integrated verification test of rail transit signal system is generally tested by semi-physical simulation system, that is, some objects or subsystems in the Automatic Train Control (ATC) system are connected by physical objects, and the other part is a simulation model. Through this simulation, the physical object can be used as the object to be tested, and the simulation model can more easily simulate more test conditions that cannot be created by physical equipment. The semi-physical simulation system test environment is an indispensable test environment for the ATC system to verify the system functions. Most of the semi-physical simulation systems currently used for signal systems are manually set by test personnel against test cases, such as handling routes, building trains at corresponding positions in track sections, operating trains, turning back, etc., and manually verifying whether the response of the real equipment in the ATC system at each step is in line with expectations to determine whether the current test case has passed.

[0003] As an indispensable part of the testing process, the semi-physical simulation test system simulates the interfaces of trackside, vehicles and other equipment to the greatest extent, and creates complete case execution conditions for testers to ensure the smooth progress of full-function testing of signal systems under various standards. However, the current simulation test system has the following problems: First, the establishment of test conditions requires manual step-by-step operation, which is very time-consuming and repetitive. Second, whether the test reflection of the object under test meets expectations depends heavily on the level of the tester, and the tester's ability and experience are required to be high. Third, when verifying the ATC system software upgrade, many test cases may need to be retested. For testers, all operating steps must be repeated, which is very time-consuming and cumbersome. Summary of the invention

[0004] The present invention provides an ATC automatic test system and an ATC automatic test method, which are used to solve the defects of low efficiency and cumbersomeness of the ATC system test in the prior art.

[0005] The present invention provides an ATC automatic test system, comprising:

[0006] Test script editor, test monitor, test main engine, multiple test sub-engines and semi-physical simulation test system, each test sub-engine is deployed in a distributed manner;

[0007] Among them, the test script editor is used to generate corresponding test scripts based on the interactive messages of the test system and the configuration files of the system under test information; the test monitor is used to parse the test script, generate the corresponding test sequence model, and send the test sequence model to the test main engine; the test main engine is used to generate corresponding test tasks based on the test sequence model, and send each test task to the corresponding test sub-engine, and send the test data corresponding to each test task to the test monitor, so that the test monitor monitors each test task; the test sub-engine is used to interact with the semi-physical simulation test system to execute the test task; the format of each test script is the same.

[0008] An ATC automatic test system provided according to the present invention also includes: a configuration file library and a database;

[0009] The configuration file library is used to generate corresponding configuration files based on the interaction messages of the test system and the information of the system under test. The database stores interface configuration information corresponding to each test script, so that the test script editor reads the corresponding fields from the database based on the configuration file and obtains the interface configuration information corresponding to each test script.

[0010] According to an ATC automatic testing system provided by the present invention, the test script editor is constructed based on a model driven architecture MDA;

[0011] Accordingly, the test script of the test script editor is generated based on the following process:

[0012] Package the model in the model view controller MVC to form the platform-independent model PIM in the model driven architecture MDA;

[0013] Based on the configuration file, convert the platform-independent model PIM into a platform-dependent model PSM;

[0014] Based on the syntax rules of the code, the platform-specific model PSM is converted into the test script.

[0015] According to an ATC automatic test system provided by the present invention, the test monitor includes a model layer, a presentation layer and a control layer;

[0016] The model layer is used to parse the test script, the control layer is used to generate a corresponding test sequence model based on the parsed test script, and send the test sequence model to the test main engine; the presentation layer is used to display the test data corresponding to each test task.

[0017] According to an ATC automatic test system provided by the present invention, the model layer, the presentation layer and the control layer are respectively constructed in a loosely coupled manner.

[0018] According to an ATC automatic test system provided by the present invention, the test main engine includes a test script parser, a test task distributor, a test engine manager and a test data manager;

[0019] The test script parser is used to parse the test sequence model and generate a test event chain; the test task allocator is used to generate multiple test tasks based on the test event chain and allocate each test task to the corresponding test sub-engine; the test engine manager is used to monitor the busyness of each test sub-engine and schedule each test sub-engine; the test data manager is used to collect the test data corresponding to each test task and send the test data to the test monitor.

[0020] According to an ATC automatic test system provided by the present invention, the test main engine and the test sub-engine are connected via a test network.

[0021] According to an ATC automatic test system provided by the present invention, the format of the test script is XML.

[0022] The present invention also provides an ATC automatic testing method, comprising:

[0023] Based on the interactive messages of the test system and the configuration files of the tested system information, the corresponding test scripts are generated by the test script editor; the formats of the test scripts are the same;

[0024] Parsing the test script by the test monitor, generating a corresponding test sequence model, and sending the test sequence model to the test main engine;

[0025] Generate corresponding test tasks based on the test sequence model through the test main engine, send each test task to the corresponding test sub-engine, and send test data corresponding to each test task to the test monitor, so that the test monitor monitors each test task;

[0026] The test task is executed by interacting with the semi-physical simulation test system through the test sub-engine.

[0027] According to an ATC automatic testing method provided by the present invention, the configuration file based on the interactive message of the test system and the information of the system under test generates a corresponding test script through the test script editor, including:

[0028] Generate a corresponding configuration file based on the interactive message of the test system and the information of the system under test, so that the test script editor reads the corresponding field from the database based on the configuration file and obtains the interface configuration information corresponding to each test script;

[0029] Generate corresponding test scripts based on the interface configuration information corresponding to each test script.

[0030] The ATC automatic test system and ATC automatic test method provided by the present invention provide a good human-computer interaction interface through a test script editor, automatically generate test scripts corresponding to configuration files, and avoid the difficulty of manually compiling test scripts for testers and the errors that may be caused by manually compiling scripts; because the test scripts can be saved, the retest of the same test case can be achieved by simply rerunning the previous test script, which greatly improves the test efficiency and accuracy. At the same time, through the test monitor, the tester can effectively control the execution of the automatic test and observe and track the results of the automatic test. In addition, through the automated test main engine and the test sub-engine, the efficient execution of the test can be achieved, and it has high repeatability. The same case can be tested repeatedly, and it is ensured that the conditions of each test and the judgment of the test results are better than manual testing. Moreover, the test sub-engine can be used to flexibly increase and modify the test objects connected to the test, and it has strong versatility and compatibility. BRIEF DESCRIPTION OF THE DRAWINGS

[0031] In order to more clearly illustrate the technical solutions in the present invention or the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. 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.

[0032] Figure 1 This is one of the structural schematic diagrams of the ATC automatic test system provided by the present invention;

[0033] Figure 2 This is the second structural diagram of the ATC automatic test system provided by the present invention;

[0034] Figure 3 This is the third structural schematic diagram of the ATC automatic test system provided by the present invention;

[0035] Figure 4 It is a structural schematic diagram of the test script editor provided by the present invention;

[0036] Figure 5 It is a schematic diagram of the script modeling principle provided by the present invention;

[0037] Figure 6It is a schematic diagram of the structure of the test engine provided by the present invention;

[0038] Figure 7 It is a flow chart of the ATC automatic testing method provided by the present invention. DETAILED DESCRIPTION

[0039] 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.

[0040] To this end, the present invention provides an ATC automatic testing system. Figure 1 Schematic diagram of the structure of the ATC automatic test system provided by the present invention. Figure 1 As shown, the system includes: a test script editor 110, a test monitor 120, a test main engine 130, a plurality of test sub-engines 140 and a semi-physical simulation test system 150, and each test sub-engine 140 is deployed in a distributed manner;

[0041] Among them, the test script editor 110 is used to generate corresponding test scripts based on the interactive messages of the test system and the configuration files of the system under test information; the test monitor 120 is used to parse the test scripts, generate corresponding test sequence models, and send the test sequence models to the test main engine 130; the test main engine 130 is used to generate corresponding test tasks based on the test sequence models, and send each test task to the corresponding test sub-engine 140, and send the test data corresponding to each test task to the test monitor 120, so that the test monitor 120 monitors each test task; the test sub-engine 140 is used to interact with the semi-physical simulation test system 150 to execute test tasks; the format of each test script is the same.

[0042] Specifically, the test script editor 110 can provide an operating interface for testers, generate test sequences using basic test actions and test control processes (including sequence, selection, loop, multi-threading, etc.), configure test data, and generate test scripts in a unified format (such as XML format) written in a special test language, thereby realizing the mapping of business logic to test scripts.

[0043] The test monitor 120 can also be used as a test definition and manager to manage test scripts, perform coverage analysis according to test requirements, and provide a test management interface to testers, interact with testers during the test process, and monitor the test process.

[0044] The test main engine 130 and the test sub-engine 140 constitute a test engine. The test main engine 130 and the test sub-engine 140 can be connected through a dedicated test network to avoid occupying the bandwidth of the internal network of the simulation support platform.

[0045] Among them, the test main engine 130 is a central control unit, which provides test script parsing, test process control, test task allocation, synchronization and coordination of various test executors, collection of subscribed test data from the test executors, and test script termination, suspension, reload and test action cancellation and recovery functions.

[0046] like Figure 2 As shown, the test sub-engine 140 (i.e., the distributed test executor) is the real executor of the test script. It no longer has a complex control flow, but only sends messages to the semi-physical simulation test system 150 in sequence according to the test actions issued by the test main engine 130, and receives messages uploaded by the semi-physical simulation test system 150. In the distributed objects of the semi-physical simulation test system 150, the interaction between the test sub-engine 140 and the model or agent belongs to the local function call, and only sends subscribed messages to the test main engine 130.

[0047] The ATC automatic test system provided in the embodiment of the present invention can automatically drive and control the semi-physical simulation test system 150 and realize the following functions:

[0048] (1) It can parse test scripts written in a dedicated scripting language, map business logic into computer program implementation, and handle complex control flows, allowing testers to directly operate business languages ​​to implement business logic and generate test scripts.

[0049] (2) For the distributed simulation test system, a distributed test sub-engine is constructed, and it is capable of sending test actions to the semi-physical simulation test system 150 according to the business logic of the test script, and receiving messages from the simulation system at the same time.

[0050] (3) Establish a complete description of test resources, make full use of hardware and computer resources, improve test efficiency, and support concurrent testing and configurable testing requirements.

[0051] (4) Realize the management of test sequences and monitoring of the test process, and provide the function of interacting with testers.

[0052] It can be seen that the embodiment of the present invention introduces automatic testing technology and means based on the basic framework of the current semi-physical simulation test system to improve test efficiency. Test scenarios are defined through test scripts, and repeated testing of test cases is achieved by running the edited and generated script files multiple times, thereby improving test accuracy and test efficiency.

[0053] In addition, the ATC automatic test system provided by the embodiment of the present invention does not completely rely on manual work, and can automatically test whether the functions of the ATC system meet expectations, especially test cases that need to be tested repeatedly, and perform effective integrated testing on real equipment, thereby reducing repetitive operations and labor, effectively reducing test costs, and improving the test efficiency of the system, specifically:

[0054] The ATC automatic test system provided by the embodiment of the present invention provides a good human-computer interaction interface through a test script editor, automatically generates a test script corresponding to the configuration file, and avoids the difficulty of manually compiling test scripts for testers and the errors that may be caused by manually compiling scripts; because the test script can be saved, the retest of the same test case can be achieved by simply rerunning the previous test script, which greatly improves the test efficiency and accuracy. At the same time, through the test monitor, the tester can effectively control the execution of the automatic test and observe and track the results of the automatic test. In addition, through the automated test main engine and the test sub-engine, the efficient execution of the test can be achieved, and it has high repeatability. The same case can be tested repeatedly, and it is ensured that the conditions of each test and the judgment of the test results are better than manual testing. Moreover, the test sub-engine can be used to flexibly increase and modify the test objects connected to the test, and it has strong versatility and compatibility.

[0055] Based on the above embodiment, it also includes: configuring a configuration file library and a database;

[0056] The configuration file library is used to generate corresponding configuration files based on the interactive messages of the test system and the information of the system under test. The database stores interface configuration information corresponding to each test script, so that the test script editor 110 reads the corresponding fields from the database based on the configuration file and obtains the interface configuration information corresponding to each test script.

[0057] Specifically, Figure 2 As shown, the automatic test environment focuses as much as possible on the construction of the test framework and the parsing of the test scripts. The configuration file library stores configuration files corresponding to the interaction messages of the test system and the information of the system under test, that is, the configuration files can be used to describe the test interaction messages and the information of the system under test.

[0058] The database and the semi-physical simulation test system 150 use the same database. The test script editor 110 reads the corresponding fields in the database according to the configuration file for editing the test script and configuring the message interface.

[0059] like Figure 3As shown, the script generator in the test script editor is used to generate test scripts and communicate with the test monitor through an adapter so that the test monitor obtains and parses the test script information, generates a test sequence model, and sends the test sequence model to the main engine to generate multiple test tasks, and each sub-engine executes the corresponding test task.

[0060] Based on any of the above embodiments, the test script editor 110 is constructed based on the model driven architecture MDA;

[0061] Accordingly, the test script of the test script editor 110 is generated based on the following process:

[0062] Package the model in the model view controller MVC to form the platform-independent model PIM in the model driven architecture MDA;

[0063] Based on the configuration file, the platform-independent model PIM is converted into the platform-dependent model PSM;

[0064] Based on the syntax rules of the code, the platform-specific model PSM is converted into a test script.

[0065] Specifically, in an automated testing environment, a good human-computer interaction interface needs to be provided to facilitate testers to generate the required test sequence models, ultimately improving the automation level of the entire ATC automated testing system.

[0066] The ATC automatic testing system provided by the embodiment of the present invention, with the aid of a test script editor (also known as a script generation tool), can define test processes and scenarios in a table editing manner, and generate a standard XML file as output for execution by the test main engine and the test sub-engine.

[0067] The test process definition is the starting point for the implementation of the entire system test. The test script editor 110 uses the standard XML file format to save the test process definition. The test script editor 110 provides a test process definition editing environment for testers. By using this tool, testers can define properties for each component of the test process in a structured table (i.e., describe the scenario). After the property definition is completed, the save action of the test script editor 110 will output the corresponding XML standard format file. Conversely, the test script editor 110 can also open a pre-written test process definition XML file, and also display the properties of various test actions therein in the form of a structured table. In short, the test script editor 110 improves the operability and readability of the test process definition.

[0068] Among them, the test script editor is built according to the principle of Model Driven Architecture (MDA), which realizes the conversion between models at all levels and provides an overall loosely coupled and highly flexible architecture from top to bottom for the test script editor. At the same time, based on this design principle, the efficiency of the test is greatly improved. At the same time, the system has a high degree of independence from the test platform and can preserve the work results of the test staff to the greatest extent.

[0069] like Figure 4 As shown, starting from the presentation layer, the MVC (Model View Controller) design pattern is adopted. The Model part is packaged to form the PIM (Platform Independent Model) model in the MDA. Then, according to the information provided by the semi-physical simulation test system description file, the PIM is automatically converted into the PSM (Platform Specific Model) model, and the PSM model is automatically converted into an executable test script according to the grammatical rules of the code.

[0070] According to the above design principles, if Figure 4 and Figure 5 As shown in the figure, the top layer of the test script editor is a friendly user interface, which is responsible for direct interaction with users. Below it is the interface model, and they interact through the interface controller. After adding necessary information, the interface display model is converted into a script element model through a model converter, and finally the script element model is mapped into an executable test script through script mapping, and the correctness of the test script is checked.

[0071] Based on any of the above embodiments, the test monitor 120 includes a model layer, a presentation layer, and a control layer;

[0072] The model layer is used to parse the test script, the control layer is used to generate the corresponding test sequence model based on the parsed test script, and send the test sequence model to the test main engine; the presentation layer is used to display the test data corresponding to each test task.

[0073] Specifically, the test monitor 120 implements the monitoring function during the execution of the automatic test in the ATC automatic test system, allowing the tester to control the execution of the automatic test and track the progress of the automatic test.

[0074] During the test execution process, testers need to understand the test execution status in real time and correctly and promptly handle many unexpected situations that occur during the test. Therefore, providing a powerful test monitoring and management tool is of great significance for establishing a user-friendly test system, improving test efficiency, and ensuring the smooth operation of the entire test system.

[0075] In addition, another major function of the test monitor 120 is the error handling function. In the test system, state transitions promote the execution of test process instances. In principle, the test engine is responsible for the state transition of the instance, but in the process of executing the test process, various exceptions will inevitably occur, such as the occupation of required resources, computer and network failures, etc. If not intervened in time, the execution of the instance may be blocked or stagnant, causing delays or losses in effective tests. Therefore, the test monitor should provide an interface for the test executor to restore the stalled test instance in time, and if necessary, adjust the execution order of the test tasks according to the situation, terminate, cancel, suspend or resume the execution of one or more test tasks, etc.

[0076] The overall design of the test monitor 120 adopts the typical MVC design pattern in software engineering, and the model layer, presentation layer and control layer are designed separately in a loosely coupled manner.

[0077] In the model layer, the program model of the test sequence is established with the dedicated test script language TPDL (Test Process Description Language) as the core. In TPDL, by defining a complete language for describing the test process of the simulation system, the test sequences executed in the system are reflected as scripts described in this language.

[0078] The design of the presentation layer requires that the operating interface of the test monitor 120 adopts a common graphical interface of Windows, is user-friendly, and must provide support for the mouse and keyboard.

[0079] The control layer logic of the test monitor 120 is mainly reflected in the interaction with the test main engine 130. The interaction between the two is mainly reflected in two aspects: one is the control of the test by the test monitor 120; the other is that the test main engine 130 feeds back the test process and data to the test monitor 120. The interaction between the test monitor 120 and the test main engine 130 adopts network transmission.

[0080] Based on the design principle of MVC, the overall structure of the test monitor 120 can be divided into three basic modules: model, presentation and control.

[0081] The basic function of the model layer is to parse the test script loaded by the user, generate the corresponding test sequence model object, and send the parsed data model to the test engine for execution. During the execution of the test activity, all operations and external interactions of the monitoring system are based on this test sequence model. The XML parsing function is implemented using JDOM.

[0082] Based on the explanation of the design principle, in the realization of the presentation layer, the UI design of the test monitor 120 adopts the Eclipse plug-in development technology. In this field, there are many basic technologies to support it. For example, the underlying image technology SWT (Standard Widget Toolkit) and JFace in GUI development. These basic technologies standardize the hierarchical structure and development specifications of the program, and have relatively rich documentation and open source resources to ensure the efficiency and quality of development.

[0083] The control layer structure of the test monitor 120 includes the control logic inside the monitoring system and the interaction logic between the monitoring system and the test engine. The former is the control logic inside the monitoring system, which is implemented using the interface provided in the Eclipse plug-in development; the latter, as the main part of the control layer, is implemented through the data transmission mode based on XML object serialization provided in the simulation support platform, which is based on network transmission. On the basis of the data transmission mechanism of the CBTC simulation support platform to ensure reliable transmission, the application layer protocol between the monitoring system and the engine is designed.

[0084] In the design and implementation of the test monitor 120, the basic ideas of process modeling and component-based development are adopted. First, the tasks and requirements of process management in the test execution process are sorted out and standardized, and a set of basic operation processes for test management are established. Then, the basic operation processes are decomposed into a series of functional modules with relatively independent functions that can be combined and reused. The test monitor 120 is implemented in a top-down, layered, refined, functionally decomposed, and flexible combination manner.

[0085] Based on any of the above embodiments, the model layer, the presentation layer and the control layer are respectively constructed in a loosely coupled manner.

[0086] Specifically, loose coupling means that the communication between the model layer, presentation layer and control layer is dominated by the message architecture. As long as the message conforms to the negotiated architecture, the implementation of the model layer, presentation layer or control layer can be changed as needed without worrying about damaging the other party, thereby improving the testing efficiency of the ATC automatic test system.

[0087] Based on any of the above embodiments, the test main engine 130 includes a test script parser, a test task distributor, a test engine manager, and a test data manager;

[0088] The test script parser is used to parse the test sequence model and generate a test event chain; the test task allocator is used to generate multiple test tasks based on the test event chain and assign each test task to the corresponding test sub-engine; the test engine manager is used to monitor the busyness of each test sub-engine and schedule each test sub-engine; the test data manager is used to collect the test data corresponding to each test task and send the test data to the test monitor.

[0089] Specifically, the test engine (test main engine 130 + test sub-engine 140) is the core of the ATC automatic test system, just like the process manager of the operating system. Its main function is to load the test script, parse the script and drive various software models and hardware devices according to the specific content of the test instructions, complete all actions concerned by the test, and record feedback and test results.

[0090] The automated testing engine can not only realize efficient execution of tests, but also has high repeatability. When repeatedly testing the same case, the automated testing engine is far superior to manual testing in terms of the similarity of the timing of test actions and the judgment results of the test process. In addition, the automated testing engine also supports concurrent testing of multiple cases, and the control accuracy of the test will not be reduced due to the increase in test tasks and test burdens.

[0091] In addition, the test engine can provide concurrent services for multiple requests. The ATC automatic test system provided by the embodiment of the present invention is a test platform that uses XML technology as a script specification to implement automated testing. Therefore, the work of the test engine needs to parse the process definition, control the process instance, obtain test task related information, including the interactive interface of the simulation object, parameters and other related information, and reasonably allocate test tasks. At the same time, during the execution process, the relevant operation data of the test instance is obtained, the operation of the test activity is completed, and the advancement of certain test processes is determined according to the current running status, and the next task is allocated. The test engine provides a running service environment for the execution of test cases, which is the core of executing the test.

[0092] like Figure 6 As shown in the figure, from the perspective of software model composition, the test engine can be divided into several modules with different functions, including:

[0093] (1) Test script parser, which is used to parse test scripts according to the predefined test action library to generate executable test event chains. Its main function is not only to interpret various actions and combine them into event chains, but also to precompile all static information and strip dynamic information. In addition, the test script parser also marks the source and acquisition method of all dynamic information, so that when the sub-engine executes the test task, it can skip the stage of interpreting the test script and directly obtain the required dynamic information.

[0094] (2) A test task allocation manager is used to split the elements in the test event chain into several test branches that can be executed in parallel according to certain rules based on the specific meaning of the elements in the test event chain, and to distribute each task based on the matching degree between the current distributed processors and the test branches.

[0095] (3) Test engine manager: It is used to monitor the busyness of each distributed test engine during the entire test process, and is responsible for any configuration and coordination work required by each test engine. In addition, the interface with external modules such as the test monitor is also the responsibility of the test engine manager.

[0096] (4) Test data manager is used to collect and summarize all test data for evaluation and analysis after the test is completed. At the same time, it records the test process to lay the foundation for the re-creation of the test process. In addition, it records the changes made to the test environment during the test task so that when the test is completed, it can quickly return to the site to provide data reference and basis.

[0097] (5) The test sub-engine (i.e., distributed test executor) is used to receive specific test branch tasks and is responsible for the execution of specific tasks. It needs to interact with other modules of the test subsystem, other test executors, and various software and hardware models of the simulation support platform.

[0098] Based on any of the above embodiments, the test main engine 130 and the test sub-engine 140 are connected via a test network.

[0099] Specifically, the test main engine 130 and the test sub-engine 140 are connected via a test network, thereby avoiding occupying the internal network bandwidth of the ATC automatic test system, improving the data transmission speed in the ATC automatic test system, and further improving the test efficiency of the system.

[0100] Based on any of the above embodiments, the format of the test script is XML.

[0101] Specifically, XML is an extensible markup language, a subset of the standard generalized markup language, and is a markup language used to mark electronic files to make them structured. In electronic computers, tags refer to information symbols that can be understood by computers. Through such tags, computers can process various information such as articles. It can be used to mark data and define data types. It is a source language that allows users to define their own markup languages.

[0102] The test script format in the embodiment of the present invention is XML, so that the tester can edit the test script according to the test requirements to accurately complete the test of the ATC system.

[0103] Based on any of the above embodiments, the present invention provides an ATC automatic testing method based on the ATC automatic testing system as described in any of the above embodiments, such as Figure 7 As shown, the method includes:

[0104] Step 710: Generate a corresponding test script through a test script editor based on the interactive message of the test system and the configuration file of the tested system information; the format of each test script is the same;

[0105] Step 720: parse the test script through the test monitor, generate a corresponding test sequence model, and send the test sequence model to the test main engine;

[0106] Step 730: Generate corresponding test tasks based on the test sequence model through the test main engine, send each test task to the corresponding test sub-engine, and send the test data corresponding to each test task to the test monitor, so that the test monitor monitors each test task;

[0107] Step 740: Interact with the semi-physical simulation test system through the test sub-engine to execute the test task.

[0108] Specifically, through the test script editor, a good human-computer interaction interface is provided to automatically generate test scripts for test scenarios, avoiding the difficulty of manually compiling test scripts for testers and the errors that may be caused by manually compiling scripts; because the test scripts can be saved, for the retest of the same test case, it is only necessary to rerun the previous test script, which greatly improves the test efficiency and accuracy. At the same time, through the test monitor, testers can effectively control the execution of automatic tests and observe and track the results of automatic tests. In addition, through the automated test main engine and test sub-engine, efficient execution of tests can be achieved, and it has high repeatability. The same case can be tested repeatedly, and the conditions and test results of each test are guaranteed to be better than manual testing. In addition, the test sub-engine can be used to flexibly increase and modify the test objects connected to the test, which has strong versatility and compatibility.

[0109] Based on any of the above embodiments, based on the interactive message of the test system and the configuration file of the tested system information, a corresponding test script is generated through a test script editor, including:

[0110] Generate a corresponding configuration file based on the interactive message of the test system and the information of the system under test, so that the test script editor reads the corresponding field from the database based on the configuration file and obtains the interface configuration information corresponding to each test script;

[0111] Generate corresponding test scripts based on the interface configuration information corresponding to each test script.

[0112] Specifically, the automatic test environment focuses as much as possible on the construction of the test framework and the parsing of the test script. The configuration file library stores the configuration files corresponding to the test system's interactive messages and the tested system information, that is, the configuration files can be used to describe the test interactive messages and the tested system information. The database and the semi-physical simulation test system use the same database. The test script editor reads the corresponding fields in the database according to the configuration file for editing the test script and configuring the message interface.

[0113] A corresponding configuration file is generated based on the interactive messages of the test system and the information of the system under test, so that the test script editor reads the corresponding fields from the database based on the configuration file and obtains the interface configuration information corresponding to each test script, thereby accurately and quickly generating the corresponding test script based on the interface configuration information corresponding to each test script.

[0114] 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. An ATC automatic test system, characterized in that: include: Test script editor, test monitor, test main engine, multiple test sub-engines and semi-physical simulation test system, each test sub-engine is deployed in a distributed manner; Among them, the test script editor is used to generate corresponding test scripts based on the interactive messages of the test system and the configuration files of the tested system information; the test monitor is used to parse the test script, generate the corresponding test sequence model, and send the test sequence model to the test main engine; the test main engine is used to generate corresponding test tasks based on the test sequence model, and send each test task to the corresponding test sub-engine, and send the test data corresponding to each test task to the test monitor, so that the test monitor monitors each test task; the test sub-engine is used to interact with the semi-physical simulation test system to execute the test task; the format of each test script is the same; The test script editor is built based on the model driven architecture MDA; Accordingly, the test script of the test script editor is generated based on the following process: Package the model in the model view controller MVC to form the platform-independent model PIM in the model driven architecture MDA; Based on the configuration file, convert the platform-independent model PIM into a platform-dependent model PSM; Based on the grammatical rules of the code, convert the platform-specific model PSM into the test script; The test monitor includes a model layer, a presentation layer and a control layer; The model layer is used to parse the test script, the control layer is used to generate a corresponding test sequence model based on the parsed test script, and send the test sequence model to the test main engine; the presentation layer is used to display the test data corresponding to each test task.

2. The ATC automatic test system according to claim 1, characterized in that: Also includes: Configure the file repository and database; The configuration file library is used to generate corresponding configuration files based on the interaction messages of the test system and the information of the system under test. The database stores interface configuration information corresponding to each test script, so that the test script editor reads the corresponding fields from the database based on the configuration file and obtains the interface configuration information corresponding to each test script.

3. The ATC automatic test system according to claim 1, characterized in that: The model layer, the presentation layer and the control layer are respectively constructed in a loosely coupled manner.

4. The ATC automatic test system according to any one of claims 1 to 3, characterized in that: The test main engine includes a test script parser, a test task distributor, a test engine manager and a test data manager; The test script parser is used to parse the test sequence model and generate a test event chain; The test task distributor is used to generate multiple test tasks based on the test event chain, and distribute each test task to a corresponding test sub-engine; The test engine manager is used to monitor the busyness of each test sub-engine and schedule each test sub-engine; the test data manager is used to collect the test data corresponding to each test task and send the test data to the test monitor.

5. The ATC automatic test system according to any one of claims 1 to 3, characterized in that: The test main engine and the test sub-engine are connected via a test network.

6. The ATC automatic test system according to any one of claims 1 to 3, characterized in that: The format of the test script is XML.

7. An ATC automatic test method based on the ATC automatic test system according to any one of claims 1 to 6, characterized in that: include: Based on the interactive messages of the test system and the configuration file of the tested system information, a corresponding test script is generated through the test script editor; The format of each test script is the same; Parsing the test script by the test monitor, generating a corresponding test sequence model, and sending the test sequence model to the test main engine; Generate corresponding test tasks based on the test sequence model through the test main engine, send each test task to the corresponding test sub-engine, and send test data corresponding to each test task to the test monitor, so that the test monitor monitors each test task; The test task is executed by interacting with the semi-physical simulation test system through the test sub-engine.

8. The ATC automatic testing method according to claim 7, characterized in that: The configuration file based on the interactive message of the test system and the information of the system under test generates a corresponding test script through the test script editor, including: Generate a corresponding configuration file based on the interactive message of the test system and the information of the system under test, so that the test script editor reads the corresponding field from the database based on the configuration file and obtains the interface configuration information corresponding to each test script; Generate corresponding test scripts based on the interface configuration information corresponding to each test script.

Citation Information

Patent Citations

  • Method and system for testing railway signal software

    CN104239217A

  • Model driven development method based on specific domain modeling

    CN106406906A

  • An engine for automatic testing of a CBTC system

    CN109710513A

  • Automatic software test system for steel processes

    KR1020140084698A