CN112256309A - Program upgrading method, device, equipment and storage medium - Google Patents

Program upgrading method, device, equipment and storage medium Download PDF

Info

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
Application number
CN202011264778.5A
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.)
Shanghai Dameng Database Co Ltd
Original Assignee
Shanghai Dameng Database Co Ltd
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 Shanghai Dameng Database Co Ltd filed Critical Shanghai Dameng Database Co Ltd
Priority to CN202011264778.5A priority Critical patent/CN112256309A/en
Publication of CN112256309A publication Critical patent/CN112256309A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • 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)
  • 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

Program upgrading method, device, equipment and storage medium
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.
Bus 18 represents one or more of any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of a variety of bus architectures. By way of example, such architectures include, but are not limited to, an Industry Standard Architecture (ISA) bus, a Micro Channel Architecture (MCA) bus, an enhanced ISA bus, a Video Electronics Standards Association (VESA) local bus, and a Peripheral Component Interconnect (PCI) bus.
Computer device 12 typically includes a variety of computer system readable media. Such media may be any available media that is accessible by computer device 12 and includes both volatile and nonvolatile media, removable and non-removable media.
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.
Computer device 12 may also communicate with one or more external devices 14 (e.g., keyboard, pointing device, display 24, etc.), with one or more devices that enable a user to interact with computer device 12, and/or with any devices (e.g., network card, modem, etc.) that enable computer device 12 to communicate with one or more other computing devices. Such communication may be through an input/output (I/O) interface 22. In the computer device 12 of the present embodiment, the display 24 is not provided as a separate body but is embedded in the mirror surface, and when the display surface of the display 24 is not displayed, the display surface of the display 24 and the mirror surface are visually integrated. Moreover, computer device 12 may also communicate with one or more networks (e.g., a Local Area Network (LAN), Wide Area Network (WAN)) and/or a public Network (e.g., the Internet) via Network adapter 20. As shown, network adapter 20 communicates with the other modules of computer device 12 via bus 18. It should be understood that although not shown in the figures, other hardware and/or software modules may be used in conjunction with computer device 12, including but not limited to: microcode, device drivers, Redundant processing units, external disk drive Arrays, disk array (RAID) systems, tape drives, and data backup storage systems, to name a few.
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.
CN202011264778.5A 2020-11-12 2020-11-12 Program upgrading method, device, equipment and storage medium Pending CN112256309A (en)

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)

* Cited by examiner, † Cited by third party
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's online upgrading dissemination 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
US20200241865A1 (en) * 2019-01-29 2020-07-30 Salesforce.Com, Inc. Release orchestration for performing pre-release, version specific testing to validate application versions
WO2020151344A1 (en) * 2019-01-22 2020-07-30 平安科技(深圳)有限公司 Software development and testing method for sub-iterations and related devices

Patent Citations (12)

* Cited by examiner, † Cited by third party
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's online upgrading dissemination 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)

* Cited by examiner, † Cited by third party
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
CN108763094B (en) Test case generation method, device, equipment and storage medium
CN109672722B (en) Data deployment method and device, computer storage medium and electronic equipment
CN109299124B (en) Method and apparatus for updating a model
CN110716804A (en) Method and device for automatically deleting useless resources, storage medium and electronic equipment
CN110990346A (en) File data processing method, device, equipment and storage medium based on block chain
CN112712795B (en) Labeling data determining method, labeling data determining device, labeling data determining medium and electronic equipment
CN111367813B (en) Automatic testing method and device for decision engine, server and storage medium
CN111124541A (en) Configuration file generation method, device, equipment and medium
CN112256309A (en) Program upgrading method, device, equipment and storage medium
CN110825802A (en) Multi-type database data backup method, device, equipment and storage medium
CN112789602A (en) Reverse debugging of software failures
CN112148705A (en) Data migration method and device
CN111373377A (en) Error handling
CN113138767B (en) Code language conversion method, device, electronic equipment and storage medium
CN111741046B (en) Data reporting method, data acquisition method, device, equipment and medium
CN111367791B (en) Method, device, medium and electronic equipment for generating test case
CN113807056A (en) Method, device and equipment for correcting error of document name sequence number
CN111262727B (en) Service capacity expansion method, device, equipment and storage medium
CN109948251B (en) CAD-based data processing method, device, equipment and storage medium
CN112988583A (en) Method and device for testing syntax compatibility of database
CN108287792B (en) Method and apparatus for outputting information
CN109062797B (en) Method and device for generating information
CN112364268A (en) Resource acquisition method and device, electronic equipment and storage medium
CN113742225B (en) Test data generation 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