首页> 中文学位 >基于死锁的并发类单元测试用例自动生成研究
【6h】

基于死锁的并发类单元测试用例自动生成研究

代理获取

目录

声明

摘要

第一章 绪论

1.1 课题研究背景和意义

1.2 研究现状

1.2.1 并发程序测试研究现状

1.2.2 死锁研究现状

1.2.3 并发程序单元测试研究现状

1.3 本文主要研究内容与组织结构

1.3.1 主要研究内容

1.3.2 本文组织结构

第二章 死锁检测与并发类单元测试

2.1 死锁检测方法

2.1.1 静态分析方法

2.1.2 动态分析方法

2.2 并发类单元测试方法

2.3 并发类单元测试用例生成技术

2.3.1 Ballerina方法

2.3.2 基于并发覆盖的并发类单元测试用例生成

2.4 本章小结

第三章 并发类死锁分析

3.1 方法框架

3.2 并发类死锁特征

3.2.1 并发类锁变量特征

3.2.2 形参型死锁

3.2.3 形参型死锁对死锁分析的影响

3.3 并分类死锁分析方法

3.3.1 锁序图构建

3.3.2 别名分析

3.3.3 门锁分析

3.4 并发类死锁分析算法

3.4.1 死锁表示

3.4.2 算法描述

3.5 本章小结

第四章 基于并发类死锁分析的单元测试用例生成

4.1 生成框架

4.2 测试用例描述

4.3 基于并发类死锁分析的单元测试用例生成方法

4.3.1 测试用例生成方式

4.3.2 测试用例参数生成策略

4.3.3 测试用例生成

4.4 本章小结

第五章 实验设计与分析

5.1 研究问题

5.2 实验对象与设计

5.2.1 实验对象

5.2.2 实验设计

5.3 实验结果与分析

5.3.1 并发类死锁检测结果分析

5.3.2 溅试用例生成效率分析

5.3.3 形参型死锁对死锁检测的影响

5.4 本章小结

第六章 结论与展望

6.1 结论

6.2 展望

参考文献

附录

致谢

研究成果及发表的学术论文

作者和导师简介

展开▼

摘要

并发故障普遍存在于并发程序中。并发类是并发程序开发和测试的基础。死锁是常见而不易检测的并发故障。单元测试在故障检测中发挥着重要作用。因此针对死锁故障研究并发类单元测试用例生成,对尽早揭示死锁故障、提高并发程序质量均有着重要的理论意义和实际应用价值。目前针对并发类单元测试的用例生成,主要有以随机方式和基于覆盖准则的测试用例生成方法,但其测试用例检测并发故障的能力和效率都不高。
  针对并发故障特点,分析并发类中潜在故障代码来指导测试用例生成是一种提高测试用例生成有效性的方式。本文针对并发类中的死锁故障,提出了一种基于死锁的并发类单元测试用例自动生成方法(Automatic Generation Unit Test Case For Concurrent Class Based On Deadlock,AGTBD),该方法针对并发类分析其死锁特征,并对特殊死锁给出了形参型死锁定义,然后依据并发类死锁特征进行并发类死锁分析,以找到并发类中存在潜在死锁的代码,在此基础上,结合串行单元测试用例工具Randoop进行并发类单元测试用例自动生成。
  为验证本文AGTBD方法的有效性,论文以java中常见的7个并发类为测试对象,应用AGTBD方法自动生成测试用例,并与随机方法和基于覆盖准则的测试用例生成方法在测试用例生成效率和死锁故障检测能力方面进行比较分析,实验结果表明AGTBD方法能够找到并发类中的潜在死锁。相比其它方法,其测试用例生成效率和死锁故障检测能力都有所提高。实验还进一步分析说明了形参型死锁对测试用例生成和死锁检测的影响,为并发程序测试用例生成和并发故障检测提供了一定借鉴。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号