CN112527634A - Program dividing method and device, software testing method and platform - Google Patents

Program dividing method and device, software testing method and platform Download PDF

Info

Publication number
CN112527634A
CN112527634A CN202011337908.3A CN202011337908A CN112527634A CN 112527634 A CN112527634 A CN 112527634A CN 202011337908 A CN202011337908 A CN 202011337908A CN 112527634 A CN112527634 A CN 112527634A
Authority
CN
China
Prior art keywords
module
meta
modules
subset
software
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.)
Granted
Application number
CN202011337908.3A
Other languages
Chinese (zh)
Other versions
CN112527634B (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.)
China United Network Communications Group Co Ltd
Original Assignee
China United Network Communications Group 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 China United Network Communications Group Co Ltd filed Critical China United Network Communications Group Co Ltd
Priority to CN202011337908.3A priority Critical patent/CN112527634B/en
Publication of CN112527634A publication Critical patent/CN112527634A/en
Application granted granted Critical
Publication of CN112527634B publication Critical patent/CN112527634B/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/362Software debugging
    • G06F11/3628Software debugging of optimised code
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/43Checking; Contextual analysis
    • G06F8/436Semantic checking
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

The invention provides a program dividing method, which comprises the following steps: forming a plurality of module subsets from the meta-modules, each module subset comprising a plurality of interrelated meta-modules, the same meta-module being capable of belonging to different module subsets; combining different module subsets with the same redundant meta-module into a module subset, wherein the redundant meta-module is a meta-module with the consumed memory greater than a preset threshold value during testing; a set of modules is formed from the subset of modules, wherein a program includes one or more sets of modules. Correspondingly, a program dividing device, a software testing method and a platform are also provided. The program dividing method and device, the software testing method and platform can improve the program dividing efficiency and rationality and improve the software testing efficiency and testing precision.

Description

