Mutation score evaluation in terms of object-oriented metrics

M. H. Moghadam, S. M. Babamir
{"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}
引用次数: 6

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.
基于面向对象度量的突变分数评估
突变测试是创建更有效的测试用例的一种方法。突变测试主要用作基于程序的技术。它使用突变操作来改变程序并生成程序突变体。突变测试的目的是生成一个行为与原程序不同的测试集。更正式地说,突变测试的目标是通过使突变体在相同输入数据上具有与原始程序不同的行为来杀死生成的突变体。在这种测试方法中,突变分数是死亡突变体占非等效突变体总数的比例。本文的重点是利用程序的结构复杂性来计算突变分数。该方法选择一些反映特征复杂性的面向对象度量,并在程序中对其应用变异算子。它根据不同变异算子的变异分数和程序的结构复杂度计算程序的总变异分数。在该方法中,将选择的面向对象指标的归一化值作为程序不同突变分数的权重。最后,根据程序的加权突变分数估计程序的总突变分数。如果程序是并发程序,在计算总突变分数时还考虑并发突变算子的突变分数。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信