A Software Testing Quality Control Method and System Based on the Rayleigh Defect Model
Through the software testing quality control method based on the Rayleigh defect model, the shortcomings in the testing process are solved, and the strategy adjustment and resource optimization in the early stage of testing are realized to ensure product quality.
Patent Information
- Application Number
- CN202210873295.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-22
- Publication Date
- 2025-07-08
- Estimated Expiration
- 2042-07-22
AI Technical Summary
In the software life cycle, the testing process is often in the late stage, resulting in the compression of the test cycle, insufficient testing manpower, too late for R&D and repair defects, and the testing strategy problems are often exposed later in the test, affecting product quality.
Using the software test quality control method based on the Rayleigh defect model, by comparing the number of defects estimated by the thousand lines of code defect rate and the number of defects calculated by the Rayleigh defect model, we can judge whether the test strategy is reasonable and whether the time is sufficient in the early stage of the test, and adjust the test strategy as early as possible or add testers.
In the early stage of testing, you can know whether the testing strategy is reasonable and whether the time is enough, and intervention is carried out early to ensure the quality of the product release version.
Smart Images

Figure CN115237776B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of software test management, and in particular to a software test quality control method and system based on the Rayleigh defect model. Background Art
[0002] Currently, living in an era when Internet technology is very popular, users have higher and higher requirements and hope to produce high-quality products within the specified or even shorter time. This poses a severe test to the product quality. In the entire life cycle of a software, since the testing phase is in the later stage, problems such as compressed testing cycles, insufficient testing manpower, and too late defect repair time by R & D often occur; and during the testing process, if there are problems with the testing strategy, they often only become apparent in the later stage of testing. At this time, only overtime work by testers to increase the testing duration or applying to the project to postpone the release time can be used for remedies. Therefore, in the early stage of testing, it is necessary to determine whether the current testing strategy is reasonable and whether the testing manpower is sufficient, and intervene early by means such as adjusting the testing strategy and increasing the number of testers to ensure the quality of the product release version. Summary of the Invention
[0003] The technical problem to be solved by the present invention is that in the entire life cycle of a software, since the testing phase is in the later stage, problems such as compressed testing cycles, insufficient testing manpower, and too late defect repair time by R & D often occur; and during the testing process, if there are problems with the testing strategy, they often only become apparent in the later stage of testing. The present invention provides a software test quality control method based on the Rayleigh defect model, and the present invention also provides a software test quality control system based on the Rayleigh defect model, which can, by comparing the number of defects estimated according to the defect rate per thousand lines of code and the number of defects calculated according to the Rayleigh defect model, know whether the current testing strategy is reasonable and whether the testing time is sufficient in the early stage of testing, and intervene early by means such as adjusting the testing strategy and increasing the number of testers to ensure the quality of the product release version, so as to solve the defects caused by the prior art.
[0004] To solve the above technical problems, the present invention provides the following technical solutions:
[0005] In a first aspect, a software test quality control method based on the Rayleigh defect model, which includes the following steps:
[0006] Step 1: Obtain the defect rate per thousand lines of code in the previous iteration and the test plan and testing strategy formulated in the current iteration, and extract the total testing duration in the test plan and denote it as t 总 ;
[0007] The test plan and the testing strategy are formulated according to software requirements and the release time nodes of the project;
[0008] The test plan stipulates and restricts the organization, resources, principles, etc. of the entire test process, and formulates the tasks and time schedules for each stage of the entire test process;
[0009] The test strategy divides product modules by adopting effective test means and methods, clarifies the test points and the test methods to be used, and guides the implementation of the test work;
[0010] Step 2: When the software enters the test stage, obtain the total number of code lines of the requirements for this iteration, and calculate the possible number of defects generated according to the formula K2 = (total number of code lines / 1000) * defect rate per thousand lines of code, and record it as K2;
[0011] Step 3: During the software testing process, record the actual number of defects generated each day as d(t) and the cumulative number of defects generated as D(t), where t is the number of days;
[0012] Step 4: Obtain the day when d(t) reaches the peak and record it as t n , and input D(t n ) into the Rayleigh defect model to calculate the total number of defects generated at time t n and record it as K1. The Rayleigh defect model is K1 = D(t n ) / 40%, and D(t n ) is the cumulative number of defects generated at time t n ;
[0013] Step 5: Judge the magnitude relationship between K1 and K2;
[0014] If K1 is less than K2, re - customize the test strategy to shift the time when the number of defects reaches the peak on the current day and update t n , and then recalculate K1 until K1 is greater than or equal to K2;
[0015] If K1 is greater than or equal to K2, substitute K1 and t n into the Rayleigh defect model to obtain the cumulative distribution function and the probability density function;
[0016] The cumulative distribution function is
[0017] The probability density function is where m is the shape parameter, m = 2, c is the range parameter, t is the number of days, and K is the total number of defects;
[0018] Step 6: Substitute t 总 into the cumulative distribution function and the probability density function to obtain the expected number of defects to be found on the day when the test ends, f(t 总) and the cumulative number of defects found F(t 总 );
[0019] Step 7: If the f(t 总 ) is greater than the acceptable number of defects s used in the software project, then adjust the test strategy and increase the number of testers until the D(t 总 ) is greater than or equal to the F(t 总 );
[0020] If the f(t 总 ) is equal to the s, then the test is normal and there is no need to adjust the test strategy;
[0021] If the f(t 总 ) is less than the s, then the test efficiency is improved and the number of testers can be appropriately reduced.
[0022] In the above software test quality control method based on the Rayleigh defect model, in step 1, the calculation method of the defect rate per thousand lines of code is as follows:
[0023] Obtain the historical records submitted during the start time and end time of the previous iteration, and after counting the number of added and deleted lines, obtain the total number of lines of code at the time of software release;
[0024] Obtain the cumulative number of defects found during the previous iteration test;
[0025] According to the formula: number of defects / (total number of lines of code / 1000), calculate the defect rate per thousand lines of code.
[0026] In the above software test quality control method based on the Rayleigh defect model, in step 1, extract the total test duration t 总 .
[0027] In the above software test quality control method based on the Rayleigh defect model, in step 2, it is necessary to first confirm that there is no major adjustment in the R & D personnel compared with the previous iteration.
[0028] In the above software test quality control method based on the Rayleigh defect model, in step 4, the method for judging that d(t) is the peak value is:
[0029] When the first inflection point appears in the number of defects actually generated every day, it is regarded that the number of defects on that day reaches the peak value.
[0030] In the second aspect, a software test quality control system based on the Rayleigh defect model, which includes an information extraction module, a defect prediction module, a defect comparison module, a data processing module, and a quality control module;
[0031] The information extraction module is used to obtain the defect rate per thousand lines of code in the previous iteration, as well as the test plan and test strategy formulated in this iteration. It is also used to extract the total test duration in the test plan and denote it as t. 总 ;
[0032] The defect prediction module is used to obtain the total number of code lines of the requirements in this iteration when the software enters the test stage, and calculate the possible number of defects denoted as K2 according to the formula K2 = (total number of code lines / 1000) * defect rate per thousand lines of code. It is also used to record the actual number of defects generated per day denoted as d(t) and the cumulative number of defects generated denoted as D(t) during the software testing process, where t is the number of days. It is also used to obtain the day when d(t) reaches the peak and denote it as t n , and input D(t n ) into the Rayleigh defect model to calculate the total number of defects generated at t n days, denoted as K1. The Rayleigh defect model is K1 = D(t n ) / 40%, and D(t n ) is the cumulative number of defects generated at t n days;
[0033] The defect comparison module is used to judge the size of K1 and K2;
[0034] If K1 is less than K2, it is fed back to the defect prediction module, and the defect prediction module re - formulates the test strategy to shift the time when the number of defects reaches the peak on the current day and updates t n and then recalculates K1 until K1 is greater than or equal to K2;
[0035] If K1 is greater than or equal to K2, substitute K1 and t n into the Rayleigh defect model to obtain the cumulative distribution function and the probability density function;
[0036] The cumulative distribution function is
[0037] The probability density function is where m is the shape parameter, m = 2, c is the range parameter, t is the number of days, and K is the total number of defects;
[0038] The data processing module is used to substitute t 总 into the cumulative distribution function and the probability density function to obtain the expected number of defects found on the day when the test ends, denoted as f(t 总 ) and the cumulative number of defects found, denoted as F(t 总 );
[0039] The quality control module is used to according to f(t总 ) Compare it with the acceptable number of defects s used in the software project and generate a processing opinion;
[0040] If the f(t 总 ) is greater than the s, then generate an opinion to adjust the test strategy and increase the number of testers until the D(t 总 ) is greater than or equal to the F(t 总 );
[0041] If the f(t 总 ) is equal to the s, then generate an opinion that the test is normal and there is no need to adjust the test strategy;
[0042] If the f(t 总 ) is less than the s, then generate an opinion that the test efficiency can be improved and the number of testers can be appropriately reduced.
[0043] In a third aspect, a chip, including: a processor for calling and running a computer program from a memory, so that a device installed with the chip executes: the method according to any one of the first aspect.
[0044] According to the technical solution provided by the software test quality control method and system based on the Rayleigh defect model of the present invention, the following technical effects are achieved:
[0045] By comparing the number of defects estimated according to the defect rate per thousand lines of code and the number of defects calculated according to the Rayleigh defect model, it can be known in the early stage of testing whether the current test strategy is reasonable and whether the test time is sufficient, and early intervention can be carried out by means of adjusting the test strategy and increasing the number of testers to ensure the quality of the product release version. Description of the Drawings
[0046] Figure 1 It is a flowchart of a software test quality control method based on the Rayleigh defect model of the present invention;
[0047] Figure 2 It is a structural diagram of a software test quality control system based on the Rayleigh defect model of the present invention.
[0048] Among them, the reference numerals are as follows:
[0049] Information extraction module 100, defect estimation module 200, defect comparison module 300, data processing module 400, quality control module 500. Detailed Embodiments
[0050] In order to make the technical means, creative features, achieved objectives and effects of the invention easy to understand, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with specific illustrations. Obviously, the described embodiments are part of the embodiments of the present invention, rather than all of the embodiments.
[0051] All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the scope of protection of the present invention.
[0052] It should be noted that the structures, ratios, sizes, etc. shown in the drawings of this specification are only used to cooperate with the content disclosed in the specification for those who are familiar with this technology to understand and read, and are not used to limit the limiting conditions under which the present invention can be implemented. Therefore, they do not have substantial technical significance. Any modification of the structure, change of the proportional relationship or adjustment of the size, without affecting the effects that the present invention can produce and the objectives that can be achieved, should still fall within the scope that can be covered by the technical content disclosed in the present invention.
[0053] At the same time, the terms such as "upper", "lower", "left", "right", "middle" and "one" cited in this specification are only for the convenience of clear narration, rather than used to limit the scope within which the present invention can be implemented. The change or adjustment of their relative relationship, without substantial change in the technical content, should also be regarded as the scope within which the present invention can be implemented.
[0054] The first embodiment of the present invention is to provide a software test quality control method based on the Rayleigh defect model, and the second embodiment is to provide a software test quality control system based on the Rayleigh defect model. The purpose is to know whether the current test strategy is reasonable and whether the test time is sufficient in the early stage of testing by comparing the number of defects predicted according to the defect rate per thousand lines of code and the number of defects calculated according to the Rayleigh defect model, and to intervene early by means such as adjusting the test strategy and increasing the number of testers to ensure the quality of the product release version.
[0055] The Rayleigh defect model is the Rayleigh defect model, which is a special form of the Weibull distribution and a commonly used model. The most important feature of the Weibull distribution is that the tail of the probability density function approaches zero, but never reaches zero.
[0056] As Figure 1 shown, in the first aspect, the first embodiment, a software test quality control method based on the Rayleigh defect model, which includes the following steps:
[0057] Step 1: Obtain the defect rate per thousand lines of code in the previous iteration and the test plan and test strategy formulated in this iteration, and extract the total test duration in the test plan and denote it as t 总 ;
[0058] The test plan and test strategy are formulated according to the software requirements and the project release time nodes;
[0059] The test plan stipulates and restricts the organization, resources, principles, etc. of the whole testing process, and formulates the tasks and time schedules for each stage of the whole testing process;
[0060] The test strategy divides the product modules by adopting effective testing means and methods, clarifies the test points and the testing methods adopted, and guides the implementation of the testing work;
[0061] Step 2: When the software enters the testing stage, obtain the total number of code lines of the requirements for this iteration, and calculate the possible number of defects generated according to the formula K2 = (total number of code lines / 1000) * defect rate per thousand lines of code, and record it as K2;
[0062] Step 3: During the software testing process, record the actual number of defects generated each day as d(t) and the cumulative number of defects generated as D(t), where t is the number of days;
[0063] Step 4: Obtain the day when d(t) reaches the peak and record it as t n , and input D(t n ) into the Rayleigh defect model to calculate the total number of defects generated at time t n and record it as K1. The Rayleigh defect model is K1 = D(t n ) / 40%, and D(t n ) is the cumulative number of defects generated at time t n ;
[0064] Step 5: Judge the magnitude relationship between K1 and K2;
[0065] If K1 is less than K2, re - formulate the test strategy to shift the time when the number of defects reaches the peak on the current day and update t n and then recalculate K1 until K1 is greater than or equal to K2;
[0066] If K1 is greater than or equal to K2, substitute K1 and t n into the Rayleigh defect model to obtain the cumulative distribution function and the probability density function; the cumulative distribution function is
[0067] The probability density function is where m is the shape parameter, m = 2, c is the range parameter, t is the number of days, and K is the total number of defects;
[0068] Step 6: Substitute t 总 into the cumulative distribution function and the probability density function to obtain the expected number of defects to be found on the day when the test ends, f(t 总) and the cumulative number of defects found F(t 总 );
[0069] Step 7: If f(t 总 ) is greater than the acceptable number of defects s used in the software project, then adjust the test strategy and increase the number of testers until D(t 总 ) is greater than or equal to F(t 总 );
[0070] If f(t 总 ) is equal to s, then the test is normal and there is no need to adjust the test strategy;
[0071] If f(t 总 ) is less than s, then the test efficiency is improved and the number of testers can be appropriately reduced.
[0072] Software project: It refers to developing or deploying a dedicated system for an enterprise, or integrating some systems in a specific industry field. Before entering the project, it is necessary to conduct specific requirements analysis and discussion with users to clarify what the product or project expectation in the user's mind looks like, and then establish a project, conduct bidding, sign a contract, and implement and deliver.
[0073] The above software test quality control method based on the Rayleigh defect model, wherein the calculation method of the defect rate per thousand lines of code in Step 1 is as follows:
[0074] Obtain the historical records submitted during the start time and end time of the previous iteration, and after counting the number of added and deleted lines, obtain the total number of lines of code at the time of software release;
[0075] Obtain the cumulative number of defects found during the previous iteration test;
[0076] Calculate the defect rate per thousand lines of code according to the formula: number of defects / (total number of lines of code / 1000).
[0077] The above software test quality control method based on the Rayleigh defect model, wherein the total test duration t in the test plan is extracted according to the software release time node in Step 1 总 .
[0078] The above software test quality control method based on the Rayleigh defect model, wherein in Step 2, it is necessary to first confirm that there is no major adjustment in the R & D personnel compared with the previous iteration.
[0079] The above software test quality control method based on the Rayleigh defect model, wherein the method for judging the peak value of d(t) in Step 4 is:
[0080] When the first inflection point appears in the number of defects actually generated every day, it is considered that the number of defects on that day reaches the peak value.
[0081] As Figure 2 shown, in the second aspect, the second embodiment, a software test quality control system based on the Rayleigh defect model, which includes an information extraction module 100, a defect prediction module 200, a defect comparison module 300, a data processing module 400, and a quality control module 500;
[0082] The information extraction module 100 is used to obtain the defect rate per thousand lines of code in the previous iteration and the test plan and test strategy formulated in the current iteration, and is also used to extract the total test duration in the test plan, denoted as t 总 ;
[0083] The defect prediction module 200 is used to obtain the total number of code lines of the current iteration requirements when the software enters the test stage, and calculate the possible number of defects generated according to the formula K2 = (total number of code lines / 1000) * defect rate per thousand lines of code, denoted as K2; it is also used to record the actual number of defects generated every day, denoted as d(t), and the cumulative number of defects generated, denoted as D(t) during the software test process, where t is the number of days; it is also used to obtain the day when d(t) reaches the peak, denoted as t n , and input D(t n ) into the Rayleigh defect model to calculate the total number of defects generated at t n days, denoted as K1. The Rayleigh defect model is K1 = D(t n ) / 40%, and D(t n ) is the cumulative number of defects generated at t n days;
[0084] The defect comparison module 300 is used to judge the size of K1 and K2;
[0085] If K1 is less than K2, it is fed back to the defect prediction module 200, and the defect prediction module 200 re-customizes the test strategy to move the time when the number of defects reaches the peak on the same day backward and updates t n and then recalculates K1 until K1 is greater than or equal to K2;
[0086] If K1 is greater than or equal to K2, substitute K1 and t n into the Rayleigh defect model to obtain the cumulative distribution function and the probability density function;
[0087] The cumulative distribution function is
[0088] The probability density function is where m is the shape parameter, m = 2, c is the range parameter, t is the number of days, and K is all the number of defects;
[0089] The data processing module 400 is used to process t 总Substitute into the cumulative distribution function and the probability density function to obtain the number of defects f(t 总 ) expected to be found on the day when the test ends and the cumulative number of defects found F(t 总 );
[0090] The quality control module 500 is used to compare f(t 总 ) with the acceptable number of defects s used in the software project and generate a processing opinion;
[0091] If f(t 总 ) is greater than s, then an opinion to adjust the test strategy and increase the number of testers is generated until D(t 总 ) is greater than or equal to F(t 总 );
[0092] If f(t 总 ) is equal to s, then an opinion that the test is normal and the test strategy does not need to be adjusted is generated;
[0093] If f(t 总 ) is less than s, then an opinion to improve the test efficiency and appropriately reduce the number of testers is generated.
[0094] Thirdly, a chip, which includes: a processor for calling and running a computer program from a memory, so that a device installed with the chip executes: any method in the first aspect.
[0095] For example, the memory may include random access memory, flash memory, read-only memory, programmable read-only memory, non-volatile memory, or registers, etc.;
[0096] The processor may be a central processing unit (CPU), etc., or a graphic processing unit (GPU). The memory may store executable instructions;
[0097] The processor may execute the execution instructions stored in the memory, thereby implementing the various processes described herein.
[0098] It can be understood that the memory in this embodiment may be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory;
[0099] Among them, the non-volatile memory may be ROM (Read-Only Memory, read-only memory), PROM (Programmable ROM, programmable read-only memory), EPROM (Erasable PROM, erasable programmable read-only memory), EEPROM (Electrically EPROM, electrically erasable programmable read-only memory), or flash memory.
[0100] The volatile memory may be a RAM (Random Access Memory), which is used as an external cache;
[0101] By way of example but not limitation, many forms of RAM are available, such as SRAM (Static RAM), DRAM (Dynamic RAM), SDRAM (Synchronous DRAM), DDR SDRAM (Double Data Rate SDRAM), ESDRAM (Enhanced SDRAM), SLDRAM (Synchlink DRAM), and DRRAM (Direct Rambus RAM). The memories described herein are intended to include but not be limited to these and any other suitable types of memories.
[0102] In some embodiments, the memory stores elements such as an upgrade package, an executable unit, or a data structure, or subsets or supersets thereof: an operating system and application programs;
[0103] Among them, the operating system includes various system programs, such as a framework layer, a core library layer, a driver layer, etc., and is used to implement various basic services and handle hardware-based tasks;
[0104] The application programs include various application programs and are used to implement various application services. The program for implementing the method of the embodiment of the present invention may be included in the application programs.
[0105] Those skilled in the art will understand that the units and algorithm steps of the examples described in connection with the embodiments disclosed herein can be implemented in electronic hardware, or in a combination of software and electronic hardware;
[0106] Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution;
[0107] Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of this application.
[0108] In the embodiments of the present application, the disclosed systems, apparatuses, and methods can be implemented in other ways;
[0109] For example, the division of units or modules is only a logical function division, and there can be other division methods in actual implementation;
[0110] For example, multiple units, modules, or components can be combined or integrated into another system;
[0111] In addition, each functional unit or module in the embodiments of the present application can be integrated in a processing unit or module, or can exist separately physically, etc.
[0112] It should be understood that in various embodiments of the present application, the magnitude of the serial numbers of each process does not mean the sequence of execution, and the execution sequence of each process should be determined by its function and internal logic, and should not constitute any limitation to the implementation process of the embodiments of the present application.
[0113] If a function is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a machine-readable storage medium;
[0114] Therefore, the technical solution of the present application can be embodied in the form of a software product, which can be stored in a machine-readable storage medium, and it can include several instructions to enable an electronic device to execute all or part of the process of the technical solution described in the embodiments of the present application;
[0115] The above storage medium can include various media such as ROM, RAM, removable disk, hard disk, magnetic disk, or optical disk that can store program codes.
[0116] In summary, a software test quality control method and system based on the Rayleigh defect model of the present invention can know whether the current test strategy is reasonable and whether the test time is sufficient in the early stage of testing by comparing the number of defects estimated according to the defect rate per thousand lines of code and the number of defects calculated according to the Rayleigh defect model, and can intervene early by means of adjusting the test strategy and increasing the number of testers, etc., to ensure the quality of the product release version.
[0117] The specific embodiments of the invention have been described above. It should be understood that the invention is not limited to the above specific implementation manners, and the devices and structures not described in detail therein should be understood to be implemented in a common manner in the art; those skilled in the art can make various deformations or modifications within the scope of the claims and make several simple deductions, deformations, or substitutions, which do not affect the essence of the invention.
Claims
1. A software test quality control method based on the Rayleigh defect model, characterized in that, It includes the following steps: Step 1: Obtain the defect rate per thousand lines of code in the previous iteration, as well as the test plan and test strategy formulated for this iteration, and extract the total test duration in the test plan and denote it as t 总 ; Step 2: When the software enters the testing phase, obtain the total number of code lines of the requirements for this iteration, and calculate the number of defects generated according to the formula K2 = (total number of code lines / 1000) * defects per thousand lines of code, and record the number of defects as K2; Step 3: During the software testing process, record the number of defects actually generated each day as d(t) and the cumulative number of defects generated as D(t), where t is the number of days; Step 4: Record the day when d(t) is at its peak as t n , and input D(t n ) into the Rayleigh defect model to calculate the total number of defects generated at time t n . Denote the total number of defects generated at time t as K1. The Rayleigh defect model is K1 = D(t n ) / 40%, where D(t n ) is the cumulative number of defects generated in t n days; Step 5: Judge the magnitude relationship between the said K1 and the said K2; If the K1 is less than the K2, re-customize the test strategy to shift the time when the number of defects reaches its peak on the same day and update the t n Then recalculate K1 until the K1 is greater than or equal to the K2; If the K1 is greater than or equal to the K2, substitute the K1 and the t n into the Rayleigh defect model to obtain the cumulative distribution function and the probability density function; The cumulative distribution function is ; The said probability density function is , where m is the shape parameter, m = 2, c is the range parameter, , t is the number of days, and K is the total number of defects; Step 6: Substitute the t 总 into the cumulative distribution function and the probability density function to obtain the number of defects expected to be found on the day when the test ends, f(t 总 ), and the cumulative number of defects found, F(t 总 ); Step 7: If the number of defects f(t 总 ) is greater than the acceptable number of defects s used in the software project, the test strategy is adjusted and testers are added until D(t 总 ) is greater than or equal to F(t 总 ); If the f(t 总 ) is equal to the s, the test is normal and there is no need to adjust the test strategy; If the f(t 总 ) is less than the s, the test efficiency is improved and the number of testers is reduced.
2. The software test quality control method based on the Rayleigh defect model according to claim 1, characterized in that, The calculation method of the defects per thousand lines of code described in Step 1 is as follows: Obtain the historical records submitted during the start time and end time of the previous iteration, and after counting the added and deleted lines, obtain the total number of code lines at the time of software release; Obtain the cumulative number of defects found during the testing process of the previous iteration; Calculate the defects per thousand lines of code according to the formula: number of defects / (total number of code lines / 1000).
3. The software test quality control method based on the Rayleigh defect model according to claim 2, wherein In step 1, extract the total test duration in the test plan according to the software release time node and denote it as t 总 .
4. The software test quality control method based on the Rayleigh defect model according to claim 3, characterized in that The method for judging that d(t) is the peak value in Step 4 is: When the number of defects actually generated each day appears at the first inflection point, it is regarded that the number of defects on that day reaches the peak value.
5. A software test quality control system based on the Rayleigh defect model, characterized in that, It includes an information extraction module, a defect prediction module, a defect comparison module, a data processing module, and a quality control module; The information extraction module is used to obtain the defect rate of every thousand lines of code in the previous iteration, as well as the test plan and test strategy formulated in the current iteration. It is also used to extract the total test duration t in the test plan 总 ; The said defect prediction module is used to, when the software enters the testing phase, obtain the total number of code lines of the requirements for this iteration, and calculate the number of defects generated according to the formula K2 = (total number of code lines / 1000) * defects per thousand lines of code, and record the number of defects as K2; it is also used to record the number of defects actually generated each day as d(t) and the cumulative number of defects generated as D(t) during the software testing process, where t is the number of days; It is also used to obtain the day when d(t) is at its peak, denoted as t n , and input D(t n ) into the Rayleigh defect model to calculate the total number of defects generated at time t n , denoted as K1. The Rayleigh defect model is K1 = D(t n ) / 40%, where D(t n ) is the cumulative number of defects generated in t n days; The said defect comparison module is used to judge the magnitude relationship between the said K1 and the said K2; If the K1 is less than the K2, it is fed back to the defect prediction module, and the defect prediction module re-customizes the test strategy to postpone the time when the number of defects reaches the peak on the same day and updates the t n and then recalculates K1 until the K1 is greater than or equal to the K2; If the K1 is greater than or equal to the K2, substitute the K1 and the t n into the Rayleigh defect model to obtain the cumulative distribution function and the probability density function; The cumulative distribution function is ; The said probability density function is , where m is the shape parameter, m = 2, c is the range parameter, , t is the number of days, and K is the total number of defects; The data processing module is used to substitute the t 总 into the cumulative distribution function and the probability density function to obtain the number of defects f(t 总 ) expected to be found on the day when the test ends and the cumulative number of defects found F(t 总 ); The quality control module is used to compare the f(t 总 ) with the acceptable number of defects used in the software project, denoted as s, and generate a handling opinion; If the f(t 总 ) is greater than the s, then an adjusted test strategy is generated, incorporating the opinions of testers, until D(t 总 ) is greater than or equal to the F(t 总 ); If the f(t 总 ) is equal to the s, then an opinion that the test is normal and there is no need to adjust the test strategy is generated; If the f(t 总 ) is less than the s, then the test efficiency is improved and the opinions of testers are reduced.
6. A chip, characterized in that, It includes: A processor, which is used to call and run a computer program from a memory, so that the device installed with the said chip executes: the method according to any one of claims 1 - 4.
Citation Information
Patent Citations
Method and system of judging phased completion of software tests
CN108845943A
Software quality evaluation method and device and server
CN112783762A