Program dividing method and device, software testing method and platform
Technical Field
The invention relates to the technical field of communication, in particular to a program dividing method and device, a software testing method and a software testing platform.
Background
The static code detection is to scan a source program by a static method after the code development is finished, expose out possible problems in the software in advance and prevent risks during the operation of the software.
However, as software becomes more and more complex, the software size becomes larger and larger, which usually represents that the software has more and more functional modules, which brings certain difficulties to static code scanning. At present, a tester needs to manually divide a program for realizing software functions into a plurality of modules and then test the modules, so that the efficiency is low, the division is unreasonable, and how to efficiently and reasonably divide the software program is a problem which needs to be solved urgently.
Disclosure of Invention
The technical problem to be solved by the present invention is to provide a program dividing method and device, a software testing method and a platform, which can improve the efficiency and rationality of program division and improve the software testing efficiency and testing precision, aiming at the above disadvantages of the prior art.
In a first aspect, an embodiment of the present invention provides a program partitioning method, where the method includes: forming a plurality of module subsets from the meta-modules, each module subset comprising a plurality of interrelated meta-modules, the same meta-module being capable of belonging to different module subsets; combining different module subsets with the same redundant meta-module into a module subset, wherein the redundant meta-module is a meta-module which consumes more memory than a preset threshold value during testing; a set of modules is formed from the subset of modules, wherein a program includes one or more sets of modules.
Preferably, the merging different module subsets having the same redundancy meta-module into one module subset specifically includes: screening out all module subsets with the same meta-module; calculating the memories consumed by all the meta-modules in the module subset during testing, judging whether the difference between the memories consumed by the same meta-module in the same module subset during testing and the memories consumed by other meta-modules during testing exceeds a preset threshold value, and combining a plurality of different module subsets, in which the same meta-modules exceeding the preset threshold value are respectively located, into one module subset.
Preferably, the calculating the memory consumed by all the meta-modules in the module subset during the test specifically includes: obtaining the code complexity of all meta-modules in the module subset; and calculating the memories consumed by all the meta-modules in the module subset during testing according to the linear relation between the code complexity and the memories consumed during testing.
Preferably, the forming a plurality of module subsets according to meta-modules specifically includes: acquiring association information between the meta-modules according to the lexical and semantic analysis; the meta-modules associated with each other are combined to form a plurality of module subsets.
In a second aspect, an embodiment of the present invention further provides a software testing method, where the method includes: dividing a program of software to be tested according to the program dividing method in the first aspect to obtain a plurality of module sets; and analyzing the defects of the module set to judge whether the software to be tested is qualified.
Preferably, the performing defect analysis on the module set to determine whether the software to be tested is qualified specifically includes: dividing a plurality of module sets into a plurality of batches, wherein each batch comprises a plurality of module sets; performing defect scanning on each module set in each batch in batches to obtain the number of defects of each module set; acquiring the sum of the defect numbers of all the module sets as the total defect number of the software to be tested; and if the total defect number is less than or equal to a preset number threshold, judging that the software to be tested is qualified.
Preferably, if the total defect number is greater than a preset number threshold, the software to be tested is judged to be unqualified. After the defect analysis is performed on the module set to judge whether the software to be tested is qualified, the software testing method further includes: acquiring defect information of each module set according to the result of scanning the defects of each module set in each batch in batches; modifying, adding or deleting the meta-module in the module set according to the defect information; performing regression testing on software to be tested, and acquiring modified, added or deleted meta-modules and module sets related to the meta-modules during the regression testing; and performing defect analysis on the acquired meta-module and the module set related to the meta-module to judge whether the software to be tested is qualified.
In a third aspect, an embodiment of the present invention further provides a program partitioning device, where the device includes an association module and a merging module. An association module for forming a plurality of module subsets from the meta-modules, each module subset comprising a plurality of interrelated meta-modules, the same meta-module being capable of belonging to different module subsets. The merging module is connected with the correlation module and is used for merging different module subsets with redundant meta-modules into one module subset, and the redundant meta-modules are meta-modules with the consumed memory greater than a preset threshold value during testing; and means for forming a set of modules from the subset of modules, wherein a program comprises one or more sets of modules.
Preferably, the merging module includes a screening unit, a calculating unit, a judging unit and a merging unit. And the screening unit is used for screening out all module subsets with the same meta-module. And the computing unit is connected with the screening unit and used for computing the memory consumed during the test of all the meta-modules in the module subset. And the judging unit is connected with the calculating unit and is used for judging whether the difference between the memory consumed by the same meta-module in the same module subset during the test and the memory consumed by other meta-modules during the test exceeds a preset threshold value or not. And the merging unit is connected with the judging unit and is used for merging a plurality of different module subsets in which the same meta-modules with the judgment results exceeding the preset threshold are respectively positioned into one module subset.
In a fourth aspect, an embodiment of the present invention further provides a software testing platform, including the program dividing apparatus and the testing module described in the third aspect. And the program dividing device is used for dividing the program of the software to be tested so as to obtain a plurality of module sets. And the test module is connected with the program dividing device and used for carrying out defect analysis on the module set so as to judge whether the software to be tested is qualified.
The program dividing method and device, the software testing method and the platform provided by the embodiment of the invention form module subsets by a plurality of meta-modules which are mutually associated, combine different module subsets with the same redundant meta-module into one module subset, and further form module sets by the module subsets, wherein one program comprises one or more module sets. The program division is carried out based on the incidence relation among the meta-modules, and the waste of system resources caused by program redundancy generated by the program division is avoided, so that the reasonable division of the program is realized.
Drawings
FIG. 1: is a flow chart of a program dividing method of embodiment 1 of the present invention;
FIG. 2: is a schematic diagram of a program partitioning result of embodiment 1 of the present invention;
FIG. 3: is a combined schematic diagram of a module set in embodiment 1 of the present invention;
FIG. 4: is a schematic structural diagram of a program partitioning apparatus in embodiment 3 of the present invention.
Detailed Description
In order to make those skilled in the art better understand the technical solution of the present invention, the program dividing method and apparatus, the software testing method and the platform of the present invention are further described in detail below with reference to the drawings and the embodiments.
Example 1:
as shown in fig. 1, the present embodiment provides a program dividing method, including:
step 101, a plurality of module subsets are formed according to the meta-modules, each module subset comprises a plurality of meta-modules which are related to each other, and the same meta-module can belong to different module subsets.
In this embodiment, the software program includes at least one meta-module, where the meta-module is a basic unit constituting the software program, and a certain association relationship exists between some meta-modules, where the association relationship refers to an interrelation and a mutual constraint relationship existing between the meta-modules, such as a variable call relationship, and according to the association relationship between the meta-modules, a plurality of meta-modules associated with each other form a module subset, and different module subsets are not associated with each other. The same meta-module may belong to different subsets of modules. As shown in fig. 2, the meta-module L and the meta-module N form a module subset J, the meta-module L belonging to the module subset J and the module subset K.
Optionally, obtaining association information between the meta-modules according to lexical and semantic analysis; the meta-modules associated with each other are combined to form a plurality of module subsets.
In this embodiment, a machine is used to automatically perform lexical and semantic analysis on a software program, obtain association information between meta-modules, and combine the meta-modules associated with each other according to the association information to form a module subset. When programs are divided manually, some meta-modules with close relations are often easily ignored, so that the programs are divided unreasonably.
Step 102, merging different module subsets with the same redundant meta-module into one module subset, wherein the redundant meta-module is a meta-module with the consumed memory greater than a preset threshold value during testing.
In this embodiment, since the same meta-module may belong to different module subsets, the number of times the same meta-module is tested is increased, that is, the same meta-module is repeatedly tested for many times, which results in a waste of resources for static code detection. Therefore, different module subsets having the same redundant meta-module need to be merged into one module subset, and the redundant meta-module is a meta-module whose consumed memory during testing is greater than a preset threshold, where the preset threshold can be preset.
Specifically, merging different subsets of modules having the same redundant meta-module into one subset of modules includes S21-S24:
s21, screening out all module subsets with the same meta-module.
And S22, calculating the memory consumed by all the meta-modules in the module subset during testing.
S23, judging whether the difference between the memory consumed by the same meta-module in the same module subset when testing and the memory consumed by other meta-modules when testing exceeds the preset threshold value.
And S24, combining a plurality of different module subsets into a module subset, wherein the module subsets have the same meta-modules exceeding the preset threshold value.
In this embodiment, all module subsets with the same meta-module are screened out, and as shown in fig. 2, a module subset J and a module subset K with the same meta-module L are screened out, where the module subset J further includes a meta-module N, and the module subset K further includes a meta-module M and a meta-module N. And calculating the memories consumed during the test of all the meta-modules in the module subset J and the module subset K, namely respectively calculating the memories consumed during the test of the meta-module L, the meta-module M and the meta-module N. And judging whether the difference of the memories consumed by the meta-module L and the meta-module N in the module subset J during the test exceeds a preset threshold value or not, and if so, judging that the difference exceeds the preset threshold value. Judging whether the difference between memories consumed by the meta-module L and the meta-module M in the module subset K during testing exceeds a preset threshold value, if the judgment result is that the difference does not exceed the preset threshold value, but the difference between the memories consumed by the meta-module L and the meta-module N in the module subset K during testing exceeds the preset threshold value, combining the module subset J and the module subset K with the judgment result of exceeding the preset threshold value into a module subset, wherein only one meta-module L is arranged in the combined module subset, and the problem that the system resources are wasted due to the fact that the meta-module L needs to be tested twice when the module subset J and the module subset K are tested respectively is avoided. Similarly, the redundancy judgment can be performed on other identical meta-modules I, J, K, H, etc. by adopting the methods of S21-S24.
Optionally, the memory consumed by all the meta-modules in the computing module subset during testing specifically includes: acquiring the code complexity of all meta-modules in the module subset; and calculating the memory consumed by all the meta-modules in the module subset during testing according to the linear relation between the code complexity and the memory consumed during testing.
In this embodiment, since the complexity of different meta-modules is different, the memory consumed during testing is also different, and experiments show that the higher the code complexity of a meta-module is, the larger the memory consumed during testing is, and that a linear relationship is formed between the code complexity of a meta-module and the memory consumed during testing of a meta-module. Therefore, the code complexity of all the meta-modules in the module subset is obtained, and the memory consumed during the test of all the meta-modules in the module subset is calculated according to the linear relation between the code complexity and the memory consumed during the test.
A set of modules is formed from the subset of modules, step 103, wherein a program comprises one or more sets of modules.
In this embodiment, a plurality of module subsets are further formed into a module set according to the condition that different module subsets include the same meta-module, such as the module subset H and the module subset I shown in fig. 2 that include the same meta-module, so the module subset H and the module subset I are further formed into the module set a. The software program comprises a plurality of module sets, and the module sets are not related to each other.
Alternatively, for the case of different module sets having the same subset of modules, the different module sets having the same subset of redundant modules are combined into one module set accordingly, in a manner similar to S21-S24. For example, as shown in fig. 3, the module subset O includes a plurality of meta-modules, and the module subset O is divided into different module set 1, module set 2, and module set 3, respectively. Screening out the module set 1, the module set 2 and the module set 3, and respectively calculating the memory consumed during the test of all the module subsets (the module subset O, P, Q, R) in the module sets 1, 2 and 3. And judging whether the difference between the memories consumed in the test of the module subset O and the module subset P in the module set 1 exceeds a preset threshold value or not, and if so, judging that the difference exceeds the preset threshold value. And judging whether the difference between the memories consumed in the test of the module subset O and the module subset Q in the module set 2 exceeds a preset threshold value or not, and if so, judging that the difference exceeds the preset threshold value. And judging whether the difference between the memories consumed in the test of the module subset O and the module subset R in the module set 3 exceeds a preset threshold value or not, and if the difference does not exceed the preset threshold value, judging whether the difference exceeds the preset threshold value or not. A plurality of different module sets (i.e., module set 1 and module set 2) whose determination result is that the threshold value is exceeded are merged into one module set (i.e., module set 1). Therefore, the situation that the same module subset O with larger memory consumption needs to be tested repeatedly is avoided, and the redundancy generated during program division is avoided, so that the efficiency and the rationality of the program division are improved.
In the program partitioning method provided in this embodiment, a plurality of meta-modules having mutual association constitute a module subset, and different module subsets having the same redundant meta-module are combined into one module subset, and the module subsets further constitute a module set. The program division is carried out based on the incidence relation of the meta-modules, and the waste of system resources caused by program redundancy generated by program division is avoided, so that the reasonable division of the program is realized. In addition, the judgment of the redundant meta-module is carried out based on whether the difference between the memories consumed by the same meta-module in the same module subset during the test and the memories consumed by other meta-modules during the test exceeds a preset threshold value, the degree of dependency relationship among the meta-modules is fully considered, and the precision of program division can be further improved. And the memory consumed during the test of the meta-module is evaluated according to the code complexity, and the evaluation means is reasonable.
Example 2:
the embodiment provides a software testing method, which is applied to static code detection of a software program, and the software testing method comprises the following steps:
step 201, a program of the software to be tested is divided according to the program dividing method in embodiment 1 to obtain a plurality of module sets.
Step 202, performing defect analysis on the module set to judge whether the software to be tested is qualified.
Optionally, step 202 specifically includes: dividing a plurality of module sets into a plurality of batches, wherein each batch comprises a plurality of module sets; performing defect scanning on each module set in each batch in batches to obtain the number of defects of each module set; acquiring the sum of the defect numbers of all the module sets as the total defect number of the software to be tested; and if the total defect number is less than or equal to the preset number threshold, judging that the software to be tested is qualified. And if the total defect number is greater than the preset number threshold, judging that the software to be detected is unqualified.
Optionally, after performing defect analysis on the module set to determine whether the software to be tested is qualified, the software testing method further includes steps 203 to 206:
and step 203, acquiring defect information of each module set according to the result of scanning the defects of each module set in each batch in batches.
And step 204, modifying, adding or deleting the meta-module in the module set according to the defect information.
Step 205, performing regression testing on the software to be tested, and acquiring the modified, added or deleted meta-module and the module set related to the meta-module during the regression testing.
And step 206, performing defect analysis on the acquired meta-module and the module set related to the meta-module to judge whether the software to be tested is qualified.
In this embodiment, when performing regression testing on a modified program, only the modified meta-module or module set is scanned, and global scanning is not required, so that the detection time of regression testing of software to be tested is greatly shortened, and the software testing efficiency is improved.
In the software testing method provided in this embodiment, the associated information between the meta-modules is obtained by performing syntax and semantic analysis on the program of the software function to be tested, the associated meta-modules are automatically combined into the module subset, and then the module subset is combined into the module set. The method is particularly suitable for testing programs with large scale and high complexity, and solves the problem of low efficiency of manually dividing the programs into modules. And the modules are divided according to the incidence relation, so that the problem of inaccurate test caused by unreasonable division when a tester manually divides the program is avoided, and the test precision of the software to be tested can be improved. The module subsets divided for the first time are further combined according to the incidence relation and the memory occupation condition consumed during the test of the meta-module, so that the module subsets combined for the first time can be prevented from having larger redundancy, the utilization rate of system resources during the test is improved, and the test efficiency is improved.
Example 3:
as shown in fig. 4, the present embodiment provides a program dividing apparatus, which includes an association module 31 and a merging module 32.
An association module 31 for forming a plurality of module subsets from the meta-modules, each module subset comprising a plurality of interrelated meta-modules, the same meta-module being capable of belonging to different module subsets.
A merging module 32 connected to the association module 31, configured to merge different module subsets with redundant meta-modules into one module subset, where a redundant meta-module is a meta-module whose consumed memory during testing is greater than a preset threshold; and means for forming a set of modules from the subset of modules, wherein a program comprises one or more sets of modules.
Optionally, the merging module 32 includes a screening unit 321, a calculating unit 322, a judging unit 323, and a merging unit 324.
A screening unit 321, configured to screen out all module subsets having the same meta-module.
The computing unit 322 is connected to the screening unit 321, and is configured to compute the memory consumed by all the meta-modules in the module subset during testing.
The determining unit 323 is connected to the calculating unit 322, and configured to determine whether a difference between the memories consumed by the same meta-module in the same module subset during testing and the memories consumed by other meta-modules during testing exceeds a preset threshold.
The merging unit 324 is connected to the determining unit 323, and is configured to merge a plurality of different module subsets where the same meta-module with the determination result exceeding the preset threshold is respectively located into one module subset.
Optionally, the computing unit comprises an acquisition component and a computing component. An obtaining component for obtaining code complexity of all the meta-modules in the subset of modules. And the computing component is connected with the acquisition component, is used for storing the linear relation between the code complexity and the memory consumed during the test, and is used for computing the memory consumed during the test of all the meta-modules in the module subset according to the linear relation between the code complexity and the memory consumed during the test.
Optionally, the association module comprises an analysis component and an association component. And the analysis component is used for acquiring the association information between the meta-modules according to the lexical and semantic analysis. And the association component is connected with the analysis component and is used for combining the meta-modules associated with each other to form a plurality of module subsets.
Example 4:
this embodiment provides a software testing platform, which includes the program dividing apparatus in embodiment 3, and a testing module.
And the program dividing device is used for dividing the program of the software to be tested so as to obtain a plurality of module sets.
And the test module is connected with the program dividing device and used for carrying out defect analysis on the module set so as to judge whether the software to be tested is qualified.
It will be understood that the above embodiments are merely exemplary embodiments taken to illustrate the principles of the present invention, which is not limited thereto. It will be apparent to those skilled in the art that various modifications and improvements can be made without departing from the spirit and substance of the invention, and these modifications and improvements are also considered to be within the scope of the invention.

