CN112527634B - Program division method and device, software testing method and platform - Google Patents

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

Info

Publication number
CN112527634B
CN112527634B CN202011337908.3A CN202011337908A CN112527634B CN 112527634 B CN112527634 B CN 112527634B CN 202011337908 A CN202011337908 A CN 202011337908A CN 112527634 B CN112527634 B CN 112527634B
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.)
Active
Application number
CN202011337908.3A
Other languages
Chinese (zh)
Other versions
CN112527634A (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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Computational Linguistics (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The invention provides a program dividing method, which comprises the following steps: forming a plurality of module subsets according to the meta-modules, each module subset comprising a plurality of interrelated meta-modules, the same meta-modules 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 being larger 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 efficiency and rationality of program division and improve the software testing efficiency and accuracy.

Description

Program division 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 platform.
Background
The static code detection is to scan the source program by adopting a static method after the code development is completed, so that possible problems in the software are exposed in advance, and the risk of the software in running is prevented.
However, as software becomes more complex, the software scale becomes larger, which generally represents that the software has more and more functional modules, thus bringing a certain difficulty to static code scanning. Currently, a tester needs to divide a program for realizing a software function into a plurality of modules manually, then test the modules, the efficiency is low, the situation that the division is unreasonable exists, and how to efficiently and reasonably divide the software program is a problem to be solved.
Disclosure of Invention
The invention aims to solve the technical problems in the prior art, and provides a program dividing method and device, a software testing method and platform, which can improve the efficiency and rationality of program division and improve the software testing efficiency and testing precision.
In a first aspect, an embodiment of the present invention provides a program dividing method, including: forming a plurality of module subsets according to the meta-modules, each module subset comprising a plurality of interrelated meta-modules, the same meta-modules 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 being larger 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 the different module subsets having the same redundancy element module into one module subset specifically includes: screening all module subsets with the same meta-module; and calculating the memory consumed during testing of all meta-modules in the module subsets, judging whether the difference between the memory consumed during testing of the same meta-module in the same module subset and the memory consumed during testing of other meta-modules exceeds a preset threshold value, and merging a plurality of different module subsets where the same meta-modules exceeding the preset threshold value are respectively located into one module subset.
Preferably, the calculating the memory consumed in testing all meta-modules in the module subset specifically includes: acquiring the code complexity of all meta-modules in the module subset; and calculating the memory consumed in testing all meta-modules in the module subset according to the linear relation between the code complexity and the memory consumed in testing.
Preferably, the forming a plurality of module subsets according to the meta-module specifically includes: acquiring association information between meta modules according to lexical and semantic analysis; the meta-modules that are 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 the software to be tested according to the program dividing method in the first aspect to obtain a plurality of module sets; and carrying out defect analysis on the module set to judge whether the software to be tested is qualified or not.
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, each batch including a plurality of module sets; carrying out defect scanning on each module set in each batch in batches to obtain the number of defects in each module set; obtaining 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 smaller 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 comprises the following steps: obtaining defect information of each module set according to the result of carrying out defect scanning on each module set in each batch; modifying, adding or deleting the meta-module in the module set according to the defect information; carrying out regression testing on the software to be tested, and acquiring a modified, added or deleted meta-module and a module set related to the meta-module when carrying out the regression testing; and performing defect analysis on the acquired meta-module and the module set related to the meta-module so as to judge whether the software to be tested is qualified or not.
In a third aspect, an embodiment of the present invention further provides a program division apparatus, where the apparatus includes an association module and a merging module. And the association module is used for forming a plurality of module subsets according to the meta-modules, wherein each module subset comprises a plurality of meta-modules which are associated with each other, and the same meta-modules can belong to different module subsets. The merging module is connected with the association module and is used for merging different module subsets with redundant meta-modules into a module subset, wherein the redundant meta-modules are meta-modules with consumed memory larger than a preset threshold value during testing; and forming a set of modules from the subset of modules, wherein a program includes one or more sets of modules.
Preferably, the merging module comprises a screening unit, a calculating unit, a judging unit and a merging unit. And the screening unit is used for screening all the module subsets with the same meta-module. And the calculating unit is connected with the screening unit and used for calculating the memory consumed in testing all meta-modules in the module subset. The judging unit is connected with the calculating unit and is used for judging whether the difference between the memory consumed in the test of the same meta-module and the memory consumed in the test of other meta-modules in the same module subset 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 where the same meta-modules exceeding the preset threshold are respectively located 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 to obtain a plurality of module sets. And the testing module is connected with the program dividing device and is used for carrying out defect analysis on the module set so as to judge whether the software to be tested is qualified or not.
The program dividing method, the program dividing device, the software testing method and the software testing platform provided by the embodiment of the invention form a module subset by combining a plurality of related meta-modules, and combine different module subsets with the same redundant meta-modules into one module subset, wherein the module subset further forms a module set, and one program comprises one or more module sets. Program division is performed based on the association relation between the meta-modules, and waste of system resources caused by program redundancy generated by program division is avoided, so that reasonable division of programs is realized.
Drawings
Fig. 1: a flowchart of a program division method in embodiment 1 of the present invention;
fig. 2: a schematic diagram of a program division result in embodiment 1 of the present invention;
fig. 3: a schematic diagram of merging a module set in embodiment 1 of the present invention;
fig. 4: a schematic structural diagram of a program dividing apparatus according to embodiment 3 of the present invention is shown.
Detailed Description
In order to enable those skilled in the art to better understand the technical solution of the present invention, the program dividing method and apparatus, the software testing method and platform of the present invention are described in further detail below with reference to the accompanying drawings and embodiments.
Example 1:
as shown in fig. 1, the present embodiment provides a program dividing method, which includes:
step 101, forming a plurality of module subsets according to the meta-modules, wherein each module subset comprises a plurality of meta-modules which are mutually related, and the same meta-modules 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 forming the software program, and a certain association relationship exists between part of the meta modules, where the association relationship refers to an interrelation and an interrelation relationship existing between each meta module, for example, a variable call relationship, and according to the association relationship between the meta modules, a plurality of meta modules that are interrelated form a module subset, where different module subsets are not related to 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, and the meta-module L belongs 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 that are 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 meta modules associated with each other according to the association information to form a module subset. When program division is performed manually, some meta-modules with close relations are easy to ignore, so that the program division is unreasonable.
And 102, 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 in the test being larger than a preset threshold value.
In this embodiment, since the same meta-module may belong to different module subsets, the number of times that the same meta-module is tested is increased, that is, the same meta-module will be repeatedly tested multiple times, thereby resulting in resource waste of static code detection. Therefore, different module subsets with the same redundant meta-module are combined into one module subset, and the redundant meta-module is a meta-module with the consumed memory in the test being larger than a preset threshold, wherein the preset threshold can be preset.
Specifically, merging different subsets of modules having the same redundancy meta-module into one subset of modules, including S21-S24:
s21, screening all module subsets with the same meta-module.
S22, the memory consumed in testing all meta-modules in the module subset is calculated.
S23, judging whether the difference between the memory consumed in the test of the same meta-module and the memory consumed in the test of other meta-modules in the same module subset exceeds a preset threshold value.
S24, merging a plurality of different module subsets where the same meta-modules exceeding the preset threshold are respectively located into one module subset.
In this embodiment, all the module subsets with the same meta-module are screened out, as shown in fig. 2, a module subset J and a module subset K with the same meta-module L are screened out, wherein 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 memory consumed in testing of all the meta-modules in the module subset J and the module subset K, namely respectively calculating the memory consumed in testing of the meta-modules L, M and N. Judging whether the difference between the memory consumed in the testing of the meta-module L and the meta-module N in the module subset J exceeds a preset threshold value or not, and if so, judging that the difference exceeds the preset threshold value. Judging whether the difference between the memory consumed in the testing of the meta-module L and the meta-module M in the module subset K exceeds a preset threshold, if the judgment result is that the memory consumed in the testing of the meta-module L and the meta-module N in the module subset K does not exceed the preset threshold, merging the module subset J and the module subset K with the judgment result exceeding the preset threshold into one module subset, wherein only one meta-module L in the merged module subset is needed, and the waste of system resources caused by testing the meta-module L twice when the module subset J and the module subset K are respectively tested is avoided. Similarly, the redundancy judgment can be performed on other same meta-modules I, J, K, H, etc. by adopting the method of S21-S24.
Optionally, the memory consumed in testing all meta-modules in the computing module subset specifically includes: acquiring the code complexity of all meta-modules in the module subset; and calculating the memory consumed by all 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, because the complexity of different meta-modules is different, the memory consumed during testing is also different, and it is found through experiments that the higher the code complexity of a meta-module is, the larger the memory consumed during testing is, and the code complexity of the meta-module and the memory consumed during testing of the meta-module are linearly related. Therefore, the code complexity of all the meta-modules in the module subset is obtained, and the memory consumed in 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 in the test.
Step 103, forming a module set according to the module subset, wherein a program comprises one or more module sets.
In this embodiment, according to the case that different module subsets include the same meta-module, the plurality of module subsets further form a module set, and as shown in fig. 2, the module subset H and the module subset I further form a module set a because the module subset H and the module subset I include the same meta-module. The software program comprises a plurality of module sets, and the module sets are not related to each other.
Alternatively, for the case where different module sets have the same module subset, the method is similar to S21-S24, with correspondingly merging different module sets having the same redundant module subset into one module set. 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 sets 1, 2, and 3, respectively. Screening out a module set 1, a module set 2 and a module set 3, and respectively calculating the memory consumed in testing all the module subsets (module subset O, P, Q, R) in the module sets 1, 2 and 3. Judging whether the difference between the module subset O in the module set 1 and the memory consumed in the module subset P test exceeds a preset threshold value, and if so, judging that the difference exceeds the preset threshold value. Judging whether the difference between the memory consumed in the test of the module subset O and the module subset Q in the module set 2 exceeds a preset threshold value, and if so, judging that the difference exceeds the preset threshold value. Judging whether the difference between the memory consumed in the test of the module subset O and the module subset R in the module set 3 exceeds a preset threshold value, and if so, judging that the difference does not exceed the preset threshold value. A plurality of different module sets (i.e., module set 1 and module set 2) whose judgment result is that the preset threshold is exceeded are combined into one module set (i.e., module set 1). Therefore, the same module subset O with larger consumed memory is prevented from being repeatedly tested, redundancy generated during program division is avoided, and therefore the efficiency and the rationality of program division are improved.
In the program dividing method provided in this embodiment, the module subset further constitutes the module set by combining a plurality of meta-modules having correlations to each other into a module subset and combining different module subsets having the same redundant meta-modules into one module subset. Program division is carried out based on the association relation of the meta-modules, and waste of system resources caused by program redundancy generated by the program division is avoided, so that reasonable division of the program is realized. In addition, whether the difference between the memory consumed in the test of the same meta-module and the memory consumed in the test of other meta-modules in the same module subset exceeds a preset threshold value is used for judging the redundant meta-module, the degree of dependency between the meta-modules is fully considered, and the precision of program division can be further improved. And the memory consumed during testing the meta-module is evaluated according to the complexity of the codes, so that 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 comprises the following steps:
step 201, the program of the software to be tested is divided according to the program division method in embodiment 1 to obtain a plurality of module sets.
And 202, performing defect analysis on the module set to judge whether the software to be tested is qualified or not.
Optionally, step 202 specifically includes: dividing a plurality of module sets into a plurality of batches, each batch including a plurality of module sets; carrying out defect scanning on each module set in each batch in batches to obtain the number of defects in each module set; obtaining 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 smaller than or equal to a preset number threshold, judging that the software to be tested is qualified. If the total defect number is larger than the preset number threshold, judging that the software to be tested 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 step 203-step 206:
and 203, obtaining defect information of each module set according to the result of performing defect scanning on each module set in each batch in batches.
In step 204, the meta-modules in the set of modules are modified, added or deleted according to the defect information.
And 205, carrying out regression testing on the software to be tested, and acquiring the modified, added or deleted meta-modules and the related module set when carrying out the regression testing.
And 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 or not.
In this embodiment, when the regression test is performed on the modified program, only the modified meta module or the module set is scanned, and global scanning may not be performed, so that the detection time of the regression test of the software to be tested is greatly shortened, and the software test efficiency is improved.
In the software testing method provided by the embodiment, through grammar and semantic analysis of the program of the software function to be tested, the associated information among the meta-modules is obtained, the meta-modules with the association 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 program into modules. And the module is divided according to the association relation, so that the problem of inaccurate test caused by unreasonable division of a tester when the tester divides the program manually is avoided, and the test precision of the software to be tested can be improved. The module subsets which are divided for the first time are further combined according to the association relation and the memory occupation ratio consumed during the meta-module test, so that the module subsets which are combined for the first time are 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.
The association module 31 is configured to form a plurality of module subsets according to the meta-modules, each module subset including a plurality of meta-modules associated with each other, where the same meta-module can belong to different module subsets.
The merging module 32 is connected with the association module 31 and is used for merging different module subsets with redundant meta-modules into a module subset, wherein the redundant meta-modules are meta-modules with consumed memory larger than a preset threshold value during testing; and forming a set of modules from the subset of modules, wherein a program includes one or more sets of modules.
Optionally, the merging module 32 includes a filtering unit 321, a calculating unit 322, a judging unit 323, and a merging unit 324.
And a screening unit 321, configured to screen all the module subsets having the same meta-module.
And the computing unit 322 is connected with the screening unit 321 and is used for computing the memory consumed in testing all the meta-modules in the module subset.
The judging unit 323 is connected to the calculating unit 322, and is configured to judge whether the difference between the memory consumed in testing the same meta-module and the memory consumed in testing the other meta-modules in the same module subset exceeds a preset threshold.
And the merging unit 324 is connected to the judging unit 323, and is configured to merge a plurality of different module subsets where the same meta-modules with the judging result exceeding the preset threshold are respectively located into one module subset.
Optionally, the computing unit includes an acquisition component and a computing component. And the acquisition component is used for acquiring the code complexity of all the meta-modules in the module subset. The calculation component is connected with the acquisition component and used for storing the linear relation between the code complexity and the memory consumed in the test and calculating the memory consumed in the test of all meta-modules in the module subset according to the linear relation between the code complexity and the memory consumed in the test.
Optionally, the association module includes 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 which are associated with each other to form a plurality of module subsets.
Example 4:
the present 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 to obtain a plurality of module sets.
And the testing module is connected with the program dividing device and is used for carrying out defect analysis on the module set so as to judge whether the software to be tested is qualified or not.
It is to be understood that the above embodiments are merely illustrative of the application of the principles of the present invention, but not in limitation thereof. Various modifications and improvements may be made by those skilled in the art without departing from the spirit and substance of the invention, and are also considered to be within the scope of the invention.

Claims (8)

1. A program dividing method, comprising:
forming a plurality of module subsets according to the meta-modules, each module subset comprising a plurality of interrelated meta-modules, the same meta-modules 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 being larger than a preset threshold value during testing;
for the case of different sets of modules having the same subset of modules, respectively merging different sets of modules having the same subset of redundant modules into one set of modules, the method is similar to the set of modules merging, wherein a program comprises one or more sets of modules;
the merging of different module subsets with the same redundancy meta-module into one module subset specifically comprises:
screening all module subsets with the same meta-module;
calculating the memory consumed by all meta-modules in the module subset during testing;
judging whether the difference between the memory consumed in the test of the same meta-module and the memory consumed in the test of other meta-modules in the same module subset exceeds a preset threshold value or not;
and merging a plurality of different module subsets where the same meta-modules exceeding the preset threshold are respectively located into one module subset.
2. The program division method according to claim 1, wherein calculating the memory consumed in testing all meta-modules in the subset of modules comprises:
acquiring the code complexity of all meta-modules in the module subset;
and calculating the memory consumed in testing all meta-modules in the module subset according to the linear relation between the code complexity and the memory consumed in testing.
3. Program division method according to claim 1, characterized in that said forming a plurality of module subsets from meta-modules comprises in particular:
acquiring association information between meta modules according to lexical and semantic analysis;
the meta-modules that are associated with each other are combined to form a plurality of module subsets.
4. A method of testing software, comprising:
a program dividing method according to any one of claims 1-3 for dividing a program of software to be tested to obtain a plurality of module sets;
and carrying out defect analysis on the module set to judge whether the software to be tested is qualified or not.
5. The software testing method according to claim 4, wherein the performing defect analysis on the module set to determine whether the software to be tested is acceptable specifically includes:
dividing a plurality of module sets into a plurality of batches, each batch including a plurality of module sets;
carrying out defect scanning on each module set in each batch in batches to obtain the number of defects in each module set;
obtaining 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 smaller than or equal to a preset number threshold, judging that the software to be tested is qualified.
6. The software testing method according to claim 5, wherein if the total defect number is greater than a preset number threshold, determining that the software to be tested is not qualified;
after the defect analysis is performed on the module set to determine whether the software to be tested is qualified, the method further comprises:
obtaining defect information of each module set according to the result of carrying out defect scanning on each module set in each batch;
modifying, adding or deleting the meta-module in the module set according to the defect information;
carrying out regression testing on the software to be tested, and acquiring a modified, added or deleted meta-module and a module set related to the meta-module when carrying out the regression testing;
and performing defect analysis on the acquired meta-module and the module set related to the meta-module so as to judge whether the software to be tested is qualified or not.
7. A program dividing device is characterized by comprising a correlation module and a combination module,
an association module for forming a plurality of module subsets from the meta-modules, each module subset comprising a plurality of inter-associated meta-modules, the same meta-modules being capable of belonging to different module subsets,
the merging module is connected with the association module and is used for merging different module subsets with redundant meta-modules into a module subset, wherein the redundant meta-modules are meta-modules with consumed memory larger than a preset threshold value during testing; and for the case of different sets of modules having the same subset of modules, respectively merging different sets of modules having the same subset of redundant modules into one set of modules, the method being similar to the set of modules merging, wherein a program comprises one or more sets of modules;
wherein the merging module comprises a screening unit, a calculating unit, a judging unit and a merging unit,
a screening unit for screening all module subsets having the same meta-module,
a calculation unit connected with the screening unit for calculating the memory consumed by testing all meta-modules in the module subset,
a judging unit connected with the calculating unit for judging whether the difference between the memory consumed in the testing of the same meta-module and the memory consumed in the testing of other meta-modules in the same module subset exceeds a preset threshold,
and the merging unit is connected with the judging unit and is used for merging a plurality of different module subsets where the same meta-modules exceeding the preset threshold are respectively located into one module subset.
8. A software testing platform, characterized by comprising the program dividing device and the testing module of claim 7,
program dividing means for dividing a program of the software to be tested to obtain a plurality of module sets,
and the testing module is connected with the program dividing device and is used for carrying out defect analysis on the module set so as to judge whether the software to be tested is qualified or not.
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 CN112527634A (en) 2021-03-19
CN112527634B true 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)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113238884B (en) * 2021-05-06 2022-02-08 国家计算机网络与信息安全管理中心 Firmware file detection 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
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
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

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6326886B2 (en) * 2014-03-19 2018-05-23 富士通株式会社 Software division program, software division apparatus, and software division method
US10044795B2 (en) * 2014-07-11 2018-08-07 Vmware Inc. Methods and apparatus for rack deployments for virtual computing environments
US11263006B2 (en) * 2015-11-24 2022-03-01 Vmware, Inc. Methods and apparatus to deploy workload domains in virtual server racks

Patent Citations (5)

* 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
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》.2007,第1029–1040页. *

Also Published As

Publication number Publication date
CN112527634A (en) 2021-03-19

Similar Documents

Publication Publication Date Title
CN106294120B (en) Method, apparatus and computer program product for testing code
CN110413506A (en) Test case recommended method, device, equipment and storage medium
CN103235759A (en) Method and device for generating test cases
CN114546738B (en) Universal test method, system, terminal and storage medium for server
CN112527634B (en) Program division method and device, software testing method and platform
CN111679977B (en) Method, equipment and storage medium for testing exact project unit based on Jest
CN105468508A (en) Code testing method and apparatus
CN117333424A (en) Wafer defect evaluation method, device, memory chip and readable storage medium
CN108897678B (en) Static code detection method, static code detection system and storage device
CN111966597B (en) Test data generation method and device
CN108874652B (en) Method and device for software self-test evaluation and electronic equipment
CN103336739B (en) Method for testing software and platform
CN113254350A (en) Flink operation testing method, device, equipment and storage medium
CN109508204B (en) Front-end code quality detection method and device
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
CN114519003A (en) Regression testing method and device based on mapping relation and electronic equipment
CN111966598A (en) C + + Test customization method and aerospace model software code unit static analysis method
CN114328161A (en) Java interface test method and device, storage medium and electronic equipment
CN112286803A (en) Test case detection method and device
CN113806205A (en) Software performance testing method and device, electronic equipment and readable storage medium
CN111400181A (en) Object testing method and device and server
KR100775102B1 (en) Quality test result estimate system of platform based application on embedded device and method thereof
CN112612471B (en) Code processing method, device, equipment and storage medium
CN112099838B (en) Method, device and storage medium for determining version difference

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