CN110119348B - Software upgrading test method and terminal - Google Patents

Software upgrading test method and terminal Download PDF

Info

Publication number
CN110119348B
CN110119348B CN201810118441.XA CN201810118441A CN110119348B CN 110119348 B CN110119348 B CN 110119348B CN 201810118441 A CN201810118441 A CN 201810118441A CN 110119348 B CN110119348 B CN 110119348B
Authority
CN
China
Prior art keywords
software
version number
tested
terminal
upgrading
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.)
Active
Application number
CN201810118441.XA
Other languages
Chinese (zh)
Other versions
CN110119348A (en
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.)
Fujian Tianquan Educational Technology Ltd
Original Assignee
Fujian Tianquan Educational Technology 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 Fujian Tianquan Educational Technology Ltd filed Critical Fujian Tianquan Educational Technology Ltd
Priority to CN201810118441.XA priority Critical patent/CN110119348B/en
Publication of CN110119348A publication Critical patent/CN110119348A/en
Application granted granted Critical
Publication of CN110119348B publication Critical patent/CN110119348B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3696Methods or tools to render software testable
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates

Abstract

The invention relates to the field of testing, in particular to a software upgrading testing method and a terminal. The method comprises the steps of obtaining client information sets through obtaining client information sent by more than two clients corresponding to software to be tested; the client information comprises the software version number of the client, the operating system version number of the client and the terminal model of the client; acquiring a software version number with the largest usage amount according to the client information set to obtain a first version number; deploying a first terminal cluster to be tested according to the usage of the operating system version number and the usage of the terminal model in the client information set; upgrading the to-be-tested software corresponding to the first version number in the first to-be-tested terminal cluster according to a preset latest software version number to obtain a first upgrading result; the first upgrading result comprises upgrading success and upgrading failure. The efficiency of software upgrading test is improved.

Description

