{"title":"基于面向对象度量的突变分数评估","authors":"M. H. Moghadam, S. M. Babamir","doi":"10.1109/ICCKE.2014.6993419","DOIUrl":null,"url":null,"abstract":"Mutation testing is a means of creating more effective test cases. Mutation testing is primarily used as a program-based technique. It uses mutation operations to mutate the program and generate program mutants. The mutation testing aims at generating a test set that its behavior is different from the original program. More formally, the goal in mutation testing is killing the generated mutants by causing the mutant to have different behavior from the original program on the same input data. In this testing method mutation score is the proportion of the dead mutants to the total number of non-equivalent mutants. This paper focuses on using structural complexity of the program in calculating the mutation score. The proposed approach selects some object-oriented metrics which reflect the complexity of features that mutation operators are applied to them in the program. It calculates the total mutation score of the program in terms of mutation scores of different mutation operators and the structural complexity of the program. In the proposed approach, the normalized values of the selected object-oriented metrics are used as weights of different mutation scores of the program. Finally, the total mutation score of the program is estimated in terms of weighted mutation scores of the program. If the program is a concurrent one, the mutation score of the concurrency mutation operators is also considered in calculating the total mutation score.","PeriodicalId":152540,"journal":{"name":"2014 4th International Conference on Computer and Knowledge Engineering (ICCKE)","volume":"2 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2014-12-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"6","resultStr":"{\"title\":\"Mutation score evaluation in terms of object-oriented metrics\",\"authors\":\"M. H. Moghadam, S. M. Babamir\",\"doi\":\"10.1109/ICCKE.2014.6993419\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Mutation testing is a means of creating more effective test cases. Mutation testing is primarily used as a program-based technique. It uses mutation operations to mutate the program and generate program mutants. The mutation testing aims at generating a test set that its behavior is different from the original program. More formally, the goal in mutation testing is killing the generated mutants by causing the mutant to have different behavior from the original program on the same input data. In this testing method mutation score is the proportion of the dead mutants to the total number of non-equivalent mutants. This paper focuses on using structural complexity of the program in calculating the mutation score. The proposed approach selects some object-oriented metrics which reflect the complexity of features that mutation operators are applied to them in the program. It calculates the total mutation score of the program in terms of mutation scores of different mutation operators and the structural complexity of the program. In the proposed approach, the normalized values of the selected object-oriented metrics are used as weights of different mutation scores of the program. Finally, the total mutation score of the program is estimated in terms of weighted mutation scores of the program. If the program is a concurrent one, the mutation score of the concurrency mutation operators is also considered in calculating the total mutation score.\",\"PeriodicalId\":152540,\"journal\":{\"name\":\"2014 4th International Conference on Computer and Knowledge Engineering (ICCKE)\",\"volume\":\"2 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2014-12-22\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"6\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2014 4th International Conference on Computer and Knowledge Engineering (ICCKE)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ICCKE.2014.6993419\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2014 4th International Conference on Computer and Knowledge Engineering (ICCKE)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICCKE.2014.6993419","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Mutation score evaluation in terms of object-oriented metrics
Mutation testing is a means of creating more effective test cases. Mutation testing is primarily used as a program-based technique. It uses mutation operations to mutate the program and generate program mutants. The mutation testing aims at generating a test set that its behavior is different from the original program. More formally, the goal in mutation testing is killing the generated mutants by causing the mutant to have different behavior from the original program on the same input data. In this testing method mutation score is the proportion of the dead mutants to the total number of non-equivalent mutants. This paper focuses on using structural complexity of the program in calculating the mutation score. The proposed approach selects some object-oriented metrics which reflect the complexity of features that mutation operators are applied to them in the program. It calculates the total mutation score of the program in terms of mutation scores of different mutation operators and the structural complexity of the program. In the proposed approach, the normalized values of the selected object-oriented metrics are used as weights of different mutation scores of the program. Finally, the total mutation score of the program is estimated in terms of weighted mutation scores of the program. If the program is a concurrent one, the mutation score of the concurrency mutation operators is also considered in calculating the total mutation score.