CN115495382A - Automatic test system, automatic test method, automatic test equipment and storage medium - Google Patents

Automatic test system, automatic test method, automatic test equipment and storage medium Download PDF

Info

Publication number
CN115495382A
CN115495382A CN202211301814.XA CN202211301814A CN115495382A CN 115495382 A CN115495382 A CN 115495382A CN 202211301814 A CN202211301814 A CN 202211301814A CN 115495382 A CN115495382 A CN 115495382A
Authority
CN
China
Prior art keywords
automatic test
code
test case
module
devops
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211301814.XA
Other languages
Chinese (zh)
Inventor
许思琦
徐雅琳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Agricultural Bank of China
Original Assignee
Agricultural Bank of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Agricultural Bank of China filed Critical Agricultural Bank of China
Priority to CN202211301814.XA priority Critical patent/CN115495382A/en
Publication of CN115495382A publication Critical patent/CN115495382A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3676Test management for coverage analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/368Test management for test version control, e.g. updating test cases to a new software version
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The invention discloses an automatic test system, an automatic test method, automatic test equipment and a storage medium. The system comprises: the system comprises an establishing module, a constructing module, an updating module and a maintaining module; the establishing module is used for establishing a binding relation set of an automatic test case and a code class of the DevOps assembly line; the building module is used for building an automatic test case of the DevOps assembly line based on the binding relation set; the updating module is used for updating the automatic test case of the DevOps pipeline; the maintenance module is used for periodically maintaining the automatic test cases of the DevOps assembly line. The system realizes the automatic system test based on code deployment by establishing a binding relation set of an automatic test case and a code class.

Description