Software upgrading test method and terminal
Technical Field
The invention relates to the field of testing, in particular to a software upgrading testing method and a terminal.
Background
Many software products are self-upgraded through an increment package, and the advantage of increment self-upgrading is obvious compared with full self-upgrading, for example, an old version of APK has 5M, a new version of APK has 8M, and an updated part may only have about 3M, at this time, full upgrading needs to consume 8M traffic to complete software upgrading, and increment upgrading only needs to consume 3M traffic to complete the operation. Incremental upgrades, however, also have their deficiencies in that they generate patches with the difference between the two software versions, and therefore must differentiate between each historical version released and the latest version to generate the incremental package to provide user upgrades so that users of all versions can complete the incremental upgrade.
Moreover, the upgrading conditions of different types of firmware need to be considered, especially the version and the equipment used by the main user group, and if the compatibility problem occurs, the iteration and the online of the product function are directly influenced. Therefore, each piece of software needs to be subjected to corresponding software upgrading test before being formally brought on line, so that the problems of design, program and the like of the tested software can be found out in advance, and the software can be repaired in advance to ensure that the software can be normally used after being delivered.
However, as software versions increase, more combinations of software need to be validated incrementally from upgrade. For example, the current software to be tested only has 1 historical version 0.1 and the latest version 0.2, and only the fact that whether the incremental upgrade of the versions 0.1 to 0.2 is normal needs to be verified. If the current software to be tested has 2 historical versions 0.1 and 0.2, and the latest version is 0.3, whether two incremental upgrading combination modes of 0.1- >0.2- >0.3 and 0.1- >0.3 are normal or not needs to be verified, and so on. In addition, each version increment upgrade requires testing on a different model firmware device. Therefore, the existing manual upgrade test mode has various problems:
(1) The client has more historical versions, each version needs to be upgraded and traversed, and a large amount of time and manpower are required to be invested;
(2) The equipment compatibility test in the upgrading test process also needs to perform more repetitive work;
(3) The test process is complicated, the manual test energy and the version iteration time are limited, and the test missing condition is easy to occur.
Disclosure of Invention
The technical problem to be solved by the invention is as follows: how to improve the efficiency of software upgrade testing.
In order to solve the technical problems, the technical scheme adopted by the invention is as follows:
the invention provides a software upgrading test method, which comprises the following steps:
the method comprises the steps of obtaining client information sent by more than two clients corresponding to software to be tested to obtain a client information set; the client information comprises a software version number of the client, an operating system version number for operating the client and a terminal model for installing the client;
acquiring a software version number with the maximum use amount according to the client information set to obtain a first version number;
deploying a first terminal cluster to be tested according to the usage of the operating system version number and the usage of the terminal model in the client information set;
upgrading the to-be-tested software corresponding to the first version number in the first to-be-tested terminal cluster according to a preset latest software version number to obtain a first upgrading result; the first upgrading result comprises upgrading success and upgrading failure.
The present invention also provides a terminal for software upgrade testing, comprising one or more processors and a memory, the memory storing a program and configured to perform the following steps by the one or more processors:
acquiring client information sent by more than two clients corresponding to software to be tested to obtain a client information set; the client information comprises the software version number of the client, the operating system version number of the client and the terminal model of the client;
acquiring a software version number with the largest usage amount according to the client information set to obtain a first version number;
deploying a first terminal cluster to be tested according to the usage of the operating system version number and the usage of the terminal model in the client information set;
upgrading the to-be-tested software corresponding to the first version number in the first to-be-tested terminal cluster according to a preset latest software version number to obtain a first upgrading result; the first upgrading result comprises upgrading success and upgrading failure.
The invention has the beneficial effects that: the invention can obtain the current software version number, operating system version number and terminal model of the main user group using the software to be tested by obtaining the client information reported by the client of the software to be tested which is successfully installed by the user, counting the user usage amount corresponding to each software version number, the user usage amount of each operating system version number of the operating client and the user usage amount of each terminal model, and then carrying out corresponding software upgrading test according to the information of the main user group of the software to be tested. Different from the prior art that all incremental upgrading test combinations need to be traversed to ensure that the main user group can be successfully upgraded, the software upgrading test method and the software upgrading test system have the advantages that the software upgrading test is performed in a targeted and efficient manner through statistical data, and the probability that the main user group of the software to be tested can successfully upgrade the software to be tested to the latest version is effectively improved.
Drawings
FIG. 1 is a block flow diagram of an embodiment of a method for software upgrade testing provided by the present invention;
FIG. 2 is a block diagram of a terminal for software upgrade testing according to an embodiment of the present invention;
description of reference numerals:
1. a processor; 2. a memory.
Detailed Description
In order to explain technical contents, achieved objects, and effects of the present invention in detail, the following description is made with reference to the accompanying drawings in combination with the embodiments.
The most key technical conception of the invention is as follows: the software upgrading test is performed in a targeted and efficient manner through the statistical data, so that the probability that the main user group of the software to be tested can successfully upgrade the software to be tested to the latest version is effectively improved.
Referring to fig. 1 and fig. 2,
as shown in fig. 1, the present invention provides a method for testing software upgrade, which includes:
acquiring client information sent by more than two clients corresponding to software to be tested to obtain a client information set; the client information comprises the software version number of the client, the operating system version number of the client and the terminal model of the client;
acquiring a software version number with the largest usage amount according to the client information set to obtain a first version number;
deploying a first terminal cluster to be tested according to the usage of the version number of the operating system and the usage of the terminal model in the client information set;
upgrading the to-be-tested software corresponding to the first version number in the first to-be-tested terminal cluster according to a preset latest software version number to obtain a first upgrading result; the first upgrading result comprises upgrading success and upgrading failure.
Further, upgrading the to-be-tested software corresponding to the first version number in the first to-be-tested terminal cluster according to a preset latest software version number to obtain a first upgrading result, which specifically comprises:
acquiring a first upgrade patch according to the latest software version number and the first version number;
the first terminal cluster to be tested upgrades the software to be tested corresponding to the first version number according to the first upgrade patch to obtain new version software;
and acquiring a first upgrading result according to the new version software.
Further, obtaining a first upgrade result according to the new version software specifically includes:
if the new version software displays a guide map when running the new version software, setting the first upgrading result as upgrading failure; the guide diagram is used for introducing a using method for a user who installs the software to be tested for the first time.
According to the description, whether the user history data of the software to be tested is emptied can be identified by detecting whether the guide map appears after the software to be tested is upgraded, and if the user history data is emptied due to the upgrading operation, the upgrading fails.
Further, obtaining a first upgrade result according to the new version software specifically includes:
the client information also comprises an identifier of a functional module with the utilization rate higher than a preset first threshold value;
counting the utilization rate of each functional module in the client information set to obtain a utilization rate set;
acquiring the identifier of the functional module with the utilization rate higher than a preset second threshold value according to the utilization rate set to obtain a high-utilization-rate functional module set;
obtaining test cases corresponding to the high-utilization-rate functional module set and a preset key functional module set to obtain a test case set;
testing the new version software according to the test case set;
and when the test case fails, setting the first upgrading result as upgrading failure.
As can be seen from the above description, the present invention tests the functional modules and key functional modules commonly used by the main user group of the software to be tested, and if the important functional modules cannot operate normally due to the upgrade operation, the upgrade fails.
Further, deploying a first terminal cluster to be tested according to the usage of the operating system version number and the usage of the terminal model in the client information set, specifically:
sequencing more than two terminal models corresponding to the client information set according to the use amount from large to small to obtain a terminal model queue;
acquiring a first preset number of terminal models from the terminal model queue to obtain a first terminal model set;
sequencing more than two operating system version numbers corresponding to the client information set from large to small according to the using amount to obtain an operating system version number queue;
acquiring a preset second number of operating system version numbers from the operating system version number queue to obtain a first operating system version number set;
and deploying a first terminal cluster to be tested according to the first terminal model set and the first operating system version number set.
According to the description, the terminal with the terminal model with the larger user usage is provided with the operating system version with the larger user usage, and the software to be tested is arranged on the terminal for upgrading test, so that the correctness of the software and the compatibility of the software and equipment can be tested simultaneously in the software upgrading test process, and the main user group corresponding to the software to be tested can be effectively ensured to be capable of upgrading the software to be tested successfully.
Further, still include:
acquiring a preset third number of terminal models from the terminal model queue to obtain a second terminal model set; the preset third number is smaller than the preset first number;
acquiring a fourth preset number of operating system version numbers from the operating system version number queue to obtain a second operating system version number set; the preset fourth number is smaller than the preset second number;
deploying a second terminal cluster to be tested according to the second terminal model set and the second operating system version number set;
acquiring all software version numbers corresponding to the software to be tested except the first software version number to obtain a software version number set;
s1, acquiring a software version number from the software version number set to obtain a current software version number;
s2, installing to-be-tested software corresponding to the current software version number for each to-be-tested terminal in the second to-be-tested terminal cluster;
s3, upgrading the software to be tested corresponding to the current version number in the second terminal cluster to be tested according to the latest software version number to obtain a second upgrading result;
and repeatedly executing the S1 to the S3 until the set of software version numbers is traversed.
From the above description, the present invention comprehensively tests the software version number, the terminal model number and the operating system version number used by the main user group of the software to be tested, and is favorable for improving the efficiency of software upgrading test.
As shown in fig. 2, the present invention further provides a terminal for software upgrade testing, which includes one or more processors 1 and a memory 2, where the memory 2 stores programs and is configured to be executed by the one or more processors 1 to perform the following steps:
acquiring client information sent by more than two clients corresponding to software to be tested to obtain a client information set; the client information comprises the software version number of the client, the operating system version number of the client and the terminal model of the client;
acquiring a software version number with the largest usage amount according to the client information set to obtain a first version number;
deploying a first terminal cluster to be tested according to the usage of the operating system version number and the usage of the terminal model in the client information set;
upgrading the to-be-tested software corresponding to the first version number in the first to-be-tested terminal cluster according to a preset latest software version number to obtain a first upgrading result; the first upgrading result comprises upgrading success and upgrading failure.
Further, upgrading the to-be-tested software corresponding to the first version number in the first to-be-tested terminal cluster according to a preset latest software version number to obtain a first upgrading result, which specifically comprises:
acquiring a first upgrade patch according to the latest software version number and the first version number;
the first terminal cluster to be tested upgrades the software to be tested corresponding to the first version number according to the first upgrade patch to obtain new version software;
and acquiring a first upgrading result according to the new version software.
Further, obtaining a first upgrade result according to the new version software specifically includes:
if the new version software displays a guide map when running the new version software, setting the first upgrading result as upgrading failure; the guide diagram is used for introducing a use method for a user who installs the software to be tested for the first time.
Further, obtaining a first upgrade result according to the new version software specifically includes:
the client information also comprises an identifier of a functional module of which the utilization rate is higher than a preset first threshold value;
counting the utilization rate of each functional module in the client information set to obtain a utilization rate set;
acquiring the identifier of the functional module with the utilization rate higher than a preset second threshold value according to the utilization rate set to obtain a high-utilization-rate functional module set;
obtaining test cases corresponding to the high-utilization-rate functional module set and a preset key functional module set to obtain a test case set;
testing the new version software according to the test case set;
and when the test case fails, setting the first upgrading result as upgrading failure.
Further, deploying a first terminal cluster to be tested according to the usage of the operating system version number and the usage of the terminal model in the client information set, specifically:
sequencing more than two terminal models corresponding to the client information set according to the use amount from large to small to obtain a terminal model queue;
acquiring a first preset number of terminal models from the terminal model queue to obtain a first terminal model set;
sequencing more than two operating system version numbers corresponding to the client information set according to the use amount from large to small to obtain an operating system version number queue;
acquiring a preset second number of operating system version numbers from the operating system version number queue to obtain a first operating system version number set;
and deploying a first terminal cluster to be tested according to the first terminal model set and the first operating system version number set.
Further, still include:
acquiring a preset third number of terminal models from the terminal model queue to obtain a second terminal model set; the preset third number is smaller than the preset first number;
acquiring a fourth preset number of operating system version numbers from the operating system version number queue to obtain a second operating system version number set; the preset fourth number is smaller than the preset second number;
deploying a second terminal cluster to be tested according to the second terminal model set and the second operating system version number set;
acquiring all software version numbers corresponding to the software to be tested except the first software version number to obtain a software version number set;
s1, acquiring a software version number from the software version number set to obtain a current software version number;
s2, installing to-be-tested software corresponding to the current software version number for each to-be-tested terminal in the second to-be-tested terminal cluster;
s3, upgrading the software to be tested corresponding to the current version number in the second terminal cluster to be tested according to the latest software version number to obtain a second upgrading result;
and repeatedly executing the S1 to the S3 until the set of software version numbers is traversed.
The first embodiment of the invention is as follows:
the embodiment provides a method for testing software upgrade, which comprises the following steps:
s1, acquiring client information sent by more than two clients corresponding to software to be tested to obtain a client information set; the client information includes the software version number of the client, the operating system version number of the client and the terminal model of the client.
For example, the client information reported by a client is: the version number of the current client is 0.3, and the terminal model is as follows: glory 8, and the version number of an operating system used by the terminal is Android 7.x.
S2, acquiring the software version number with the largest usage according to the client information set to obtain a first version number.
For example, the client information reported by all the clients that have been successfully installed is collected, where the number of users using the 0.3 version of the software to be tested is the largest, and the first version number is 0.3. In order to ensure that the main user group of the software to be tested can be successfully upgraded, the embodiment performs an important test on the correctness of upgrading from the 0.3 version to the latest version.
And S3, deploying the first terminal cluster to be tested according to the usage of the operating system version number and the usage of the terminal model in the client information set. The method specifically comprises the following steps:
s31, sequencing more than two terminal models corresponding to the client information set from large to small according to the usage amount to obtain a terminal model queue;
s32, obtaining a first preset number of terminal models from the terminal model queue to obtain a first terminal model set;
s33, sequencing more than two operating system version numbers corresponding to the client information set from large to small according to the using amount to obtain an operating system version number queue;
s34, obtaining a preset second number of operating system version numbers from the operating system version number queue to obtain a first operating system version number set;
s35, deploying a first terminal cluster to be tested according to the first terminal model set and the first operating system version number set.
Preferably, the first number is 10; the second number is 3.
For example, among users using software to be tested, the terminal models of the top ten of the user usage ranks are glory 8, glory 5c, samsung S6, millet note, and the like; the operating system version number of the first three of the user usage ranks is Android firmware 7.x \, 6.x \, 5.x. And arranging and combining the terminal model number of the top ten in the ranking and the operating system version number of the top three in the ranking to obtain a first to-be-tested terminal cluster.
S4, upgrading the to-be-tested software corresponding to the first version number in the first to-be-tested terminal cluster according to a preset latest software version number to obtain a first upgrading result; the first upgrading result comprises upgrading success and upgrading failure. The method specifically comprises the following steps:
s41, acquiring a first upgrade patch according to the latest software version number and the first version number; and the first terminal cluster to be tested upgrades the software to be tested corresponding to the first version number according to the first upgrade patch to obtain new version software.
For example, if the latest version number of the software to be tested is 0.5, the incremental package between version 0.5 and version 0.3 is obtained, and the first upgrade patch is obtained.
And S42, acquiring a first upgrading result according to the new version software. The method specifically comprises the following steps:
s421, if the new version software displays a guide map when running the new version software, setting the first upgrading result as upgrading failure; the guide diagram is used for introducing a use method for a user who installs the software to be tested for the first time.
The database text in the software path before upgrading stores the account information of software login, and after upgrading, whether the part of data still exists is detected; therefore, when the software is used for the first time, all the guide pictures need to be checked, the application program can be accessed only by logging in the account password, after the application program is upgraded, the application program needs to be started directly, the account password does not need to be input again, and the guide picture of a novice user does not need to appear again.
S422, the client information further comprises an identifier of a functional module with the utilization rate higher than a preset first threshold; counting the utilization rate of each functional module in the client information set to obtain a utilization rate set; acquiring the identifier of the functional module with the utilization rate higher than a preset second threshold value according to the utilization rate set to obtain a high-utilization-rate functional module set; obtaining test cases corresponding to the high-utilization-rate functional module set and a preset key functional module set to obtain a test case set; testing the new version software according to the test case set; and when the test case fails, setting the first upgrading result as upgrading failure.
And each client installed on the terminal used by the user reports the utilization rate of each functional module, and selects the functional module with higher comprehensive utilization rate from the utilization rates to obtain a high-utilization-rate functional module set. And carrying out case test on the functional modules in the high-utilization-rate functional module set and the preset key functional module set so as to verify whether the upgrading operation can influence the normal use of the important modules. For example, the login account, the entry of each menu bar, the chat module function, the file transceiving module function, and the like all need to run normally to be considered as pass, and otherwise, the test does not pass.
Optionally, comparing the package names corresponding to the software to be tested before and after upgrading.
Wherein the names of the software packages before and after upgrading are unchanged.
Optionally, the software version numbers before and after upgrading are compared.
For example, the old version VersionName is v0.1, versionCode is 10; the new version VersionName is v0.3 and VersionCode is 20; after upgrading, two parameters, namely the VersionName and the VersionCode, of the software to be tested need to be compared to see whether the two parameters are consistent with the expected values.
S5, acquiring a preset third number of terminal models from the terminal model queue to obtain a second terminal model set; the preset third number is smaller than the preset first number; acquiring a fourth preset number of operating system version numbers from the operating system version number queue to obtain a second operating system version number set; the preset fourth number is smaller than the preset second number.
For example, the third number is 5 and the fourth number is 2.
And S6, deploying a second terminal cluster to be tested according to the second terminal model set and the second operating system version number set.
S7, acquiring all software version numbers corresponding to the software to be tested except the first software version number to obtain a software version number set.
For example, the historical software version numbers of the software to be tested include 0.1, 0.2, 0.3 and 0.4, and the latest software version number is 0.5, then the combination of the software to be tested that needs to be verified from upgrade in an incremental manner is shown in table 1:
TABLE 1
Figure BDA0001571353080000111
The verification combinations in table 1 are listed according to the version before upgrade and the version across upgrade, because the incremental packages of the upgrade are different between different versions.
For example, all upgrade from 0.1 to 0.5 version, there may be several:
number 1: installing the 0.1 version, and directly upgrading to the 0.5 version;
sequence number 2: installing the 0.1 version, then upgrading from 0.1 to 0.2, and then upgrading from 0.2 to 0.5 version;
sequence number 3 differs from sequence number 2 in that it is upgraded from 0.1 to 0.3, then from 0.3 to 0.5, and so on;
the serial numbers 7, 8 and 9 are different from the upgrade combinations of the above serial numbers 1 to 6 in that although the applications with the same version are upgraded step by step, the information left by the upgrade is quite different from the case of direct installation, so that the coverage verification is required.
If the latest version cannot be upgraded to the next version, after the latest version is released, the next version cannot be upgraded by the current version, which is a significant product defect, and therefore, it is necessary to verify whether the latest version can be upgraded normally, as shown by a serial number 10.
The whole process of the increment upgrading mainly comprises an upgrading detection module, an upgrading downloading module, an increment package synthesis module and the like. The scenes from the sequence number 1 to the sequence number 9 are mainly used for traversing the scene dimension of the incremental package synthesis between different versions, so that the test coverage of all incremental package synthesis upgrading is ensured, but the upgrading from the latest version of the sequence number 10 to the next version is mainly performed by aiming at the upgrading main process of upgrading detection and upgrading downloading, the current application can be upgraded, the upgrading detection module, the upgrading downloading module and the upgrading main process are certainly not problematic, and the normal upgrading of the application can be ensured as long as the normal issuing and synthesis of the incremental package are ensured.
And S8, acquiring a software version number from the software version number set to obtain the current software version number.
And S9, installing the software to be tested corresponding to the current software version number for each terminal to be tested in the second terminal cluster to be tested.
And S10, upgrading the software to be tested corresponding to the current version number in the second terminal cluster to be tested according to the latest software version number to obtain a second upgrading result.
And S11, repeatedly executing the S8 to the S10 until the set of software version numbers is traversed.
And S12, generating a test report according to the first upgrading result and the second upgrading result.
The test results of each stage are output in the test report of the round no matter the upgrading process, the upgrading verification process and the traversing combination process, and the test results comprise tested version information, tested model information, operating system information, execution condition, execution time, upgrading results and the like.
As can be seen from the above description, the software upgrade testing method provided in this embodiment implements output of verification combinations through data comparison, and then implements verification of all historical version increment upgrade processes through automatic verification, thereby reducing the user threshold, and being capable of executing operation events by one key, simplifying program upgrade testing, and improving testing efficiency. The test method is carried out automatically, the upgrade traversal test work with wider and deeper extent is replaced by manual work, the whole upgrade process test strategy is to carry out distribution test according to the user usage proportion of application statistical analysis data, the test result is closer to the real use condition of users on a product line, and the normal operation of most of user upgrade functions on the product line can be ensured. The method helps the product to solve the most important verification link before the product is on-line in actual product application, and improves the stability and reliability of iteration of the product. The testing strength of the testing method for different combinations completely depends on the statistical information of the application statistical platform, and the availability of the incremental upgrading function of the product mastery user group is effectively ensured.
The second embodiment of the invention is as follows:
the present embodiment provides a terminal for software upgrade test, including one or more processors 1 and a memory 2, where the memory 2 stores programs and is configured to be executed by the one or more processors 1 to perform the following steps:
s1, acquiring client information sent by more than two clients corresponding to software to be tested to obtain a client information set; the client information includes the software version number of the client, the version number of the operating system running the client and the model of the terminal installing the client.
S2, acquiring the software version number with the largest usage according to the client information set to obtain a first version number.
And S3, deploying the first terminal cluster to be tested according to the usage of the operating system version number and the usage of the terminal model in the client information set. The method specifically comprises the following steps:
s31, sequencing more than two terminal models corresponding to the client information set from large to small according to the usage amount to obtain a terminal model queue;
s32, obtaining a first preset number of terminal models from the terminal model queue to obtain a first terminal model set;
s33, sequencing more than two operating system version numbers corresponding to the client information set from large to small according to the using amount to obtain an operating system version number queue;
s34, obtaining a preset second number of operating system version numbers from the operating system version number queue to obtain a first operating system version number set;
s35, deploying a first terminal cluster to be tested according to the first terminal model set and the first operating system version number set.
S4, upgrading the to-be-tested software corresponding to the first version number in the first to-be-tested terminal cluster according to a preset latest software version number to obtain a first upgrading result; the first upgrading result comprises upgrading success and upgrading failure. The method specifically comprises the following steps:
s41, acquiring a first upgrade patch according to the latest software version number and the first version number; and the first terminal cluster to be tested upgrades the software to be tested corresponding to the first version number according to the first upgrade patch to obtain new version software.
And S42, acquiring a first upgrading result according to the new version software. The method specifically comprises the following steps:
s421, if the new version software displays a guide map when running the new version software, setting the first upgrading result as upgrading failure; the guide diagram is used for introducing a using method for a user who installs the software to be tested for the first time.
The database text in the software path before upgrading stores the account information of software login, and after upgrading, whether the part of data still exists is detected; therefore, when the software is used for the first time, all the guide maps need to be checked, the application program can be accessed only by logging in the account password, and after the application program is upgraded, the application program is directly started to be accessed without inputting the account password again, and the guide map of a novice user does not need to appear again.
S422, the client information further comprises an identifier of a functional module with the utilization rate higher than a preset first threshold; counting the utilization rate of each functional module in the client information set to obtain a utilization rate set; acquiring the identifier of the functional module with the utilization rate higher than a preset second threshold value according to the utilization rate set to obtain a high-utilization-rate functional module set; obtaining test cases corresponding to the high-utilization-rate functional module set and a preset key functional module set to obtain a test case set; testing the new version software according to the test case set; and when the test case fails, setting the first upgrading result as upgrading failure.
Optionally, comparing the package names corresponding to the software to be tested before and after upgrading.
Optionally, the software version numbers before and after upgrading are compared.
S5, acquiring a preset third number of terminal models from the terminal model queue to obtain a second terminal model set; the preset third number is smaller than the preset first number; acquiring a fourth preset number of operating system version numbers from the operating system version number queue to obtain a second operating system version number set; the preset fourth number is smaller than the preset second number.
And S6, deploying a second terminal cluster to be tested according to the second terminal model set and the second operating system version number set.
And S7, acquiring all software version numbers corresponding to the to-be-tested software except the first software version number to obtain a software version number set.
And S8, acquiring a software version number from the software version number set to obtain the current software version number.
And S9, installing the software to be tested corresponding to the current software version number for each terminal to be tested in the second terminal cluster to be tested.
And S10, upgrading the software to be tested corresponding to the current version number in the second terminal cluster to be tested according to the latest software version number to obtain a second upgrading result.
And S11, repeatedly executing the S8 to the S10 until the software version number set is traversed.
And S12, generating a test report according to the first upgrading result and the second upgrading result.
In summary, the method and the terminal for software upgrade testing provided by the present invention obtain the client information reported by the client of the software to be tested that has been successfully installed by the user to count the user usage amount corresponding to each software version number, the user usage amount of each operating system version number of the operating client, and the user usage amount of each terminal model, so as to obtain the currently used software version number, operating system version number, and terminal model of the main user group using the software to be tested, and then perform the corresponding software upgrade testing according to the information of the main user group of the software to be tested. Different from the prior art that all incremental upgrading test combinations need to be traversed to ensure that the main user group can be successfully upgraded, the software upgrading test method and the software upgrading test system have the advantages that the software upgrading test is performed in a targeted and efficient manner through statistical data, and the probability that the main user group of the software to be tested can successfully upgrade the software to be tested to the latest version is effectively improved. Further, whether the user history data of the software to be tested is emptied or not can be identified by detecting whether the guide map appears after the software to be tested is upgraded, and if the user history data is emptied due to the upgrading operation, the upgrading fails. Furthermore, the method tests the frequently used functional modules and key functional modules of the main user group of the software to be tested, and if the important functional modules cannot normally run due to upgrading operation, upgrading fails. Furthermore, the terminal with the terminal model with the larger user usage is provided with the operating system version with the larger user usage, and the software to be tested is arranged on the terminal for upgrading test, so that the correctness of the software and the compatibility of the software and equipment can be tested simultaneously in the software upgrading test process, and the main user group corresponding to the software to be tested can be effectively ensured to be capable of upgrading the software to be tested successfully. Furthermore, the invention comprehensively tests the software version number, the terminal model and the operating system version number used by the main user group of the software to be tested, and is beneficial to improving the efficiency of software upgrading test.
The above description is only an embodiment of the present invention, and not intended to limit the scope of the present invention, and all equivalent changes made by using the contents of the present specification and the drawings, or applied directly or indirectly to the related technical fields, are included in the scope of the present invention.

