In this paper, the weighted Kolmogrov-Smirnov, Cramer von-Miss and the Anderson Darling test statistics are considered as goodness of fit tests for the generalized Rayleigh interval grouped data. An extensive simulati...In this paper, the weighted Kolmogrov-Smirnov, Cramer von-Miss and the Anderson Darling test statistics are considered as goodness of fit tests for the generalized Rayleigh interval grouped data. An extensive simulation process is conducted to evaluate their controlling of type 1 error and their power functions. Generally, the weighted Kolmogrov-Smirnov test statistics show a relatively better performance than both, the Cramer von-Miss and the Anderson Darling test statistics. For large sample values, the Anderson Darling test statistics cannot control type 1 error but for relatively small sample values it indicates a better performance than the Cramer von-Miss test statistics. Best selection of the test statistics and highlights for future studies are also explored.展开更多
Time-varying coefficient models are useful in longitudinal data analysis. Various efforts have been invested for the estimation of the coefficient functions, based on the least squares principle. Related work includes...Time-varying coefficient models are useful in longitudinal data analysis. Various efforts have been invested for the estimation of the coefficient functions, based on the least squares principle. Related work includes smoothing spline and kernel methods among others, but these methods suffer from the shortcoming of non-robustness. In this paper, we introduce a local M-estimation method for estimating the coefficient functions and develop a robustified generalized likelihood ratio (GLR) statistic to test if some of the coefficient functions are constants or of certain parametric forms. The robustified GLR test is robust against outliers and the error distribution. This provides a useful robust inference tool for the models with longitudinal data. The bandwidth selection issue is also addressed to facilitate the implementation in practice. Simulations show that the proposed testing method is more powerful in some situations than its counterpart based on the least squares principle. A real example is also given for illustration.展开更多
To improve the efficiency and coverage of stateful network protocol fuzzing, this paper proposes a new method, using a rule-based state machine and a stateful rule tree to guide the generation of fuzz testing data. Th...To improve the efficiency and coverage of stateful network protocol fuzzing, this paper proposes a new method, using a rule-based state machine and a stateful rule tree to guide the generation of fuzz testing data. The method first builds a rule-based state machine model as a formal description of the states of a network protocol. This removes safety paths, to cut down the scale of the state space. Then it uses a stateful rule tree to describe the relationship between states and messages, and then remove useless items from it. According to the message sequence obtained by the analysis of paths using the stateful rule tree and the protocol specification, an abstract data model of test case generation is defined. The fuzz testing data is produced by various generation algorithms through filling data in the fields of the data model. Using the rule-based state machine and the stateful rule tree, the quantity of test data can be reduced. Experimental results indicate that our method can discover the same vulnerabilities as traditional approaches, using less test data, while optimizing test data generation and improving test efficiency.展开更多
测试数据自动生成方法是软件测试领域研究的热点。基于遗传算法的启发式搜索算法是一种路径覆盖生成测试数据的方法。文中提出了一种基于自适应随机测试(Adaptive Random Testing,ART)算法更新种群的方法,将ART融入遗传算法,优化选择操...测试数据自动生成方法是软件测试领域研究的热点。基于遗传算法的启发式搜索算法是一种路径覆盖生成测试数据的方法。文中提出了一种基于自适应随机测试(Adaptive Random Testing,ART)算法更新种群的方法,将ART融入遗传算法,优化选择操作,动态更新种群,从而增加种群进化过程中的个体多样性,提高了收敛速度,有效地减少了陷入局部最优。实验结果显示,与传统遗传算法生成测试数据的方法相比,改进的算法明显提高了路径覆盖率,减少了种群平均进化代数。展开更多
Software testing is an important technique to assure the quality of software systems, especially high-confidence systems. To automate the process of software testing, many automatic test-data generation techniques hav...Software testing is an important technique to assure the quality of software systems, especially high-confidence systems. To automate the process of software testing, many automatic test-data generation techniques have been proposed. To generate effective test data, we propose a test-data generation technique guided by static defect detection in this paper. Using static defect detection analysis, our approach first identifies a set of suspicious statements which are likely to contain faults, then generates test data to cover these suspicious statements by converting the problem of test-data generation to the constraint satisfaction problem. We performed a case study to validate the effectiveness of our approach, and made a simple comparison with another test-data generation on-line tool, JUnit Factory. The results show that, compared with JUnit Factory, our approach generates fewer test data that are competitive on fault detection.展开更多
Software testing is one of the most crucial and analytical aspect to assure that developed software meets pre- scribed quality standards. Software development process in- vests at least 50% of the total cost in softwa...Software testing is one of the most crucial and analytical aspect to assure that developed software meets pre- scribed quality standards. Software development process in- vests at least 50% of the total cost in software testing process. Optimum and efficacious test data design of software is an important and challenging activity due to the nonlinear struc- ture of software. Moreover, test case type and scope deter- mines the quality of test data. To address this issue, software testing tools should employ intelligence based soft comput- ing techniques like particle swarm optimization (PSO) and genetic algorithm (GA) to generate smart and efficient test data automatically. This paper presents a hybrid PSO and GA based heuristic for automatic generation of test suites. In this paper, we described the design and implementation of the proposed strategy and evaluated our model by performing ex- periments with ten container classes from the Java standard library. We analyzed our algorithm statistically with test ad- equacy criterion as branch coverage. The performance ade- quacy criterion is taken as percentage coverage per unit time and percentage of faults detected by the generated test data. We have compared our work with the heuristic based upon GA, PSO, existing hybrid strategies based on GA and PSO and memetic algorithm. The results showed that the test case generation is efficient in our work.展开更多
The program slicing technique is employed to calculate the current values of the variables at some interest points in software test data generation. This paper introduces the concept of statement domination to represe...The program slicing technique is employed to calculate the current values of the variables at some interest points in software test data generation. This paper introduces the concept of statement domination to represent the multiple nests, and presents a dynamic program slice algorithm based on forward analysis to generate dynamic slices. In the approach, more attention is given to the statement itself or its domination node, so computing program slices is more easy and accurate, especially for those programs with multiple nests. In addition, a case study is discussed to illustrate our algorithm. Experimental results show that the slicing technique can be used in software test data generation to enhance the effectiveness.展开更多
文摘In this paper, the weighted Kolmogrov-Smirnov, Cramer von-Miss and the Anderson Darling test statistics are considered as goodness of fit tests for the generalized Rayleigh interval grouped data. An extensive simulation process is conducted to evaluate their controlling of type 1 error and their power functions. Generally, the weighted Kolmogrov-Smirnov test statistics show a relatively better performance than both, the Cramer von-Miss and the Anderson Darling test statistics. For large sample values, the Anderson Darling test statistics cannot control type 1 error but for relatively small sample values it indicates a better performance than the Cramer von-Miss test statistics. Best selection of the test statistics and highlights for future studies are also explored.
文摘Time-varying coefficient models are useful in longitudinal data analysis. Various efforts have been invested for the estimation of the coefficient functions, based on the least squares principle. Related work includes smoothing spline and kernel methods among others, but these methods suffer from the shortcoming of non-robustness. In this paper, we introduce a local M-estimation method for estimating the coefficient functions and develop a robustified generalized likelihood ratio (GLR) statistic to test if some of the coefficient functions are constants or of certain parametric forms. The robustified GLR test is robust against outliers and the error distribution. This provides a useful robust inference tool for the models with longitudinal data. The bandwidth selection issue is also addressed to facilitate the implementation in practice. Simulations show that the proposed testing method is more powerful in some situations than its counterpart based on the least squares principle. A real example is also given for illustration.
基金supported by the Key Project of National Defense Basic Research Program of China (No.B1120132031)supported by the Cultivation and Development Program for Technology Innovation Base of Beijing Municipal Science and Technology Commission (No.Z151100001615034)
文摘To improve the efficiency and coverage of stateful network protocol fuzzing, this paper proposes a new method, using a rule-based state machine and a stateful rule tree to guide the generation of fuzz testing data. The method first builds a rule-based state machine model as a formal description of the states of a network protocol. This removes safety paths, to cut down the scale of the state space. Then it uses a stateful rule tree to describe the relationship between states and messages, and then remove useless items from it. According to the message sequence obtained by the analysis of paths using the stateful rule tree and the protocol specification, an abstract data model of test case generation is defined. The fuzz testing data is produced by various generation algorithms through filling data in the fields of the data model. Using the rule-based state machine and the stateful rule tree, the quantity of test data can be reduced. Experimental results indicate that our method can discover the same vulnerabilities as traditional approaches, using less test data, while optimizing test data generation and improving test efficiency.
文摘测试数据自动生成方法是软件测试领域研究的热点。基于遗传算法的启发式搜索算法是一种路径覆盖生成测试数据的方法。文中提出了一种基于自适应随机测试(Adaptive Random Testing,ART)算法更新种群的方法,将ART融入遗传算法,优化选择操作,动态更新种群,从而增加种群进化过程中的个体多样性,提高了收敛速度,有效地减少了陷入局部最优。实验结果显示,与传统遗传算法生成测试数据的方法相比,改进的算法明显提高了路径覆盖率,减少了种群平均进化代数。
基金sponsored by the National High-Tech Research and Development 863 Program of China under Grant No.2007AA010301the National Natural Science Foundation of China under Grant Nos. 60803012 and 90718016China Postdoctoral Science Foundation funded project under Grant No. 20080440254
文摘Software testing is an important technique to assure the quality of software systems, especially high-confidence systems. To automate the process of software testing, many automatic test-data generation techniques have been proposed. To generate effective test data, we propose a test-data generation technique guided by static defect detection in this paper. Using static defect detection analysis, our approach first identifies a set of suspicious statements which are likely to contain faults, then generates test data to cover these suspicious statements by converting the problem of test-data generation to the constraint satisfaction problem. We performed a case study to validate the effectiveness of our approach, and made a simple comparison with another test-data generation on-line tool, JUnit Factory. The results show that, compared with JUnit Factory, our approach generates fewer test data that are competitive on fault detection.
文摘Software testing is one of the most crucial and analytical aspect to assure that developed software meets pre- scribed quality standards. Software development process in- vests at least 50% of the total cost in software testing process. Optimum and efficacious test data design of software is an important and challenging activity due to the nonlinear struc- ture of software. Moreover, test case type and scope deter- mines the quality of test data. To address this issue, software testing tools should employ intelligence based soft comput- ing techniques like particle swarm optimization (PSO) and genetic algorithm (GA) to generate smart and efficient test data automatically. This paper presents a hybrid PSO and GA based heuristic for automatic generation of test suites. In this paper, we described the design and implementation of the proposed strategy and evaluated our model by performing ex- periments with ten container classes from the Java standard library. We analyzed our algorithm statistically with test ad- equacy criterion as branch coverage. The performance ade- quacy criterion is taken as percentage coverage per unit time and percentage of faults detected by the generated test data. We have compared our work with the heuristic based upon GA, PSO, existing hybrid strategies based on GA and PSO and memetic algorithm. The results showed that the test case generation is efficient in our work.
基金the National Natural Science Foundation of China (No. 60473032)the Science and Technology Emphases Item of China Ministry of Education (No. 105018)the Beijing Natural Science Foundation (No. 4072021)
文摘The program slicing technique is employed to calculate the current values of the variables at some interest points in software test data generation. This paper introduces the concept of statement domination to represent the multiple nests, and presents a dynamic program slice algorithm based on forward analysis to generate dynamic slices. In the approach, more attention is given to the statement itself or its domination node, so computing program slices is more easy and accurate, especially for those programs with multiple nests. In addition, a case study is discussed to illustrate our algorithm. Experimental results show that the slicing technique can be used in software test data generation to enhance the effectiveness.