CN112256309A - Program upgrading method, device, equipment and storage medium - Google Patents
Program upgrading method, device, equipment and storage medium Download PDFInfo
- Publication number
- CN112256309A CN112256309A CN202011264778.5A CN202011264778A CN112256309A CN 112256309 A CN112256309 A CN 112256309A CN 202011264778 A CN202011264778 A CN 202011264778A CN 112256309 A CN112256309 A CN 112256309A
- Authority
- CN
- China
- Prior art keywords
- version
- program
- test
- new version
- program corresponding
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000012360 testing method Methods 0.000 claims abstract description 243
- 238000004590 computer program Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 9
- 230000003287 optical effect Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 239000013307 optical fiber Substances 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
The invention discloses a program upgrading method, a device, equipment and a storage medium. The method comprises the following steps: sequentially sending the programs corresponding to the at least two new versions which are acquired in sequence to a test environment, and testing the programs corresponding to the at least two new versions in the test environment; replacing the program corresponding to the new version with the low version passing the test with the program corresponding to the old version in the formal environment according to the version heights of the at least two new versions; the program corresponding to the new version with the high version passing the test is replaced by the program corresponding to the new version with the low version passing the test in the formal environment.
Description
Technical Field
The present invention relates to computer technologies, and in particular, to a method, an apparatus, a device, and a storage medium for upgrading a program.
Background
For programs, updates are always present and updates to programs are very frequent.
Before a program is released, an environment in which development testers test the program is called a "test environment"; after a program is released, the environment in which it runs facing real users is called a "formal environment".
Generally, there is only one "formal environment", there may be a plurality of "test environments", and the "test environments" may be limited in resources, resulting in slow operation speed. If a new version of a program (e.g., version 1.1) is to replace an old version of a program (e.g., version 1.0) in the "formal environment", the new version of the program needs to be tested in the "test environment" first, which may take a long time. When the test time of the new version program in the "test environment" is longer than the interval time of the version update (for example, version 1.1 has not been tested yet, and updated version 1.2 has been developed), the preparation time is not enough, and the new version program is always too late to replace the program in the "formal environment", so that the upgrade efficiency is low, and the user experience is poor.
Disclosure of Invention
Embodiments of the present invention provide a method, an apparatus, a device, and a storage medium for upgrading a program, so as to quickly move a program corresponding to a new version from a test environment to a formal environment, thereby reducing preparation time of the program in the test environment as a whole, and enabling the program of the new version to be replaced in the formal environment in time.
In a first aspect, an embodiment of the present invention provides a program upgrading method, including:
sequentially sending the programs corresponding to the at least two new versions which are acquired in sequence to a test environment, and testing the programs corresponding to the at least two new versions in the test environment;
replacing the program corresponding to the new version with the low version passing the test with the program corresponding to the old version in the formal environment according to the version heights of the at least two new versions;
and replacing the program corresponding to the new version with the high version passing the test with the program corresponding to the new version with the low version passing the test in the formal environment.
Further, the at least two programs corresponding to the new versions which are sequentially acquired are successively sent to a test environment, and the at least two programs corresponding to the new versions are tested in the test environment, including:
if the first new version is detected, establishing a first test task, sending the program corresponding to the first new version to a test environment, and testing the program corresponding to the first new version in the test environment;
and if a second new version is detected in the process of testing the program corresponding to the first new version, establishing a second testing task, sending the program corresponding to the second new version to a testing environment, and testing the program corresponding to the second new version in the testing environment, wherein the version of the first new version is lower than that of the second new version.
Further, replacing the program corresponding to the old version in the formal environment with the program corresponding to the new version with the lower version passing the test, including:
and after the program corresponding to the first new version passes the test, replacing the program corresponding to the first new version with the program in the formal environment.
Further, after the program corresponding to the first new version passes the test, replacing the program corresponding to the first new version with the program in the formal environment includes:
and after the program corresponding to the first new version passes the test, replacing the program corresponding to the first new version with the program in the formal environment, and deleting the program corresponding to the first new version in the test environment.
Further, replacing the program corresponding to the new version with the high version passing the test with the program corresponding to the new version with the low version passing the test in the formal environment, including:
and after the program corresponding to the second new version passes the test, replacing the program corresponding to the second new version with the program in the formal environment.
In a second aspect, an embodiment of the present invention further provides a program upgrading apparatus, where the apparatus includes:
the testing module is used for sequentially sending the programs corresponding to the at least two new versions which are acquired in sequence to a testing environment and testing the programs corresponding to the at least two new versions in the testing environment;
the first replacement module is used for replacing the program corresponding to the new version with the low version passing the test with the program corresponding to the old version in the formal environment according to the version heights of the at least two new versions;
and the second replacement module is used for replacing the program corresponding to the new version with the high version passing the test with the program corresponding to the new version with the low version passing the test in the formal environment.
Further, the test module is specifically configured to:
if the first new version is detected, establishing a first test task, sending the program corresponding to the first new version to a test environment, and testing the program corresponding to the first new version in the test environment;
and if a second new version is detected in the process of testing the program corresponding to the first new version, establishing a second testing task, sending the program corresponding to the second new version to a testing environment, and testing the program corresponding to the second new version in the testing environment, wherein the version of the first new version is lower than that of the second new version.
Further, the first replacement module is specifically configured to:
and after the program corresponding to the first new version passes the test, replacing the program corresponding to the first new version with the program in the formal environment.
In a third aspect, an embodiment of the present invention further provides a computer device, including a memory, a processor, and a computer program stored on the memory and executable on the processor, where the processor implements the program upgrading method according to any one of the embodiments of the present invention when executing the program.
In a fourth aspect, the embodiment of the present invention further provides a computer-readable storage medium, on which a computer program is stored, and the computer program, when executed by a processor, implements the program upgrading method according to any one of the embodiments of the present invention.
The method comprises the steps that the at least two programs corresponding to the new versions which are acquired in sequence are sequentially sent to a test environment, and the at least two programs corresponding to the new versions are tested in the test environment; replacing the program corresponding to the new version with the low version passing the test with the program corresponding to the old version in the formal environment according to the version heights of the at least two new versions; the program corresponding to the new version with the high version passing the test is replaced by the program corresponding to the new version with the low version passing the test in the formal environment, so that the program corresponding to the new version can be quickly moved from the test environment to the formal environment, the preparation time of the program in the test environment is integrally reduced, and the program of the new version can be timely replaced in the formal environment.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings needed to be used in the embodiments will be briefly described below, it should be understood that the following drawings only illustrate some embodiments of the present invention and therefore should not be considered as limiting the scope, and for those skilled in the art, other related drawings can be obtained according to the drawings without inventive efforts.
Fig. 1 is a flowchart of a program upgrading method according to a first embodiment of the present invention;
FIG. 1a is a flow chart of another method for upgrading a program according to an embodiment of the present invention;
fig. 2 is a schematic structural diagram of a program upgrading apparatus according to a second embodiment of the present invention;
fig. 3 is a schematic structural diagram of a computer device in a third embodiment of the present invention.
Detailed Description
The present invention will be described in further detail with reference to the accompanying drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the invention and are not limiting of the invention. It should be further noted that, for the convenience of description, only some of the structures related to the present invention are shown in the drawings, not all of the structures.
It should be noted that: like reference numbers and letters refer to like items in the following figures, and thus, once an item is defined in one figure, it need not be further defined and explained in subsequent figures. Meanwhile, in the description of the present invention, the terms "first", "second", and the like are used only for distinguishing the description, and are not to be construed as indicating or implying relative importance.
Example one
Fig. 1 is a flowchart of a program upgrading method according to an embodiment of the present invention, where this embodiment is applicable to a program upgrading situation, and the method may be executed by a program upgrading apparatus according to an embodiment of the present invention, where the program upgrading apparatus may be implemented in a software and/or hardware manner, as shown in fig. 1, the program upgrading method specifically includes the following steps:
and S110, sequentially sending the programs corresponding to the at least two new versions which are acquired in sequence to a test environment, and testing the programs corresponding to the at least two new versions in the test environment.
For example, if the version running in the formal environment is the 1.0 version, the at least two new versions may be the version 1.1 and the version 1.2, or the version 1.1, the version 1.2, and the version 1.3, which is not limited in this embodiment of the present invention.
The at least two new versions obtained in sequence may be obtained by obtaining a new version first and obtaining a new version during the process of testing the new version, for example, obtaining a new version 1.0 first and obtaining a new version 1.1 during the process of testing the new version 1.0.
For example, if a first new version is obtained first, a first test task is established, a program corresponding to the first new version is sent to a test environment, the program corresponding to the first new version is tested in the test environment, a second new version is detected in the process of testing the first new version, a second test task is established, the program corresponding to the second new version is sent to the test environment, the program corresponding to the second new version is tested in the test environment, a third new version is detected in the process of testing the second new version, a third test task is established, the program corresponding to the third new version is sent to the test environment, the program corresponding to the third new version is tested in the test environment, and so on.
Optionally, the sequentially obtained programs corresponding to the at least two new versions are successively sent to a test environment, and the testing of the programs corresponding to the at least two new versions in the test environment includes:
if the first new version is detected, establishing a first test task, sending the program corresponding to the first new version to a test environment, and testing the program corresponding to the first new version in the test environment;
and if a second new version is detected in the process of testing the program corresponding to the first new version, establishing a second testing task, sending the program corresponding to the second new version to a testing environment, and testing the program corresponding to the second new version in the testing environment, wherein the version of the first new version is lower than that of the second new version.
It should be noted that the second new version is a version obtained by updating the first new version, for example, if the first new version is 1.0, the second new version is 1.1.
And S120, replacing the program corresponding to the new version with the low version passing the test with the program corresponding to the old version in the formal environment according to the version heights of the at least two new versions.
Illustratively, if a first new version is detected, a first test task is established, a program corresponding to the first new version is sent to a test environment, and the program corresponding to the first new version is tested in the test environment; and if a second new version is detected in the process of testing the program corresponding to the first new version, establishing a second testing task, sending the program corresponding to the second new version to a testing environment, testing the program corresponding to the second new version in the testing environment, and replacing the program corresponding to the first new version with the program in a formal environment after the program corresponding to the first new version passes the testing.
And S130, replacing the program corresponding to the new version with the high version passing the test with the program corresponding to the new version with the low version passing the test in the formal environment.
Illustratively, if a first new version is detected, a first test task is established, a program corresponding to the first new version is sent to a test environment, and the program corresponding to the first new version is tested in the test environment; and if a second new version is detected in the process of testing the program corresponding to the first new version, establishing a second testing task, sending the program corresponding to the second new version to a testing environment, and testing the program corresponding to the second new version in the testing environment. After the program corresponding to the first new version passes the test, replacing the program corresponding to the first new version with the program in the formal environment; and after the program corresponding to the second new version passes the test, replacing the program corresponding to the second new version with the program in the formal environment.
The term "program" as used herein refers not only to the program itself but also to the data and output associated with the program.
Optionally, replacing the program corresponding to the old version in the formal environment with the program corresponding to the new version with the lower version that passes the test, including:
and after the program corresponding to the first new version passes the test, replacing the program corresponding to the first new version with the program in the formal environment.
Optionally, after the program corresponding to the first new version passes the test, replacing the program corresponding to the first new version with the program in the formal environment includes:
and after the program corresponding to the first new version passes the test, replacing the program corresponding to the first new version with the program in the formal environment, and deleting the program corresponding to the first new version in the test environment.
Optionally, replacing the program corresponding to the new version with the high version passing the test with the program corresponding to the new version with the low version passing the test in the formal environment, including:
and after the program corresponding to the second new version passes the test, replacing the program corresponding to the second new version with the program in the formal environment.
In an example, assuming that the update time of the program version is n, the number of "test environments" is x, and the preparation time of the program in the "test environment" is m, when m > n, in order to ensure that the program of the updated version can be replaced into the "formal environment" in time, the number of "test environments" needs to satisfy the inequality: n x is more than or equal to m, and m/n test environments are prepared at least. When the number of the test environments is larger than or equal to m/n, the updated program can be ensured to be prepared and replaced in the 'test environment' in time, otherwise, the updated program does not have enough time to be prepared in the 'test environment'. After the newer version program is prepared in the 'test environment', the program in the 'formal environment' can be replaced, so that the program in the 'formal environment' is ensured to be always an updated version, and then the 'test environment' recovers relevant resources and prepares to receive the program of the next version.
The specific steps are shown in fig. 1 a:
1. the test system detects whether the program version has a new version, if yes, the step 2 is executed, and if not, the step 1 is repeated for continuous detection;
2. the test system prepares a 'test environment' to prepare a new version of the program, and executes step 3;
3. the test system puts the program of the new edition into the 'test environment' for testing, carry out step 4;
4. when the program in the testing environment is tested, the testing system replaces the program in the testing environment with the program in the formal environment, and step 5 is executed;
5. recovering relevant resources of the 'test environment' after the program replacement in the step 4 is finished, and executing a step 6;
6. and (5) ending the upgrading process of one updated version, and detecting whether the updated version exists at the moment of circulating the step 1-5 and carrying out iterative upgrading on the program.
In another example, an example of an applicable scenario is as follows: the coverage test is a very time-consuming test, and the program needs to complete all the test cases and count the generated coverage data file to generate a coverage related report. For a system for counting the coverage rate report, if the program preparation time is longer than the program updating time, the method for iteratively updating the program can ensure that the system counts the coverage rate report of the new version program.
The conditions that need to be satisfied in the applicable scene are as follows:
1. there is a "formal environment" in which there is a running program. In the application scenario example, the test system runs the daily increment measurement example in a 'formal environment', performs coverage statistics on the increment, and simultaneously displays the coverage report of the current program.
2. There are one or more "test environments" that need to prepare new versions of programs at any time. In the present example of an applicable scenario, the test system will execute all the tests up to the current day on the new version of the program in the "test environment". Because the updated version program in the "test environment" is completely new, the coverage of the program at the beginning is 0%, when the number of executed instances in the "test environment" is close to or equal to the number of executed instances in the "formal environment", the program test is considered to be completed (i.e. the coverage report is ready to be completed), and then the test system replaces the program and the coverage data in the "test environment" into the "formal environment", and the program in the "formal environment" is the new version program.
According to the technical scheme of the embodiment, the at least two programs corresponding to the new versions are sequentially sent to the test environment, and the at least two programs corresponding to the new versions are tested in the test environment; replacing the program corresponding to the new version with the low version passing the test with the program corresponding to the old version in the formal environment according to the version heights of the at least two new versions; the program corresponding to the new version with the high version passing the test is replaced by the program corresponding to the new version with the low version passing the test in the formal environment, so that the program corresponding to the new version can be quickly moved from the test environment to the formal environment, the preparation time of the program in the test environment is integrally reduced, and the program of the new version can be timely replaced in the formal environment.
Example two
Fig. 2 is a schematic structural diagram of a program upgrading apparatus according to a second embodiment of the present invention. The present embodiment may be applicable to the case of program upgrade, where the apparatus may be implemented in a software and/or hardware manner, and the apparatus may be integrated in any device that provides a program upgrade function, as shown in fig. 2, where the program upgrade apparatus specifically includes: a test module 210, a first replacement module 220, and a second replacement module 230.
The testing module 210 is configured to successively send the programs corresponding to the at least two new versions obtained in sequence to a testing environment, and test the programs corresponding to the at least two new versions in the testing environment;
the first replacing module 220 is configured to replace the program corresponding to the new version with the low version passing the test with the program corresponding to the old version in the formal environment according to the version heights of the at least two new versions;
and a second replacing module 230, configured to replace the program corresponding to the new version with the high version passing the test with the program corresponding to the new version with the low version passing the test in the formal environment.
Optionally, the test module is specifically configured to:
if the first new version is detected, establishing a first test task, sending the program corresponding to the first new version to a test environment, and testing the program corresponding to the first new version in the test environment;
and if a second new version is detected in the process of testing the program corresponding to the first new version, establishing a second testing task, sending the program corresponding to the second new version to a testing environment, and testing the program corresponding to the second new version in the testing environment, wherein the version of the first new version is lower than that of the second new version.
Optionally, the first replacement module is specifically configured to:
and after the program corresponding to the first new version passes the test, replacing the program corresponding to the first new version with the program in the formal environment.
The product can execute the method provided by any embodiment of the invention, and has corresponding functional modules and beneficial effects of the execution method.
According to the technical scheme of the embodiment, the at least two programs corresponding to the new versions are sequentially sent to the test environment, and the at least two programs corresponding to the new versions are tested in the test environment; replacing the program corresponding to the new version with the low version passing the test with the program corresponding to the old version in the formal environment according to the version heights of the at least two new versions; the program corresponding to the new version with the high version passing the test is replaced by the program corresponding to the new version with the low version passing the test in the formal environment, so that the program corresponding to the new version can be quickly moved from the test environment to the formal environment, the preparation time of the program in the test environment is integrally reduced, and the program of the new version can be timely replaced in the formal environment.
EXAMPLE III
Fig. 3 is a schematic structural diagram of a computer device in a third embodiment of the present invention. FIG. 3 illustrates a block diagram of an exemplary computer device 12 suitable for use in implementing embodiments of the present invention. The computer device 12 shown in FIG. 3 is only an example and should not impose any limitation on the scope of use or functionality of embodiments of the present invention.
As shown in FIG. 3, computer device 12 is in the form of a general purpose computing device. The components of computer device 12 may include, but are not limited to: one or more processors or processing units 16, a system memory 28, and a bus 18 that couples various system components including the system memory 28 and the processing unit 16.
The system Memory 28 may include computer system readable media in the form of volatile Memory, such as Random Access Memory (RAM) 30 and/or cache Memory 32. Computer device 12 may further include other removable/non-removable, volatile/nonvolatile computer system storage media. By way of example only, storage system 34 may be used to read from and write to non-removable, nonvolatile magnetic media (not shown in FIG. 3, and commonly referred to as a "hard drive"). Although not shown in FIG. 3, a magnetic disk drive for reading from and writing to a removable, nonvolatile magnetic disk (e.g., a "floppy disk") and an optical disk drive for reading from or writing to a removable, nonvolatile optical disk (a Compact disk-Read Only Memory (CD-ROM)), Digital Video disk (DVD-ROM), or other optical media may be provided. In these cases, each drive may be connected to bus 18 by one or more data media interfaces. Memory 28 may include at least one program product having a set (e.g., at least one) of program modules that are configured to carry out the functions of embodiments of the invention.
A program/utility 40 having a set (at least one) of program modules 42 may be stored, for example, in memory 28, such program modules 42 including, but not limited to, an operating system, one or more application programs, other program modules, and program data, each of which examples or some combination thereof may comprise an implementation of a network environment. Program modules 42 generally carry out the functions and/or methodologies of the described embodiments of the invention.
The processing unit 16 executes various functional applications and data processing by running the program stored in the system memory 28, for example, implementing a program upgrading method provided by an embodiment of the present invention:
sequentially sending the programs corresponding to the at least two new versions which are acquired in sequence to a test environment, and testing the programs corresponding to the at least two new versions in the test environment;
replacing the program corresponding to the new version with the low version passing the test with the program corresponding to the old version in the formal environment according to the version heights of the at least two new versions;
and replacing the program corresponding to the new version with the high version passing the test with the program corresponding to the new version with the low version passing the test in the formal environment.
Example four
A fourth embodiment of the present invention provides a computer-readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements the program upgrading method provided in all the embodiments of the present invention of the present application:
sequentially sending the programs corresponding to the at least two new versions which are acquired in sequence to a test environment, and testing the programs corresponding to the at least two new versions in the test environment;
replacing the program corresponding to the new version with the low version passing the test with the program corresponding to the old version in the formal environment according to the version heights of the at least two new versions;
and replacing the program corresponding to the new version with the high version passing the test with the program corresponding to the new version with the low version passing the test in the formal environment.
Any combination of one or more computer-readable media may be employed. The computer readable medium may be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having 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 portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
In some embodiments, the clients, servers may communicate using any currently known or future developed network Protocol, such as HTTP (HyperText Transfer Protocol), and may interconnect with any form or medium of digital data communication (e.g., a communications network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), the Internet (e.g., the Internet), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future developed network.
The computer readable medium may be embodied in the electronic device; or may exist separately without being assembled into the electronic device.
The computer readable medium carries one or more programs which, when executed by the electronic device, cause the electronic device to: receiving a source text input by a user, and translating the source text into a target text corresponding to a target language; acquiring historical correction behaviors of the user; and correcting the target text according to the historical correction behaviors to obtain a translation result, and pushing the translation result to a client where the user is located.
Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C + +, or the like, as well as conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units described in the embodiments of the present disclosure may be implemented by software or hardware. Where the name of an element does not in some cases constitute a limitation on the element itself.
The functions described herein above may be performed, at least in part, by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (ASSPs), systems on a chip (SOCs), Complex Programmable Logic Devices (CPLDs), and the like.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable 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. 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 portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
It is to be noted that the foregoing is only illustrative of the preferred embodiments of the present invention and the technical principles employed. It will be understood by those skilled in the art that the present invention is not limited to the particular embodiments described herein, but is capable of various obvious changes, rearrangements and substitutions as will now become apparent to those skilled in the art without departing from the scope of the invention. Therefore, although the present invention has been described in greater detail by the above embodiments, the present invention is not limited to the above embodiments, and may include other equivalent embodiments without departing from the spirit of the present invention, and the scope of the present invention is determined by the scope of the appended claims.
Claims (10)
1. A program upgrade method, comprising:
sequentially sending the programs corresponding to the at least two new versions which are acquired in sequence to a test environment, and testing the programs corresponding to the at least two new versions in the test environment;
replacing the program corresponding to the new version with the low version passing the test with the program corresponding to the old version in the formal environment according to the version heights of the at least two new versions;
and replacing the program corresponding to the new version with the high version passing the test with the program corresponding to the new version with the low version passing the test in the formal environment.
2. The method of claim 1, wherein the step of successively sending the at least two programs corresponding to the new versions, which are obtained in sequence, to a test environment, and the step of testing the at least two programs corresponding to the new versions in the test environment comprises:
if the first new version is detected, establishing a first test task, sending the program corresponding to the first new version to a test environment, and testing the program corresponding to the first new version in the test environment;
and if a second new version is detected in the process of testing the program corresponding to the first new version, establishing a second testing task, sending the program corresponding to the second new version to a testing environment, and testing the program corresponding to the second new version in the testing environment, wherein the version of the first new version is lower than that of the second new version.
3. The method of claim 2, wherein replacing the program corresponding to the old version in the formal environment with the program corresponding to the new version with the lower version that passes the test comprises:
and after the program corresponding to the first new version passes the test, replacing the program corresponding to the first new version with the program in the formal environment.
4. The method of claim 3, wherein replacing the program corresponding to the first new version with the program in the formal environment after the program corresponding to the first new version passes the test comprises:
and after the program corresponding to the first new version passes the test, replacing the program corresponding to the first new version with the program in the formal environment, and deleting the program corresponding to the first new version in the test environment.
5. The method of claim 3, wherein replacing the program corresponding to the new version with the high version passing the test with the program corresponding to the new version with the low version passing the test in the formal environment comprises:
and after the program corresponding to the second new version passes the test, replacing the program corresponding to the second new version with the program in the formal environment.
6. A program upgrading apparatus, comprising:
the testing module is used for sequentially sending the programs corresponding to the at least two new versions which are acquired in sequence to a testing environment and testing the programs corresponding to the at least two new versions in the testing environment;
the first replacement module is used for replacing the program corresponding to the new version with the low version passing the test with the program corresponding to the old version in the formal environment according to the version heights of the at least two new versions;
and the second replacement module is used for replacing the program corresponding to the new version with the high version passing the test with the program corresponding to the new version with the low version passing the test in the formal environment.
7. The apparatus of claim 6, wherein the testing module is specifically configured to:
if the first new version is detected, establishing a first test task, sending the program corresponding to the first new version to a test environment, and testing the program corresponding to the first new version in the test environment;
and if a second new version is detected in the process of testing the program corresponding to the first new version, establishing a second testing task, sending the program corresponding to the second new version to a testing environment, and testing the program corresponding to the second new version in the testing environment, wherein the version of the first new version is lower than that of the second new version.
8. The apparatus of claim 7, wherein the first replacement module is specifically configured to:
and after the program corresponding to the first new version passes the test, replacing the program corresponding to the first new version with the program in the formal environment.
9. A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the processor implements the method according to any of claims 1-5 when executing the program.
10. A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the method according to any one of claims 1-5.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011264778.5A CN112256309A (en) | 2020-11-12 | 2020-11-12 | Program upgrading method, device, equipment and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011264778.5A CN112256309A (en) | 2020-11-12 | 2020-11-12 | Program upgrading method, device, equipment and storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112256309A true CN112256309A (en) | 2021-01-22 |
Family
ID=74265450
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011264778.5A Pending CN112256309A (en) | 2020-11-12 | 2020-11-12 | Program upgrading method, device, equipment and storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112256309A (en) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102662655A (en) * | 2012-03-12 | 2012-09-12 | 中兴通讯股份有限公司 | Building system and method for version |
WO2017088547A1 (en) * | 2015-11-27 | 2017-06-01 | 中兴通讯股份有限公司 | Data upgrading method and apparatus |
CN107015842A (en) * | 2017-03-31 | 2017-08-04 | 武汉票据交易中心有限公司 | A kind of management method and system of server compiling and issue |
US20170269921A1 (en) * | 2016-03-18 | 2017-09-21 | TUPL, Inc. | Continuous and automatic application development and deployment |
CN109408382A (en) * | 2018-10-11 | 2019-03-01 | 网宿科技股份有限公司 | A kind of continuous integrating method and continuous integration system |
CN109960643A (en) * | 2017-12-22 | 2019-07-02 | 网宿科技股份有限公司 | A kind of code test method and device |
CN109976779A (en) * | 2017-12-27 | 2019-07-05 | 深圳市优必选科技有限公司 | Robot software online upgrade release method, device, equipment and storage medium |
US20190243640A1 (en) * | 2018-02-02 | 2019-08-08 | Bank Of America Corporation | Smart tool for enterprise-wide version control of codes during software integration and deployment |
CN110334029A (en) * | 2019-07-10 | 2019-10-15 | 中国民航信息网络股份有限公司 | Test environmental system and system integration and test method |
US20190370471A1 (en) * | 2018-05-30 | 2019-12-05 | Paypal, Inc. | Systems and methods for patching vulnerabilities |
WO2020151344A1 (en) * | 2019-01-22 | 2020-07-30 | 平安科技(深圳)有限公司 | Software development and testing method for sub-iterations and related devices |
US20200241865A1 (en) * | 2019-01-29 | 2020-07-30 | Salesforce.Com, Inc. | Release orchestration for performing pre-release, version specific testing to validate application versions |
-
2020
- 2020-11-12 CN CN202011264778.5A patent/CN112256309A/en active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102662655A (en) * | 2012-03-12 | 2012-09-12 | 中兴通讯股份有限公司 | Building system and method for version |
WO2017088547A1 (en) * | 2015-11-27 | 2017-06-01 | 中兴通讯股份有限公司 | Data upgrading method and apparatus |
US20170269921A1 (en) * | 2016-03-18 | 2017-09-21 | TUPL, Inc. | Continuous and automatic application development and deployment |
CN107015842A (en) * | 2017-03-31 | 2017-08-04 | 武汉票据交易中心有限公司 | A kind of management method and system of server compiling and issue |
CN109960643A (en) * | 2017-12-22 | 2019-07-02 | 网宿科技股份有限公司 | A kind of code test method and device |
CN109976779A (en) * | 2017-12-27 | 2019-07-05 | 深圳市优必选科技有限公司 | Robot software online upgrade release method, device, equipment and storage medium |
US20190243640A1 (en) * | 2018-02-02 | 2019-08-08 | Bank Of America Corporation | Smart tool for enterprise-wide version control of codes during software integration and deployment |
US20190370471A1 (en) * | 2018-05-30 | 2019-12-05 | Paypal, Inc. | Systems and methods for patching vulnerabilities |
CN109408382A (en) * | 2018-10-11 | 2019-03-01 | 网宿科技股份有限公司 | A kind of continuous integrating method and continuous integration system |
WO2020151344A1 (en) * | 2019-01-22 | 2020-07-30 | 平安科技(深圳)有限公司 | Software development and testing method for sub-iterations and related devices |
US20200241865A1 (en) * | 2019-01-29 | 2020-07-30 | Salesforce.Com, Inc. | Release orchestration for performing pre-release, version specific testing to validate application versions |
CN110334029A (en) * | 2019-07-10 | 2019-10-15 | 中国民航信息网络股份有限公司 | Test environmental system and system integration and test method |
Non-Patent Citations (2)
Title |
---|
YORKIE_LIN: "【总结】版本迭代中,测试人员要做的准备", pages 240 - 243, Retrieved from the Internet <URL:《https://blog.csdn.net/Yorkie_Lin/article/details/104614253》> * |
褚振勇等: "《信息系统测试实验指南》", 31 July 2002, 西安电子科技大学出版社, pages: 398 - 400 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108829580B (en) | Multi-version test data processing method, device, equipment and storage medium | |
JP7289334B2 (en) | Methods and apparatus, electronic devices, storage media and computer programs for testing code | |
CN110515647B (en) | Static resource management method, device, equipment and storage medium | |
CN109672722B (en) | Data deployment method and device, computer storage medium and electronic equipment | |
CN108763094B (en) | Test case generation method, device, equipment and storage medium | |
CN112712795B (en) | Labeling data determining method, labeling data determining device, labeling data determining medium and electronic equipment | |
CN110990346A (en) | File data processing method, device, equipment and storage medium based on block chain | |
CN109299124B (en) | Method and apparatus for updating a model | |
CN111897827B (en) | Data updating method and system for data warehouse and electronic equipment | |
CN112988583A (en) | Method and device for testing syntax compatibility of database | |
CN110716804A (en) | Method and device for automatically deleting useless resources, storage medium and electronic equipment | |
CN111124541A (en) | Configuration file generation method, device, equipment and medium | |
CN112789602A (en) | Reverse debugging of software failures | |
CN112084114B (en) | Method and apparatus for testing interfaces | |
CN111373377A (en) | Error handling | |
CN111367791B (en) | Method, device, medium and electronic equipment for generating test case | |
CN111367813B (en) | Automatic testing method and device for decision engine, server and storage medium | |
CN112256309A (en) | Program upgrading method, device, equipment and storage medium | |
CN111047427A (en) | Data reporting method, device, server and storage medium | |
CN113807056B (en) | Document name sequence error correction method, device and equipment | |
CN111741046B (en) | Data reporting method, data acquisition method, device, equipment and medium | |
CN113361286B (en) | Information prompting method and device | |
CN111262727B (en) | Service capacity expansion method, device, equipment and storage medium | |
CN111831620B (en) | Method, apparatus and computer program product for storage management | |
CN109948251B (en) | CAD-based data processing method, device, equipment and storage medium |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210122 |