Automatic test system, automatic test method, automatic test equipment and storage medium
Technical Field
The embodiment of the invention relates to the technical field of automatic testing, in particular to an automatic testing system, an automatic testing method, automatic testing equipment and a storage medium.
Background
DevOps is a practical method for shortening the time from system change to deployment to production environment on the premise of ensuring high quality. Continuous integration and continuous delivery are important links in DevOps, and can help project teams to extremely increase the speed and quality of software delivery.
The system realizes the automation of the processes of development, construction, test, deployment and the like of projects by relying on a DevOps deployment pipeline. There have been a variety of ripe DevOps pipeline tools in industry at present, can realize that the IT tool chain in the software delivery process makes progress for whole project team reduces the time loss, and the collaborative work more high-efficiently.
The fast iterative nature of the DevOps project requires test personnel to develop the test more efficiently and accurately. Automatic tests in current pipeline deployment are mostly based on unit tests and integrated tests, and system test automation practices related to business logic are lacked; meanwhile, most of the current automated testing frameworks develop automated testing based on a full-scale or semi-full-scale mode, so that the system burden is increased, and more redundancy exists in testing links.
Disclosure of Invention
The invention provides an automatic test system, an automatic test method, equipment and a storage medium, which are used for solving the problems that the existing test method aiming at a DevOps project lacks an automatic system test related to business logic, and the current automatic test framework increases the system load and the test links are redundant.
According to an aspect of the present invention, there is provided an automated test system comprising: the system comprises an establishing module, a constructing module, an updating module and a maintaining module;
the establishing module is used for establishing a binding relation set of an automatic test case and a code class of the DevOps assembly line;
the building module is used for building an automatic test case of the DevOps assembly line based on the binding relationship set;
the updating module is used for updating the automatic test case of the DevOps pipeline;
the maintenance module is used for periodically maintaining the automatic test cases of the DevOps pipeline.
According to another aspect of the present invention, there is provided an automated testing method performed by an automated testing system according to any one of the embodiments of the present invention, the method including:
establishing a binding relation set of an automatic test case and a code class of the DevOps assembly line;
constructing an automatic test case of the DevOps pipeline based on the binding relationship set;
updating the automatic test case of the DevOps pipeline;
and periodically maintaining the automatic test cases of the DevOps pipeline.
According to another aspect of the present invention, there is provided an electronic apparatus including:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein,
the memory stores a computer program executable by the at least one processor, the computer program being executable by the at least one processor to enable the at least one processor to perform the automated testing method of any of the embodiments of the present invention.
According to another aspect of the present invention, there is provided a computer-readable storage medium storing computer instructions for causing a processor to implement an automated testing method according to any one of the embodiments of the present invention when executed.
According to the technical scheme of the embodiment of the invention, a binding relation set of an automatic test case and a code class of a DevOps assembly line is established through an establishing module; constructing an automatic test case of the DevOps pipeline based on the binding relationship set through a construction module; updating the automatic test case of the DevOps pipeline through an updating module; and the maintenance module periodically maintains the automatic test cases of the DevOps pipeline. The beneficial effect of realizing the automatic system test based on code deployment is achieved.
It should be understood that the statements in this section are not intended to identify key or critical features of the embodiments of the present invention, nor are they intended to limit the scope of the invention. Other features of the present invention will become apparent from the following description.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
Fig. 1 is a schematic flow chart of an automated testing system according to an embodiment of the present invention;
fig. 2 is a schematic structural diagram of an automated testing system according to a second embodiment of the present invention;
fig. 3 is a schematic structural diagram of an automated testing method according to a third embodiment of the present invention;
fig. 4 is a schematic structural diagram of an electronic device of an automated testing method according to an embodiment of the present invention.
Detailed Description
In order to make the technical solutions of the present invention better understood, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention. It should be understood that the various steps recited in method embodiments of the present invention may be performed in a different order, and/or performed in parallel. Moreover, method embodiments may include additional steps and/or omit performing the illustrated steps. The scope of the invention is not limited in this respect.
The term "include" and variations thereof as used herein are open-ended, i.e., "including but not limited to". The term "based on" is "based, at least in part, on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Relevant definitions for other terms will be given in the following description.
It should be noted that the terms "first," "second," and the like in the description and claims of the present invention and in the drawings described above are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the invention described herein are capable of operation in sequences other than those illustrated or described herein. Moreover, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
It is noted that references to "a", "an", and "the" modifications in the present invention are intended to be illustrative rather than limiting, and that those skilled in the art will recognize that reference to "one or more" unless the context clearly dictates otherwise.
The names of messages or information exchanged between devices in the embodiments of the present invention are for illustrative purposes only, and are not intended to limit the scope of the messages or information.
Example one
Fig. 1 is a schematic flow chart of an automated testing system according to an embodiment of the present invention, which is applicable to an automated testing situation of a DevOps pipeline, wherein the automated testing system may be implemented by software and/or hardware and is generally integrated on an electronic device, in this embodiment, the electronic device includes but is not limited to: and a server.
As shown in fig. 1, an automated testing system according to a first embodiment of the present invention includes: the building module 110, the building module 120, the updating module 130 and the maintenance module 140;
an establishing module 110, configured to establish a binding relationship set between an automatic test case and a code class of a DevOps pipeline;
a building module 120, configured to build an automated test case of the DevOps pipeline based on the binding relationship set;
an update module 130, configured to update the automated test case of the DevOps pipeline;
and the maintenance module 140 is used for periodically maintaining the full-scale automatic test cases of the DevOps pipeline.
The system realizes automation of processes such as development, construction, testing, deployment and the like of projects by relying on a DevOps deployment pipeline. The deployment pipeline refers to a series of processes from submission to the version control library to acceptance and delivery of software, and is embodied as whole process control in a tool for continuous integration and release management, wherein the processes comprise the steps of submitting changes to the version control library, passing various tests and deployments on the changes, completing release and the like.
In this embodiment, the creating module 110 may be understood as a software module for creating a binding relationship set, and the creating module 110 may be implemented by writing codes. The set of binding relationships may include a correspondence of test cases to code classes.
The building module 110 may be configured to build a binding relationship set based on a test case set in an initial full-automation test case library in the system and a code class set included in a code library. Specifically, the establishing module 110 may determine the binding relationship set according to the corresponding relationship between the test cases in the test case set and the code classes in the code class set. The test cases and the code classes are in a many-to-many relationship.
Illustratively, the system initial full-scale automation test case library is H case ,H case The test case set contained in the test case is x { x 1 ,x 2 ,……,x i ,……,x n-1 ,x n }; the code base is H code ,H code The code set contained in is c { c } 1 ,c 2 ,……,c i ,……,c n-1 ,c n }。
Further, the establishing module 110 is specifically configured to: detecting a coverage code and a class of the code in a test execution process by a test coverage rate tool; obtaining the corresponding relation between the automatic test case and the code class by running the full test case; and establishing a binding relation set of the automatic test cases and the code classes of the DevOps assembly line based on the corresponding relation.
The method by which the test coverage tool detects the coverage code and the class of the code in the test execution process is not limited. For example, the test coverage tool may detect the coverage code and the class of the code in the test execution process by a method such as code dyeing. The corresponding relation between the automatic test cases and the code classes can be obtained by running the full test cases, so that a binding relation set R of the automatic test cases and the code classes can be established.
In this embodiment, the building module 120 may be understood as a software module for building an automated test case, and the building module 120 may be implemented by writing a code.
The building module 120 is configured to build an automated test case of the DevOps pipeline based on a correspondence between the automated test case in the relationship set and the code class. The specific construction process is not described in detail herein.
It should be noted that the building module 120 is also used for contrasting the code differences by the version control tool, thereby feeding back the test flow.
Specifically, the building block is further configured to: comparing the code of the current DevOps pipeline with the code of the last constructed DevOps pipeline through a version control tool to determine a difference code; detecting a class to which the difference code belongs; and executing the automatic test cases through an automatic test tool, and recording the execution condition until all the automatic test cases are completely executed and passed.
The automatic deployment pipeline compares the difference between the code and the last code through a version control tool during each construction, detects the class of the code, executes the binding test case through the automatic test tool, records the execution passing condition, and automatically enters the next link if all cases are executed to pass.
In this embodiment, the update module 130 may be understood as a software module for performing test case update, and the update module 130 may be implemented by writing code.
The updating module 130 can be used for updating, dynamically adding or deleting the automated test cases of the DevOps pipeline.
It will be appreciated that if the system detects that an execution case fails, the system will automatically notify the development responsible person and the test responsible person. The system can automatically provide the code classes corresponding to the failed test cases to the development responsible persons so as to reduce the investigation range of developers. If the test case fails due to the code logic problem after the test, the code can be modified by a developer, and the modified code is submitted again until the test is passed; if the developer verifies that the code is correct, the automatic test case is checked by the test responsible person, and if the automatic test case needs to be updated, the automatic test case is rewritten by the tester and submitted to the test case library. In this embodiment, the maintenance module 140 may be understood as an automated test case for maintaining a DevOps pipeline, and the maintenance module 140 may be implemented by writing code.
The maintenance module 140 may be used for refreshing the automatic test cases and regularly maintaining the automatic test cases. For newly added business logic in the code class, there may be a case of automatic test case coverage completion, for which an inspection period and a test coverage threshold may be set in advance by a project process administrator, so that the maintenance module 140 may maintain the automatic test cases of the DevOps pipeline based on the inspection period and the test coverage threshold.
Further, the maintenance module 140 is specifically configured to: running a full-scale automatic test case of the DevOps assembly line according to a preset check period; if a failed automated test case which cannot be executed exists, sending the failed automated test case to the updating module for updating; and if the code coverage rate is lower than a preset threshold value, sending prompt information to prompt a test responsible person to update the automatic test case library.
The preset check period may be understood as a detection period of a full-scale automated test case of the DevOps pipeline set in advance, and the full-scale automated test case of the DevOps pipeline may be operated every 48 hours, for example.
The preset threshold may be understood as a preset code coverage threshold, and the preset threshold may support setting according to different dimensions of the whole system, the code module, and the like. Code coverage is a measure in software testing and describes the proportion and degree of testing of source code in a program, and the proportion is called code coverage.
Wherein, the maintenance module 140 is specifically configured to: the full-scale automatic test cases are periodically operated according to the inspection period, and if the test cases do not pass the execution, the codes can be updated through the updating module 130; for the case that the test coverage is lower than the preset threshold, the system may prompt the test responsible person to update the case library, where the prompting manner is not limited.
In an automated testing system provided by an embodiment of the present invention, a binding relationship set between an automated test case and a code class of a DevOps pipeline is established through an establishing module; then, constructing an automatic test case of the DevOps pipeline based on the binding relation set through a construction module; then, updating the automatic test case of the DevOps pipeline through an updating module; and finally, periodically maintaining the automatic test cases of the DevOps pipeline through a maintenance module. The system can develop system-level interface and interface automatic tests through a DevOps pipeline platform external connection automatic test tool. The system realizes precise and customized test through accurate matching of the automatic test case and the code class; the correctness and the effectiveness of the test are ensured through a complete test case updating mechanism and a fresh-keeping mechanism.
On the basis of the above-described embodiment, a modified embodiment of the above-described embodiment is proposed, and it is to be noted here that, in order to make the description brief, only the differences from the above-described embodiment are described in the modified embodiment.
Further, the system includes a DevOps pipeline platform and an automated testing tool.
The automatic test system provided by the embodiment of the invention can be a software test system which is constructed by a DevOps pipeline platform external connection automatic test tool.
Example two
Fig. 2 is a schematic structural diagram of an automated testing system according to a second embodiment of the present invention, which is optimized based on the above embodiments. In the present embodiment, the update module 130 is further embodied as a first update unit 131 and a second update unit 132. Please refer to the first embodiment for a detailed description of the present embodiment.
In this embodiment, the update module 130 includes a first update unit 131, where the first update unit 131 is configured to:
acquiring an update code of an automatic test case of the DevOps pipeline;
detecting whether the updating code contains a new class or not;
if yes, running a full test case and updating the binding relation set.
Wherein the update code may be modified code.
The first updating unit 131 is configured to automatically run a full number of test cases and update the binding relationship set R if it is detected that the code includes a new added class. It is not limited by which way the first updating unit 131 detects whether the new class is included in the update code.
It should be noted that, when it is detected that the code includes the new class, the test responsible person may also be notified to confirm whether to add the new test case. The method of notifying the person responsible for testing to confirm whether to add the new test case is not particularly limited.
Further, the update module 130 includes a second update unit 132, where the second update unit 132 is configured to:
acquiring an update code of an automatic test case of the DevOps pipeline;
if the deletion class in the updating code is detected, comparing the automatic test cases corresponding to the deletion class, and prompting a comparison result to a test responsible person;
and after receiving a deletion confirmation instruction, deleting the automatic test case corresponding to the deletion class.
The manner of prompting the comparison result to the test responsible person is not limited, and the comparison result may be displayed on the display in a pop-up window manner to prompt the test responsible person. The confirmation deleting instruction can be an instruction sent by a test responsible person to confirm that the automatic test case is deleted.
Wherein, the second updating unit 132 may be configured to: if the deleted class in the code is detected, comparing the automatic test cases corresponding to the deleted class to prompt the test responsibility to check whether the automatic test cases need to be updated, and if the test cases are only related to the deleted class, informing the test responsible person to delete the test cases after confirmation.
The automated testing system provided in the second embodiment of the present invention embodies the components of the update module 130. On one hand, the system can ensure the accuracy of the test to the maximum extent through the accurate matching of the test case and the code class, and avoids the bias caused by human factors, and on the other hand, the system can more quickly position the key nodes of the process by combining the assembly line deployment and the automatic test, thereby greatly improving the test efficiency; in another aspect, the system can ensure the correctness and validity of the test through a complete test case updating mechanism.
EXAMPLE III
Fig. 3 is a schematic structural diagram of an automated testing method according to a third embodiment of the present invention, where the apparatus is suitable for use in an automated testing situation of a DevOps pipeline, and the method can be executed by the automated testing system provided in the third embodiment, where the system may be composed of a DevOps pipeline platform external automated testing tool, and the method specifically includes the following steps:
step 110, establishing a binding relation set of the automatic test case and the code class of the DevOps pipeline.
Specifically, the specific process of establishing the binding relationship set includes: detecting a coverage code and a class of the code in a test execution process through a test coverage rate tool; obtaining the corresponding relation between the automatic test case and the code class by running the full test case; and establishing a binding relation set of the automatic test case and the code class of the DevOps assembly line based on the corresponding relation.
And 120, constructing an automatic test case of the DevOps pipeline based on the binding relationship set.
Further, after the automated test case of the DevOps pipeline is constructed, the method further comprises the following steps: comparing the code of the current DevOps pipeline with the code of the DevOps pipeline constructed last time through a version control tool to determine a difference code; detecting a class to which the difference code belongs; and executing the automatic test cases through an automatic test tool, and recording the execution condition until all the automatic test cases are completely executed and passed.
And step 130, updating the automatic test case of the DevOps pipeline.
Specifically, updating the automated test case of the DevOps pipeline includes: acquiring an update code of an automatic test case of the DevOps pipeline; detecting whether the updating code contains a new class or not; if yes, running a full test case and updating the binding relation set.
Specifically, updating the automated test case of the DevOps pipeline includes: acquiring an update code of an automatic test case of the DevOps pipeline; if the deleted class in the update code is detected, comparing the automatic test cases corresponding to the deleted class, and prompting a comparison result to a test responsible person; and after receiving a deletion confirmation instruction, deleting the automatic test case corresponding to the deletion class.
And step 140, maintaining the automatic test case of the DevOps pipeline periodically.
Specifically, the periodically maintaining the automatic test case of the DevOps pipeline includes: running a full-scale automatic test case of the DevOps assembly line according to a preset check period; if a failed automated test case which cannot be executed exists, sending the failed automated test case to the updating module for updating; and if the code coverage rate is lower than a preset threshold value, sending prompt information to prompt a test responsible person to update the automatic test case library.
The third embodiment of the invention provides an automated testing method, first establish DevOps pipeline automated test case and code class binding relationship set; then constructing an automatic test case of the DevOps pipeline based on the binding relationship set; and finally, periodically maintaining the automatic test cases of the DevOps pipeline. According to the method, accurate and customized test can be realized through accurate matching of the test cases and the codes; the method can ensure the correctness and the effectiveness of the test through a complete test case updating mechanism and a fresh-keeping mechanism.
Example four
FIG. 4 shows a schematic block diagram of an electronic device 10 that may be used to implement an embodiment of the invention. Electronic devices are intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The components shown herein, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the inventions described and/or claimed herein. An automated test system is deployed within the electronic device 10.
As shown in fig. 4, the electronic device 10 includes at least one processor 11, and a memory communicatively connected to the at least one processor 11, such as a Read Only Memory (ROM) 12, a Random Access Memory (RAM) 13, and the like, wherein the memory stores a computer program executable by the at least one processor, and the processor 11 can perform various suitable actions and processes according to the computer program stored in the Read Only Memory (ROM) 12 or the computer program loaded from a storage unit 18 into the Random Access Memory (RAM) 13. In the RAM 13, various programs and data necessary for the operation of the electronic apparatus 10 can also be stored. The processor 11, the ROM 12, and the RAM 13 are connected to each other via a bus 14. An input/output (I/O) interface 15 is also connected to the bus 14.
A number of components in the electronic device 10 are connected to the I/O interface 15, including: an input unit 16 such as a keyboard, a mouse, or the like; an output unit 17 such as various types of displays, speakers, and the like; a storage unit 18 such as a magnetic disk, an optical disk, or the like; and a communication unit 19 such as a network card, modem, wireless communication transceiver, etc. The communication unit 19 allows the electronic device 10 to exchange information/data with other devices via a computer network such as the internet and/or various telecommunication networks.
The processor 11 may be a variety of general and/or special purpose processing components having processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various specialized Artificial Intelligence (AI) computing chips, various processors running machine learning model algorithms, a Digital Signal Processor (DSP), and any suitable processor, controller, microcontroller, or the like. The processor 11 performs the various methods and processes described above, such as automated testing methods.
In some embodiments, the automated testing method may be implemented as a computer program tangibly embodied in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program may be loaded and/or installed onto the electronic device 10 via the ROM 12 and/or the communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the automated testing method described above may be performed. Alternatively, in other embodiments, the processor 11 may be configured to perform the automated testing method by any other suitable means (e.g., by means of firmware).
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuitry, field Programmable Gate Arrays (FPGAs), application Specific Integrated Circuits (ASICs), application Specific Standard Products (ASSPs), system on a chip (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, receiving data and instructions from, and transmitting data and instructions to, a storage system, at least one input device, and at least one output device.
A computer program for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the computer programs, when executed by the processor, cause the functions/acts specified in the flowchart and/or block diagram block or blocks to be performed. A computer program can execute entirely on a machine, partly on the machine, as a stand-alone software package, partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of the present invention, a computer-readable storage medium may be a tangible medium that can contain, or store a computer program for use by or in connection with an instruction execution system, apparatus, or device. A computer readable storage medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. Alternatively, the computer readable storage medium may be a machine readable signal medium. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which a user can provide input to the electronic device. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic, speech, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a back-end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), wide Area Networks (WANs), blockchain networks, and the Internet.
The computing system may include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server can be a cloud server, also called a cloud computing server or a cloud host, and is a host product in a cloud computing service system, so that the defects of high management difficulty and weak service expansibility in the traditional physical host and VPS service are overcome.
It should be understood that various forms of the flows shown above may be used, with steps reordered, added, or deleted. For example, the steps described in the present invention may be executed in parallel, sequentially, or in different orders, and are not limited herein as long as the desired result of the technical solution of the present invention can be achieved.
The above-described embodiments should not be construed as limiting the scope of the invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions may be made, depending on design requirements and other factors. Any modification, equivalent replacement, and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (10)