Claims (10)

1. A method of software upgrade testing, comprising:
the method comprises the steps of obtaining client information sent by more than two clients corresponding to software to be tested to obtain a client information set; the client information comprises the software version number of the client, the operating system version number of the client and the terminal model of the client;
acquiring a software version number with the largest usage amount according to the client information set to obtain a first software version number;
deploying a first terminal cluster to be tested according to the usage of the operating system version number and the usage of the terminal model in the client information set;
upgrading the software to be tested corresponding to the first software version number in the first terminal cluster to be tested according to the preset latest software version number to obtain a first upgrading result; the first upgrading result comprises upgrading success and upgrading failure;
deploying a first terminal cluster to be tested according to the usage of the operating system version number and the usage of the terminal model in the client information set, specifically:
sorting more than two terminal models corresponding to the client information set from large to small according to the usage amount to obtain a terminal model queue;
acquiring a first preset number of terminal models from the terminal model queue to obtain a first terminal model set;
sequencing more than two operating system version numbers corresponding to the client information set from large to small according to the using amount to obtain an operating system version number queue;
acquiring a preset second number of operating system version numbers from the operating system version number queue to obtain a first operating system version number set;
and deploying a first to-be-tested terminal cluster according to the first terminal model set and the first operating system version number set.
2. The method for software upgrading test according to claim 1, wherein the software to be tested corresponding to the first software version number in the first terminal cluster to be tested is upgraded according to a preset latest software version number to obtain a first upgrade result, specifically:
acquiring a first upgrade patch according to the latest software version number and the first software version number;
the first terminal cluster to be tested upgrades the software to be tested corresponding to the first software version number according to the first upgrade patch to obtain new version software;
and acquiring a first upgrading result according to the new version software.
3. The method for testing software upgrade of claim 2, wherein the obtaining of the first upgrade result according to the new version software specifically includes:
if the new version software displays a guide map when running the new version software, setting the first upgrading result as upgrading failure; the guide diagram is used for introducing a using method for a user who installs the software to be tested for the first time.
4. The method for testing software upgrade of claim 2, wherein the obtaining of the first upgrade result according to the new version software specifically includes:
the client information also comprises an identifier of a functional module of which the utilization rate is higher than a preset first threshold value;
counting the utilization rate of each functional module in the client information set to obtain a utilization rate set;
acquiring the identifier of the functional module with the utilization rate higher than a preset second threshold value according to the utilization rate set to obtain a high-utilization-rate functional module set;
obtaining test cases corresponding to the high-utilization-rate functional module set and a preset key functional module set to obtain a test case set;
testing the new version software according to the test case set;
and when the test case fails, setting the first upgrading result as upgrading failure.
5. The method of software upgrade testing according to claim 1, further comprising:
acquiring a preset third number of terminal models from the terminal model queue to obtain a second terminal model set; the preset third number is smaller than the preset first number;
acquiring a fourth preset number of operating system version numbers from the operating system version number queue to obtain a second operating system version number set; the preset fourth number is smaller than the preset second number;
deploying a second terminal cluster to be tested according to the second terminal model set and the second operating system version number set;
acquiring all software version numbers corresponding to the software to be tested except the first software version number to obtain a software version number set;
s1, acquiring a software version number from the software version number set to obtain a current software version number;
s2, installing to-be-tested software corresponding to the current software version number for each to-be-tested terminal in the second to-be-tested terminal cluster;
s3, upgrading the software to be tested corresponding to the current software version number in the second terminal cluster to be tested according to the latest software version number to obtain a second upgrading result;
and repeatedly executing the S1 to the S3 until the set of software version numbers is traversed.
6. A terminal for software upgrade testing, comprising one or more processors and a memory, the memory storing a program and configured to perform the following steps by the one or more processors:
acquiring client information sent by more than two clients corresponding to software to be tested to obtain a client information set; the client information comprises a software version number of the client, an operating system version number for operating the client and a terminal model for installing the client;
acquiring a software version number with the largest usage amount according to the client information set to obtain a first software version number;
deploying a first terminal cluster to be tested according to the usage of the version number of the operating system and the usage of the terminal model in the client information set;
upgrading the software to be tested corresponding to the first software version number in the first terminal cluster to be tested according to the preset latest software version number to obtain a first upgrading result; the first upgrading result comprises upgrading success and upgrading failure;
deploying a first terminal cluster to be tested according to the usage of the operating system version number and the usage of the terminal model in the client information set, specifically:
sorting more than two terminal models corresponding to the client information set from large to small according to the usage amount to obtain a terminal model queue;
acquiring a first preset number of terminal models from the terminal model queue to obtain a first terminal model set;
sequencing more than two operating system version numbers corresponding to the client information set from large to small according to the using amount to obtain an operating system version number queue;
acquiring a preset second number of operating system version numbers from the operating system version number queue to obtain a first operating system version number set;
and deploying a first terminal cluster to be tested according to the first terminal model set and the first operating system version number set.
7. The terminal for software upgrade test according to claim 6, wherein the software to be tested corresponding to the first software version number in the first terminal cluster to be tested is upgraded according to a preset latest software version number to obtain a first upgrade result, specifically:
acquiring a first upgrading patch according to the latest software version number and the first software version number;
the first terminal cluster to be tested upgrades the software to be tested corresponding to the first software version number according to the first upgrade patch to obtain new version software;
and acquiring a first upgrading result according to the new version software.
8. The terminal for software upgrade test according to claim 7, wherein a first upgrade result is obtained according to the new version software, specifically:
if the new version software displays a guide map when running the new version software, setting the first upgrading result as upgrading failure; the guide diagram is used for introducing a use method for a user who installs the software to be tested for the first time.
9. The terminal for software upgrade test according to claim 7, wherein a first upgrade result is obtained according to the new version software, specifically:
the client information also comprises an identifier of a functional module with the utilization rate higher than a preset first threshold value;
counting the utilization rate of each functional module in the client information set to obtain a utilization rate set;
acquiring the identifier of the functional module with the utilization rate higher than a preset second threshold value according to the utilization rate set to obtain a high-utilization-rate functional module set;
obtaining test cases corresponding to the high-utilization-rate functional module set and a preset key functional module set to obtain a test case set;
testing the new version software according to the test case set;
and when the test case fails, setting the first upgrading result as upgrading failure.
10. The software upgrade test terminal as set forth in claim 6, further comprising:
acquiring a preset third number of terminal models from the terminal model queue to obtain a second terminal model set; the preset third number is smaller than the preset first number;
obtaining a fourth preset operating system version number from the operating system version number queue to obtain a second operating system version number set; the preset fourth number is smaller than the preset second number;
deploying a second terminal cluster to be tested according to the second terminal model set and the second operating system version number set;
acquiring all software version numbers corresponding to the software to be tested except the first software version number to obtain a software version number set;
s1, acquiring a software version number from the software version number set to obtain a current software version number;
s2, installing to-be-tested software corresponding to the current software version number for each to-be-tested terminal in the second to-be-tested terminal cluster;
s3, upgrading the software to be tested corresponding to the current software version number in the second terminal cluster to be tested according to the latest software version number to obtain a second upgrading result;
and repeatedly executing the S1 to the S3 until the set of software version numbers is traversed.
CN201810118441.XA 2018-02-06 2018-02-06 Software upgrading test method and terminal Active CN110119348B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810118441.XA CN110119348B (en) 2018-02-06 2018-02-06 Software upgrading test method and terminal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810118441.XA CN110119348B (en) 2018-02-06 2018-02-06 Software upgrading test method and terminal