Claims (10)

1. A program partitioning method, comprising:
forming a plurality of module subsets from the meta-modules, each module subset comprising a plurality of interrelated meta-modules, the same meta-module being capable of belonging to different module subsets;
combining different module subsets with the same redundant meta-module into a module subset, wherein the redundant meta-module is a meta-module which consumes more memory than a preset threshold value during testing;
a set of modules is formed from the subset of modules, wherein a program includes one or more sets of modules.
2. The program partitioning method according to claim 1, wherein said merging different subsets of modules having the same redundancy meta-module into one subset of modules specifically comprises:
screening out all module subsets with the same meta-module;
calculating the memory consumed by all the meta-modules in the module subset during testing;
judging whether the difference between the memory consumed by the same meta-module in the same module subset during testing and the memory consumed by other meta-modules during testing exceeds a preset threshold value or not;
and combining a plurality of different module subsets in which the same meta-modules with the judgment results exceeding the preset threshold are respectively positioned into one module subset.
3. The program partitioning method according to claim 2, wherein calculating the memory consumed by all the meta-modules in the module subset during testing specifically comprises:
obtaining the code complexity of all meta-modules in the module subset;
and calculating the memories consumed by all the meta-modules in the module subset during testing according to the linear relation between the code complexity and the memories consumed during testing.
4. The program partitioning method according to claim 1, wherein forming a plurality of module subsets according to meta-modules specifically comprises:
acquiring association information between the meta-modules according to the lexical and semantic analysis;
the meta-modules associated with each other are combined to form a plurality of module subsets.
5. A software testing method, comprising:
the program dividing method according to any one of claims 1 to 4, dividing a program of software to be tested to obtain a plurality of module sets;
and analyzing the defects of the module set to judge whether the software to be tested is qualified.
6. The software testing method according to claim 5, wherein the performing defect analysis on the module set to determine whether the software to be tested is qualified specifically comprises:
dividing a plurality of module sets into a plurality of batches, wherein each batch comprises a plurality of module sets;
performing defect scanning on each module set in each batch in batches to obtain the number of defects of each module set;
acquiring the sum of the defect numbers of all the module sets as the total defect number of the software to be tested;
and if the total defect number is less than or equal to a preset number threshold, judging that the software to be tested is qualified.
7. The software testing method according to claim 6, wherein if the total number of defects is greater than a preset number threshold, the software to be tested is judged to be unqualified;
after the defect analysis is performed on the module set to judge whether the software to be tested is qualified, the method further comprises the following steps:
acquiring defect information of each module set according to the result of scanning the defects of each module set in each batch in batches;
modifying, adding or deleting the meta-module in the module set according to the defect information;
performing regression testing on software to be tested, and acquiring modified, added or deleted meta-modules and module sets related to the meta-modules during the regression testing;
and performing defect analysis on the acquired meta-module and the module set related to the meta-module to judge whether the software to be tested is qualified.
8. The program dividing device is characterized by comprising an association module and a merging module,
an association module for forming a plurality of subsets of modules from the meta-modules, each subset of modules comprising a plurality of interrelated meta-modules, the same meta-module being capable of belonging to different subsets of modules,
the merging module is connected with the correlation module and is used for merging different module subsets with redundant meta-modules into one module subset, and the redundant meta-modules are meta-modules with the consumed memory greater than a preset threshold value during testing; and, means for forming a set of modules from the subset of modules.
9. The program dividing apparatus according to claim 8, wherein the merging module includes a filtering unit, a calculating unit, a judging unit, and a merging unit,
a screening unit for screening out all module subsets having the same meta-module,
a computing unit connected with the screening unit and used for computing the memory consumed by all the meta-modules in the module subset during the test,
a judging unit connected with the calculating unit for judging whether the difference between the memory consumed by the same meta-module in the same module subset during the test and the memory consumed by other meta-modules during the test exceeds a preset threshold value,
and the merging unit is connected with the judging unit and is used for merging a plurality of different module subsets in which the same meta-modules with the judgment results exceeding the preset threshold are respectively positioned into one module subset.
10. A software test platform comprising the program dividing apparatus of any one of claims 8 or 9, and a test module,
a program dividing device for dividing the program of the software to be tested to obtain a plurality of module sets,
and the test module is connected with the program dividing device and used for carrying out defect analysis on the module set so as to judge whether the software to be tested is qualified.
CN202011337908.3A 2020-11-25 2020-11-25 Program division method and device, software testing method and platform Active CN112527634B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011337908.3A CN112527634B (en) 2020-11-25 2020-11-25 Program division method and device, software testing method and platform

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011337908.3A CN112527634B (en) 2020-11-25 2020-11-25 Program division method and device, software testing method and platform