1. An automated testing system is characterized by comprising an establishing module, a constructing module, an updating module and a maintaining module;
the establishing module is used for establishing a binding relation set of an automatic test case and a code class of the DevOps assembly line;
the building module is used for building an automatic test case of the DevOps assembly line based on the binding relationship set;
the updating module is used for updating the automatic test case of the DevOps pipeline;
the maintenance module is used for periodically maintaining the automatic test cases of the DevOps pipeline.
2. The system of claim 1, wherein the system comprises a DevOps pipeline platform and an automated testing tool.
3. The system of claim 1, wherein the establishing module is specifically configured to:
detecting a coverage code and a class of the code in a test execution process by a test coverage rate tool;
obtaining the corresponding relation between the automatic test case and the code class by running the full test case;
and establishing a binding relation set of the automatic test case and the code class of the DevOps assembly line based on the corresponding relation.
4. The system of claim 1, wherein the build module is further configured to:
comparing the code of the current DevOps pipeline with the code of the last constructed DevOps pipeline through a version control tool to determine a difference code;
detecting a class to which the difference code belongs;
and executing the automatic test cases through an automatic test tool, and recording the execution condition until all the automatic test cases are completely executed and passed.
5. The system of claim 1, wherein the update module comprises a first update unit configured to:
acquiring an update code of an automatic test case of the DevOps pipeline;
detecting whether the updating code contains a new class or not;
if yes, running a full test case and updating the binding relation set.
6. The system of claim 1, wherein the update module comprises a second update unit configured to:
acquiring an update code of an automatic test case of the DevOps pipeline;
if the deleted class in the update code is detected, comparing the automatic test cases corresponding to the deleted class, and prompting a comparison result to a test responsible person;
and after receiving a deletion confirmation instruction, deleting the automatic test case corresponding to the deletion class.
7. The system of claim 1, wherein the maintenance module is specifically configured to:
running a full-scale automatic test case of the DevOps assembly line according to a preset check period;
if a failed automated test case which cannot be executed exists, sending the failed automated test case to the updating module for updating;
and if the code coverage rate is lower than a preset threshold value, sending prompt information to prompt a test responsible person to update the automatic test case library.
8. An automated testing method, the method being performed by the automated testing system of any of claims 1-7, the method comprising:
establishing a binding relation set of an automatic test case and a code class of the DevOps assembly line;
constructing an automatic test case of the DevOps pipeline based on the binding relationship set;
updating the automatic test case of the DevOps pipeline;
and maintaining the automatic test cases of the DevOps pipeline periodically.
9. An electronic device, characterized in that the electronic device comprises:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein,
the memory stores a computer program executable by the at least one processor to enable the at least one processor to perform the automated testing method of claim 8.
10. A computer-readable storage medium having stored thereon computer instructions for causing a processor, when executed, to implement the automated testing method of claim 8.
CN202211301814.XA 2022-10-24 2022-10-24 Automatic test system, automatic test method, automatic test equipment and storage medium Pending CN115495382A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211301814.XA CN115495382A (en) 2022-10-24 2022-10-24 Automatic test system, automatic test method, automatic test equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211301814.XA CN115495382A (en) 2022-10-24 2022-10-24 Automatic test system, automatic test method, automatic test equipment and storage medium

