项目名称: 并发程序测试及其关键技术研究
项目编号: No.61472076
项目类型: 面上项目
立项/批准年度: 2015
项目学科: 自动化技术、计算机技术
项目作者: 戚晓芳
作者单位: 东南大学
项目金额: 82万元
中文摘要: 多核技术的普及和高级编程语言对并发设施的支持,使得并发软件的开发和使用日益广泛。并发软件测试是保障并发软件质量的重要手段。针对目前该领域中的若干关键问题,研究并发软件测试的理论和方法,研究内容包括:(1)对现有可达性测试方法进行改进,提出可有效杀死并发变体的并发程序测试用例生成方法,提高探测并发程序中同步类错误的能力;(2) 在上述工作的基础上,融合程序切片等分析技术分析同步事件之间的交互关系,提出基于可变强度并发程序可达性测试的约简方法,提高并发程序测试效率;(3) 提出基于并发程序切片等程序影响性分析和可变强度组合覆盖的并发程序回归可达性测试方法,降低回归测试成本,提高并发软件的生产率;(4) 实现上述并发程序测试用例生成、约简以及回归测试用例生成的工具原型,获取相关实验数据,对上述测试方法的正确性、有效性和性能进行验证。
中文关键词: 并发程序;软件测试;回归测试;程序切片
英文摘要: The development and application of concurrent softwares have become increasingly widespread with the use of multi-core technique and the provision of built-in support for cocurrent programming in modern programming languages. Testing is an important approach to ensuring concurrent software qulity. The theories and methods of testing concurrent programs will be investigated for some key problems in this field. This research will focus on the following aspects:(1)Present an improved reachability testing approach to generating test cases that can kill concurrent mutants effectively and enhance the capability of detecting synchroniztion faults.(2)With the technique of program analysis including program slicing,identify the interaction relations between synchronization events and investigates a reduction approach based on variable strength reachability testing to increase the efficiency of testing concurrent programs.(3)Propose a regression reachability approach based on program change impact analysis including program slicing and variable strength combinatorial strategy to increase the productivity.(4) Develop a prototype tool kit and implement the main algorithms for generating test cases,reducing test suites and generating regression test cases for concurrent programs, and then conduct empirical study and verify correctness,effectiveness and performances of these algorithms.
英文关键词: concurrent program;software testing;regression testing;program slicing