Publications (2)

Publication Number Publication Date
CN112527634A true CN112527634A (en) 2021-03-19
CN112527634B CN112527634B (en) 2023-06-02

Family

ID=74993481

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011337908.3A Active CN112527634B (en) 2020-11-25 2020-11-25 Program division method and device, software testing method and platform

Country Status (1)

Country Link
CN (1) CN112527634B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113238884A (en) * 2021-05-06 2021-08-10 国家计算机网络与信息安全管理中心 Firmware file detection method and device, electronic equipment and storage medium

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011028683A (en) * 2009-07-29 2011-02-10 Mitsubishi Electric Corp Motion detector and motion detection method
CN103336739A (en) * 2013-06-09 2013-10-02 中国联合网络通信集团有限公司 Software testing method and platform
US20150269243A1 (en) * 2014-03-19 2015-09-24 Fujitsu Limited Computer product, software dividing apparatus, and software dividing method
US20160014039A1 (en) * 2014-07-11 2016-01-14 Vmware, Inc. Methods and apparatus to provision a workload in a virtual server rack deployment
US20170149880A1 (en) * 2015-11-24 2017-05-25 Vmware, Inc. Methods and apparatus to deploy workload domains in virtual server racks
CN107577533A (en) * 2017-08-31 2018-01-12 广东欧珀移动通信有限公司 Resource allocation method and Related product
WO2019218444A1 (en) * 2018-05-14 2019-11-21 平安科技(深圳)有限公司 Test report generating method, apparatus and device, and storage medium
CN110597531A (en) * 2019-08-05 2019-12-20 平安科技(深圳)有限公司 Distributed module upgrading method and device and storage medium

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011028683A (en) * 2009-07-29 2011-02-10 Mitsubishi Electric Corp Motion detector and motion detection method
CN103336739A (en) * 2013-06-09 2013-10-02 中国联合网络通信集团有限公司 Software testing method and platform
US20150269243A1 (en) * 2014-03-19 2015-09-24 Fujitsu Limited Computer product, software dividing apparatus, and software dividing method
US20160014039A1 (en) * 2014-07-11 2016-01-14 Vmware, Inc. Methods and apparatus to provision a workload in a virtual server rack deployment
US20170149880A1 (en) * 2015-11-24 2017-05-25 Vmware, Inc. Methods and apparatus to deploy workload domains in virtual server racks
CN107577533A (en) * 2017-08-31 2018-01-12 广东欧珀移动通信有限公司 Resource allocation method and Related product
WO2019218444A1 (en) * 2018-05-14 2019-11-21 平安科技(深圳)有限公司 Test report generating method, apparatus and device, and storage medium
CN110597531A (en) * 2019-08-05 2019-12-20 平安科技(深圳)有限公司 Distributed module upgrading method and device and storage medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
HUNG-CHIH YANG等: "Map-reduce-merge: simplified relational data processing on large clusters", 《SIGMOD \'07: PROCEEDINGS OF THE 2007 ACM SIGMOD INTERNATIONAL CONFERENCE ON MANAGEMENT OF DATA》, pages 1029 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113238884A (en) * 2021-05-06 2021-08-10 国家计算机网络与信息安全管理中心 Firmware file detection method and device, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN112527634B (en) 2023-06-02

