{"title":"Test image generation using segmental symbolic evaluation for unit testing","authors":"Tahir Jameel, Mengxiang Lin, He Li, Xiaomei Hou","doi":"10.1109/SNPD.2014.6888718","DOIUrl":null,"url":null,"abstract":"This paper presents a novel technique to generate test images using segmental symbolic evaluation for testing of image processing applications. Images are multidimensional and diverse in nature, which leads to different challenges for the testing process. A technique is required to generate test images capable of finding program paths derived by image pixels. The proposed technique is based on symbolic execution which is extensively used for test data generation in recent years. In image processing applications, pixel operations such as averaging, convolution etc. are applied on a segment of input image pixels called window for a single iteration and repeated for the entire image. Our key idea is to imitate operations on pixel window using symbolic values rather than concrete ones to generate path constraints in the program under test. The path constraints generated for different paths are solved for concrete values using our simple SAT solver and the solutions are capable to guide program execution to the specific paths. The solutions of path constraints are used to generate synthetic test images for each identified path and the paths constraints which are not solvable for concrete pixel values are reported as infeasible paths. We have developed a tool IMSUITthat takes an image processing function as input and executes the program symbolically for the given pixels window to generate test images. Effectiveness of IMSUIT is tested on different modules of an optical character recognition system and the result shows that it can successfully create test images for each path of the program under test and capable of identifying infeasible paths.","PeriodicalId":272932,"journal":{"name":"15th IEEE/ACIS International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing (SNPD)","volume":"64 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2014-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"15th IEEE/ACIS International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing (SNPD)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/SNPD.2014.6888718","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2
Abstract
This paper presents a novel technique to generate test images using segmental symbolic evaluation for testing of image processing applications. Images are multidimensional and diverse in nature, which leads to different challenges for the testing process. A technique is required to generate test images capable of finding program paths derived by image pixels. The proposed technique is based on symbolic execution which is extensively used for test data generation in recent years. In image processing applications, pixel operations such as averaging, convolution etc. are applied on a segment of input image pixels called window for a single iteration and repeated for the entire image. Our key idea is to imitate operations on pixel window using symbolic values rather than concrete ones to generate path constraints in the program under test. The path constraints generated for different paths are solved for concrete values using our simple SAT solver and the solutions are capable to guide program execution to the specific paths. The solutions of path constraints are used to generate synthetic test images for each identified path and the paths constraints which are not solvable for concrete pixel values are reported as infeasible paths. We have developed a tool IMSUITthat takes an image processing function as input and executes the program symbolically for the given pixels window to generate test images. Effectiveness of IMSUIT is tested on different modules of an optical character recognition system and the result shows that it can successfully create test images for each path of the program under test and capable of identifying infeasible paths.