软件测试是目前最主要的软件质量保障手段之一。由于功能增加、性能调优、错误修复等原因,软件常常动态演化而非静止存在。现有的测试用例生成、选择和管理等技术,难以满足日益频繁和快速的软件演化测试需求。为了有效保障演化软件的质量,需要一套系统完整的软件测试演化技术。本项目旨在研究多阶段融合的测试用例演化技术,进行较大规模的演化软件测试实验分析,揭示测试用例演化的基本规律。本项目的研究内容主要包括三个方面(1)多阶段融合的测试用例演化框架,(2)演化驱动的测试用例修复技术,(3)演化驱动的测试用例扩增技术。本项目分析软件演化带来的测试需求,根据测试需求和原有测试用例运行信息快速有效地修复不可用测试用例和扩增新测试用例,并结合已有的软件演化分析和测试用例选择技术,实现一个完整的测试用例演化支撑平台。本项目属于当前软件工程研究的前沿课题,具有重要的理论意义和应用价值。
Software Testing;Test Selection;Test Repairing;Test Augmentation;
现有的软件测试技术,难以满足日益频繁和快速的软件演化需求。为了有效保障演化软件的质量,我们研发了一套系统的软件测试演化技术,进行了较大规模的演化软件测试实验分析,揭示了测试用例演化的基本规律。我们通过分析软件演化带来的测试需求,根据测试需求和原有测试用例运行信息快速有效地修复不可用测试用例和扩增新测试用例,并结合已有的软件演化分析和测试用例选择技术,实现了一个系统的测试用例演化技术。研究成果发表于IEEE TSE,ICSE,FSE等软件工程顶级学术期刊和会议。已经申请专利 15 项,已经 ,已经 11 项获授权,部分研究成果已经应用于百度 、华为 、阿里 等知名软件企业 。