Similar Documents

Publication Publication Date Title
US9739720B2 (en) Method, computer system and apparatus for recipe generation for automated inspection of semiconductor devices
CN110413506A (en) Test case recommended method, device, equipment and storage medium
CN103235759B (en) Method for generating test case and device
CN110069404B (en) Code debugging method, device, equipment and medium
CN114546738B (en) Universal test method, system, terminal and storage medium for server
CN113342685A (en) Precise test method and device, computer equipment and storage medium
CN111859047A (en) Fault solving method and device
CN113010413A (en) Automatic interface testing method and device
US11663113B2 (en) Real time fault localization using combinatorial test design techniques and test case priority selection
CN117333424A (en) Wafer defect evaluation method, device, memory chip and readable storage medium
CN112527634A (en) Program dividing method and device, software testing method and platform
CN114064473A (en) Vehicle machine system testing method and system, vehicle and computer readable storage medium
CN103336739B (en) Method for testing software and platform
CN108874662A (en) The non-transitory computer-readable medium of test method and storage program
CN113391970A (en) Chip testing method and device for heterogeneous many-core processor
CN113849404A (en) Management method, device and storage medium for interface test related information
CN110781079B (en) Data processing flow debugging method and device and electronic equipment
CN114757869A (en) Product flaw detection method and computer device
CN111966598A (en) C + + Test customization method and aerospace model software code unit static analysis method
CN111679977A (en) Jest-based React project unit testing method, equipment and storage medium
CN107102938B (en) Test script updating method and device
US11579851B2 (en) Method and system for identification of redundant function-level slicing calls
CN115201669B (en) Chip internal circuit detection method and device
CN115525565A (en) Code quality detection method and device, computer equipment and readable storage medium
CN117573513A (en) Test case generation method and device, electronic 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
GR01 Patent grant
GR01 Patent grant