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.