The IntiSa Approach: Test Input Data Generation for Non-primitive Data Types by Means of SMT Solver Based Bounded Model Checking

Stefan J. Galler, Thomas Quaritsch, Martin Weiglhofer, F. Wotawa
{"title":"The IntiSa Approach: Test Input Data Generation for Non-primitive Data Types by Means of SMT Solver Based Bounded Model Checking","authors":"Stefan J. Galler, Thomas Quaritsch, Martin Weiglhofer, F. Wotawa","doi":"10.1109/QSIC.2011.22","DOIUrl":null,"url":null,"abstract":"In this paper we present an approach for automatically deriving test input data from Design by Contract specifications. Preconditions of a method under test (MUT) require specific object states of the input parameters. In this paper we present IntiSa, a novel approach, which calculates test input values to be used with mock objects. The calculated values do not only satisfy the precondition of the method under test, but are guaranteed to be states that could be reached through method calls on the object as well. This property is not supported by previous work, such as random or pure SMT based approaches, and genetic algorithm. But it is important since it reduces false positive test cases. Based on the idea of bounded-model checking, IntiSa encodes possible state space changes of method calls for all parameters of the MUT. This model is then verified against an adopted precondition of the MUT. Besides a detailed discussion of the IntiSa approach we present results obtained by applying our technique to two case studies, one of them a real world application provided by our industry partner. First results show, that IntiSa is twice as fast as random ingenerating primitive and non-primitive test input that satisfies the precondition of the method under test.","PeriodicalId":309774,"journal":{"name":"2011 11th International Conference on Quality Software","volume":"6 10 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2011-07-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2011 11th International Conference on Quality Software","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/QSIC.2011.22","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

In this paper we present an approach for automatically deriving test input data from Design by Contract specifications. Preconditions of a method under test (MUT) require specific object states of the input parameters. In this paper we present IntiSa, a novel approach, which calculates test input values to be used with mock objects. The calculated values do not only satisfy the precondition of the method under test, but are guaranteed to be states that could be reached through method calls on the object as well. This property is not supported by previous work, such as random or pure SMT based approaches, and genetic algorithm. But it is important since it reduces false positive test cases. Based on the idea of bounded-model checking, IntiSa encodes possible state space changes of method calls for all parameters of the MUT. This model is then verified against an adopted precondition of the MUT. Besides a detailed discussion of the IntiSa approach we present results obtained by applying our technique to two case studies, one of them a real world application provided by our industry partner. First results show, that IntiSa is twice as fast as random ingenerating primitive and non-primitive test input that satisfies the precondition of the method under test.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
IntiSa方法:基于有界模型检查的SMT求解器对非原始数据类型的测试输入数据生成
在本文中,我们提出了一种从契约式设计规范中自动获取测试输入数据的方法。被测方法(MUT)的前提条件要求输入参数的特定对象状态。在本文中,我们提出了一种新的方法IntiSa,它可以计算用于模拟对象的测试输入值。计算值不仅满足被测方法的前提条件,而且保证是通过对对象的方法调用可以达到的状态。以前的工作不支持这个特性,例如随机或纯基于SMT的方法,以及遗传算法。但这很重要,因为它减少了误报测试案例。基于有界模型检查的思想,IntiSa对MUT的所有参数的方法调用可能发生的状态空间变化进行编码。然后根据所采用的MUT的先决条件验证该模型。除了详细讨论IntiSa方法之外,我们还介绍了通过将我们的技术应用于两个案例研究而获得的结果,其中一个是我们的行业合作伙伴提供的实际应用程序。实验结果表明,IntiSa的生成速度是随机生成原始和非原始测试输入的两倍,满足测试方法的前提条件。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Towards Balancing Determinism, Memory Consumption and Throughput for RTSJ-Based Real-Time Applications BAM: A Requirements Validation and Verification Framework for Business Process Models The IntiSa Approach: Test Input Data Generation for Non-primitive Data Types by Means of SMT Solver Based Bounded Model Checking Implementing Service Collaboration Based on Decentralized Mediation An Automatic Performance Modeling Approach to Capacity Planning for Multi-service Web Applications
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1