{"title":"白盒方法级单元测试中基于约束的测试用例生成","authors":"Chen-Huei Chang, Nai-Wei Lin","doi":"10.1109/ICS.2016.0123","DOIUrl":null,"url":null,"abstract":"This paper introduces a unified constraint-based test case generator for white-box method-level unit testing. The derivation of a suite of test cases can be defined as a constraint satisfaction problem. Each test case consists of a test input and an expected output. The program is automatically transformed into a constraint model called constraint logic graph. The constraint logic graph is a succinct graphical representation of the system of constraints that defines the relationships between the test inputs and actual outputs. The suite of test inputs can be solved from the conjunction of constraints on each complete path of the constraint logic graph by a constraint logic programming language. The specification of a method is defined by the Object Constraint Language. This non-executable specification is automatically transformed into an executable specification defined by a constraint logic programming language. This executable specification serves as the test oracle to automatically generate the corresponding expected output for a given test input.","PeriodicalId":281088,"journal":{"name":"2016 International Computer Symposium (ICS)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":"{\"title\":\"Constraint-Based Test Case Generation for White-Box Method-Level Unit Testing\",\"authors\":\"Chen-Huei Chang, Nai-Wei Lin\",\"doi\":\"10.1109/ICS.2016.0123\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"This paper introduces a unified constraint-based test case generator for white-box method-level unit testing. The derivation of a suite of test cases can be defined as a constraint satisfaction problem. Each test case consists of a test input and an expected output. The program is automatically transformed into a constraint model called constraint logic graph. The constraint logic graph is a succinct graphical representation of the system of constraints that defines the relationships between the test inputs and actual outputs. The suite of test inputs can be solved from the conjunction of constraints on each complete path of the constraint logic graph by a constraint logic programming language. The specification of a method is defined by the Object Constraint Language. This non-executable specification is automatically transformed into an executable specification defined by a constraint logic programming language. This executable specification serves as the test oracle to automatically generate the corresponding expected output for a given test input.\",\"PeriodicalId\":281088,\"journal\":{\"name\":\"2016 International Computer Symposium (ICS)\",\"volume\":\"1 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2016-12-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"2\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2016 International Computer Symposium (ICS)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ICS.2016.0123\",\"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 International Computer Symposium (ICS)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICS.2016.0123","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Constraint-Based Test Case Generation for White-Box Method-Level Unit Testing
This paper introduces a unified constraint-based test case generator for white-box method-level unit testing. The derivation of a suite of test cases can be defined as a constraint satisfaction problem. Each test case consists of a test input and an expected output. The program is automatically transformed into a constraint model called constraint logic graph. The constraint logic graph is a succinct graphical representation of the system of constraints that defines the relationships between the test inputs and actual outputs. The suite of test inputs can be solved from the conjunction of constraints on each complete path of the constraint logic graph by a constraint logic programming language. The specification of a method is defined by the Object Constraint Language. This non-executable specification is automatically transformed into an executable specification defined by a constraint logic programming language. This executable specification serves as the test oracle to automatically generate the corresponding expected output for a given test input.