Publications (1)

Publication Number Publication Date
CN115495382A true CN115495382A (en) 2022-12-20

Family

ID=84473847

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211301814.XA Pending CN115495382A (en) 2022-10-24 2022-10-24 Automatic test system, automatic test method, automatic test equipment and storage medium

Country Status (1)

Country Link
CN (1) CN115495382A (en)

Similar Documents

Publication Publication Date Title
US10657030B2 (en) System and method for testing software in a multi-platform testing environment
US9824002B2 (en) Tracking of code base and defect diagnostic coupling with automated triage
CN111309343B (en) Development deployment method and device
CN109299124B (en) Method and apparatus for updating a model
CN112199355A (en) Data migration method and device, electronic equipment and storage medium
WO2023163846A1 (en) System and methods for application failover automation
CN115495382A (en) Automatic test system, automatic test method, automatic test equipment and storage medium
CN115509602A (en) Project management method, device, equipment and storage medium
CN115826955A (en) Application publishing method, system, electronic device and storage medium
CN114693116A (en) Method and device for detecting code review validity and electronic equipment
US20210357315A1 (en) Method and apparatus for calculating a software stability index
CN113360346A (en) Method and apparatus for training a model
CN112328473A (en) Code automation integration test method and device and electronic equipment
CN111126871A (en) Data processing method, device and equipment
CN115456558A (en) Method and device for online project service, electronic equipment and storage medium
CN117667192A (en) Sustained delivery method, device, equipment and storage medium based on Devops
CN107818048B (en) Computer code branch integrated quality inspection method and related equipment
CN114416164A (en) Software release method and device, electronic equipment and storage medium
CN114416569A (en) Code change information generation method and device, electronic equipment and storage medium
CN117648252A (en) Function test method and device for software application, electronic equipment and storage medium
CN116909925A (en) Test flow management method and management system based on agile iteration
CN114238149A (en) Batch testing method of accounting system, electronic device and storage medium
CN115878168A (en) Software development method and device, electronic equipment and storage medium
CN115599682A (en) Environment availability detection method, device, equipment and storage medium
CN114416168A (en) Version number processing method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination