{"title":"结合数据流分析和遗传算法的自动测试数据生成模型","authors":"Mingjie Deng, Rong Chen, Zhenjun Du","doi":"10.1109/JCPC.2009.5420148","DOIUrl":null,"url":null,"abstract":"Dataflow techniques have been widely applied to test the object-oriented software, but the existing techniques mainly care how to arrange method sequence to test, not paying attention to how to generate test data automatically. Although the existing random test data generators can create test data automatically, yet information about the test requirement is not incorporated into the generation process, it may fail to find data to satisfy the requirements. This paper presents an automatic test data generation model that combine genetic algorithm (GA) with dataflow analysis. The model applies Control Flow Graph (CFG) which is partitioned into proper blocks to aid data flow analysis. Data Type Graph (DTG) presented in this paper facilitates the constructing of an object to realize automatic testing. Due to the search function of genetic algorithm, it improves the efficiency of test data generation. The experimental results prove our model to be more effective in test data generation and in coverage of dataflow than the random algorithm, showing the applicable significance of the model in software testing for both desktop and embedded systems.","PeriodicalId":284323,"journal":{"name":"2009 Joint Conferences on Pervasive Computing (JCPC)","volume":"12 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2009-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"13","resultStr":"{\"title\":\"Automatic test data generation model by combining dataflow analysis with genetic algorithm\",\"authors\":\"Mingjie Deng, Rong Chen, Zhenjun Du\",\"doi\":\"10.1109/JCPC.2009.5420148\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Dataflow techniques have been widely applied to test the object-oriented software, but the existing techniques mainly care how to arrange method sequence to test, not paying attention to how to generate test data automatically. Although the existing random test data generators can create test data automatically, yet information about the test requirement is not incorporated into the generation process, it may fail to find data to satisfy the requirements. This paper presents an automatic test data generation model that combine genetic algorithm (GA) with dataflow analysis. The model applies Control Flow Graph (CFG) which is partitioned into proper blocks to aid data flow analysis. Data Type Graph (DTG) presented in this paper facilitates the constructing of an object to realize automatic testing. Due to the search function of genetic algorithm, it improves the efficiency of test data generation. The experimental results prove our model to be more effective in test data generation and in coverage of dataflow than the random algorithm, showing the applicable significance of the model in software testing for both desktop and embedded systems.\",\"PeriodicalId\":284323,\"journal\":{\"name\":\"2009 Joint Conferences on Pervasive Computing (JCPC)\",\"volume\":\"12 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2009-12-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"13\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2009 Joint Conferences on Pervasive Computing (JCPC)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/JCPC.2009.5420148\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2009 Joint Conferences on Pervasive Computing (JCPC)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/JCPC.2009.5420148","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 13
摘要
数据流技术在面向对象软件的测试中得到了广泛的应用,但现有的技术主要关注如何安排方法序列进行测试,而没有关注如何自动生成测试数据。虽然现有的随机测试数据生成器可以自动创建测试数据,但是关于测试需求的信息没有被纳入到生成过程中,它可能无法找到满足需求的数据。提出了一种将遗传算法与数据流分析相结合的测试数据自动生成模型。该模型采用控制流图(CFG)进行数据流分析,控制流图被划分为适当的块。本文提出的数据类型图(Data Type Graph, DTG)便于构造对象来实现自动测试。由于遗传算法的搜索功能,提高了测试数据生成的效率。实验结果表明,该模型在测试数据生成和数据流覆盖方面比随机算法更有效,显示了该模型在桌面和嵌入式系统软件测试中的应用意义。
Automatic test data generation model by combining dataflow analysis with genetic algorithm
Dataflow techniques have been widely applied to test the object-oriented software, but the existing techniques mainly care how to arrange method sequence to test, not paying attention to how to generate test data automatically. Although the existing random test data generators can create test data automatically, yet information about the test requirement is not incorporated into the generation process, it may fail to find data to satisfy the requirements. This paper presents an automatic test data generation model that combine genetic algorithm (GA) with dataflow analysis. The model applies Control Flow Graph (CFG) which is partitioned into proper blocks to aid data flow analysis. Data Type Graph (DTG) presented in this paper facilitates the constructing of an object to realize automatic testing. Due to the search function of genetic algorithm, it improves the efficiency of test data generation. The experimental results prove our model to be more effective in test data generation and in coverage of dataflow than the random algorithm, showing the applicable significance of the model in software testing for both desktop and embedded systems.