Publications (2)

Publication Number Publication Date
CN110119348A CN110119348A (en) 2019-08-13
CN110119348B true CN110119348B (en) 2022-12-13

Family

ID=67519389

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810118441.XA Active CN110119348B (en) 2018-02-06 2018-02-06 Software upgrading test method and terminal

Country Status (1)

Country Link
CN (1) CN110119348B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110659189B (en) * 2019-08-15 2021-02-23 华为技术有限公司 Application program generation method and device, cloud server and readable storage medium
CN110633218B (en) * 2019-09-24 2023-04-11 北京首汽智行科技有限公司 APP upgrading test method
CN112540919B (en) * 2020-12-08 2024-02-23 上海哔哩哔哩科技有限公司 Test equipment determining method and device
CN113836026A (en) * 2021-09-28 2021-12-24 深圳Tcl新技术有限公司 Upgrade test method and device, electronic equipment and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102387165A (en) * 2010-08-27 2012-03-21 腾讯科技(深圳)有限公司 System and method for upgrading software
CN103607456A (en) * 2013-11-21 2014-02-26 厦门雅迅网络股份有限公司 Remote software upgrade method for clustered mobile terminals
CN104090806A (en) * 2014-07-18 2014-10-08 百度在线网络技术(北京)有限公司 Method and device for processing upgrade patch and upgrade request
CN106201625A (en) * 2016-07-19 2016-12-07 乐视控股(北京)有限公司 A kind of software version updating method, updating device and electronic equipment thereof
CN106254305A (en) * 2015-06-05 2016-12-21 索尼公司 Distributed allowance list for safety updatability

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8606948B2 (en) * 2010-09-24 2013-12-10 Amazon Technologies, Inc. Cloud-based device interaction

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102387165A (en) * 2010-08-27 2012-03-21 腾讯科技(深圳)有限公司 System and method for upgrading software
CN103607456A (en) * 2013-11-21 2014-02-26 厦门雅迅网络股份有限公司 Remote software upgrade method for clustered mobile terminals
CN104090806A (en) * 2014-07-18 2014-10-08 百度在线网络技术(北京)有限公司 Method and device for processing upgrade patch and upgrade request
CN106254305A (en) * 2015-06-05 2016-12-21 索尼公司 Distributed allowance list for safety updatability
CN106201625A (en) * 2016-07-19 2016-12-07 乐视控股(北京)有限公司 A kind of software version updating method, updating device and electronic equipment thereof

