突变整合测试

M. Grechanik, Gurudev Devanla
{"title":"突变整合测试","authors":"M. Grechanik, Gurudev Devanla","doi":"10.1109/QRS.2016.47","DOIUrl":null,"url":null,"abstract":"In integration testing, integrated software modules or components are evaluated as a whole to determine if they behave correctly. Mutation testing is recognized as one of the strongest approaches for evaluating the effectiveness of test suites, and it is important to generate effective mutants efficiently for integration tests. However, it is difficult to generate integration mutants that create an error state in one component with certain assurances that this error state will affect computations in some other components. Unfortunately, little research exists that addresses this big and important problem to improve the quality of integration test suites. In this paper, we propose a theory and a solution for generating mutants that specifically target integration tests. We formulate a fault model for integration bugs that uses static dataflow analysis to obtain information about how integrated components interact in an application. Integration mutants are generated by applying mutation operators to instructions that lie in dataflow paths among integrated components. We implemented our approach and evaluated it on five open-source applications. In comparison to muJava, our approach reduces the number of generated mutants by up to approximately 19 times with a strong power to determine inadequacies in integration test suites.","PeriodicalId":412973,"journal":{"name":"2016 IEEE International Conference on Software Quality, Reliability and Security (QRS)","volume":"3 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"12","resultStr":"{\"title\":\"Mutation Integration Testing\",\"authors\":\"M. Grechanik, Gurudev Devanla\",\"doi\":\"10.1109/QRS.2016.47\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"In integration testing, integrated software modules or components are evaluated as a whole to determine if they behave correctly. Mutation testing is recognized as one of the strongest approaches for evaluating the effectiveness of test suites, and it is important to generate effective mutants efficiently for integration tests. However, it is difficult to generate integration mutants that create an error state in one component with certain assurances that this error state will affect computations in some other components. Unfortunately, little research exists that addresses this big and important problem to improve the quality of integration test suites. In this paper, we propose a theory and a solution for generating mutants that specifically target integration tests. We formulate a fault model for integration bugs that uses static dataflow analysis to obtain information about how integrated components interact in an application. Integration mutants are generated by applying mutation operators to instructions that lie in dataflow paths among integrated components. We implemented our approach and evaluated it on five open-source applications. In comparison to muJava, our approach reduces the number of generated mutants by up to approximately 19 times with a strong power to determine inadequacies in integration test suites.\",\"PeriodicalId\":412973,\"journal\":{\"name\":\"2016 IEEE International Conference on Software Quality, Reliability and Security (QRS)\",\"volume\":\"3 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2016-08-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"12\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2016 IEEE International Conference on Software Quality, Reliability and Security (QRS)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/QRS.2016.47\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2016 IEEE International Conference on Software Quality, Reliability and Security (QRS)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/QRS.2016.47","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 12

摘要

在集成测试中,集成的软件模块或组件作为一个整体进行评估,以确定它们的行为是否正确。突变测试被认为是评估测试套件有效性的最强有力的方法之一,并且为集成测试高效地生成有效的突变是很重要的。然而,很难生成集成突变,从而在一个组件中创建错误状态,并保证该错误状态将影响其他一些组件的计算。不幸的是,很少有研究解决这个大而重要的问题,以提高集成测试套件的质量。在本文中,我们提出了一个理论和解决方案,以产生专门针对集成测试的突变体。我们为集成错误制定了一个故障模型,该模型使用静态数据流分析来获取有关集成组件在应用程序中如何交互的信息。集成突变是通过对位于集成组件之间的数据流路径中的指令应用突变操作符来生成的。我们实现了我们的方法,并在五个开源应用程序上进行了评估。与muJava相比,我们的方法将生成的突变的数量减少了大约19倍,并且具有确定集成测试套件中的不足之处的强大功能。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Mutation Integration Testing
In integration testing, integrated software modules or components are evaluated as a whole to determine if they behave correctly. Mutation testing is recognized as one of the strongest approaches for evaluating the effectiveness of test suites, and it is important to generate effective mutants efficiently for integration tests. However, it is difficult to generate integration mutants that create an error state in one component with certain assurances that this error state will affect computations in some other components. Unfortunately, little research exists that addresses this big and important problem to improve the quality of integration test suites. In this paper, we propose a theory and a solution for generating mutants that specifically target integration tests. We formulate a fault model for integration bugs that uses static dataflow analysis to obtain information about how integrated components interact in an application. Integration mutants are generated by applying mutation operators to instructions that lie in dataflow paths among integrated components. We implemented our approach and evaluated it on five open-source applications. In comparison to muJava, our approach reduces the number of generated mutants by up to approximately 19 times with a strong power to determine inadequacies in integration test suites.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
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学术文献互助群
群 号:604180095
Book学术官方微信