首页> 中文学位 >Java并发程序的测试框架系统设计与实现
【6h】

Java并发程序的测试框架系统设计与实现

代理获取

目录

文摘

英文文摘

声明

1绪论

1.1选题背景

1.2研究现状

1.3研究思路

1.4论文结构

1.5本章小结

2并发软件测试综述

2.1并发系统和并发软件

2.2并发程序的同步序列

2.3并发软件测试

2.4本章小结

3基于播种方法的并发软件测试算法分析与选择

3.1并发程序测试运行中的确定性

3.2基于播种方法的并发软件测试机制

3.3基于覆盖的播种算法设计

3.4本章小结

4并发程序测试框架的总体设计

4.1测试框架的需求分析

4.2测试框架的使用场景

4.3测试框架的体系结构

4.4测试框架的运行流程

4.5开发平台及工具的选择

4.6本章小结

5并发程序测试框架的详细设计与实现

5.1播种技术实现构件

5.2测试套件构件

5.3测试用例接口构件

5.4本章小结

6实验与分析

6.1实验的目的

6.2实验方案

6.3实验结果与分析

6.4本章小结

结 论

参考文献

附录A实验中测试用例的部分代码

致谢

展开▼

摘要

众所周知,并发程序设计易于产生并发错误。这些并发错误通常在软件开发过程的晚期才被发现,这时修复它们的成本往往是早期修复成本的好多倍。探究并发错误难以在测试中被发现的原因时,人们通常认为是由于并发程序运行中的不确定性造成的。但实际上在针对并发程序的测试中线程的执行顺序通常是非常确定的,在测试中发生并发错误的几率很小,因此才导致人们无法及时发现它们。 本文探讨了一种在测试用例运行过程中运用播种技术来增加并发程序出现并发错误几率的方法。本方法通过在被测试并发程序中的共享变量存取方法和同步操作方法间插入sleepO原语。在并发程序运行时,基于播种覆盖算法来决定播种的原语是否被执行,由此来增加测试过程中并发错误发生的几率,从而提高发现并发错误的机会。基于这种思想,本文采用Javassist类库对被测试的并发程序二进制类文件进行分析,在不改变原有程序逻辑的基础上插入必要的代码。同时采用在Junit测试框架的基础上进行扩展,实现了一套完整的针对并发程序测试的框架系统。 本文通过对并发程序测试过程中出现的确定性问题的研究,提出了使用播种技术来解决此问题的基本原理与方法。同时基于播种技术实现了一套完整的并发程序测试框架系统,从而大大提高了在测试过程中发现并发错误的几率。在实际使用中本系统取得了较好的效果。我们的工作不是取代原有的测试,而是对并发程序的测试技术的一种有益补充。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号