Also Published As

Publication number Publication date
CN110119348A (en) 2019-08-13

Similar Documents

Publication Publication Date Title
CN110119348B (en) Software upgrading test method and terminal
CN109726093B (en) Method, apparatus and computer program product for executing test cases
CN104765692B (en) Method and apparatus for automatic test software
CN102122265B (en) System and method for verifying computer software test results
CN110888414B (en) Test method for upgrading vehicle controller
CN106612204B (en) Service checking method and device
CN105141647A (en) Method and system for detecting Web application
CN108509344B (en) Daily cutting batch test method, equipment and readable storage medium
CN109543417B (en) Vulnerability mining method and device based on Qemu platform
CN107506294A (en) Visualize automated testing method, device, storage medium and computer equipment
CN110928556A (en) Automatic program burning method and device for railway vehicle, and testing method and system
CN108446224B (en) Performance analysis method of application program on mobile terminal and storage medium
CN110297749B (en) Method and terminal for testing new function
CN117493188A (en) Interface testing method and device, electronic equipment and storage medium
CN110990289B (en) Method and device for automatically submitting bug, electronic equipment and storage medium
KR20150030297A (en) Verification apparatus, terminal device, system, method and computer-readable medium for verifying application
CN111796857B (en) Hot patch release method, device, equipment and storage medium
CN116467188A (en) Universal local reproduction system and method under multi-environment scene
CN115455431A (en) Method, device, terminal and medium for automatic code security detection and vulnerability repair
CN112084278B (en) Verification method and device for map data conversion customized product
CN113495750B (en) Upgrade detection method and device for equipment and server
CN114564387A (en) Scene type automatic testing method and system for OpenStack cloud platform
CN115080389A (en) Test system, method, equipment and storage medium for improving index statistical efficiency
CN112346994A (en) Test information correlation method and device, computer equipment and storage medium
CN112765041A (en) Game automatic testing method and device and electronic equipment

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
GR01 Patent grant
GR01 Patent grant