学位论文 > 优秀研究生学位论文题录展示

API自动测试系统的设计

作 者: 林游
导 师: 董军
学 校: 华东师范大学
专 业: 软件工程
关键词: API测试自动化 API信息 测试驱动程序 测试执行控制
分类号: TP311.52
类 型: 硕士论文
年 份: 2005年
下 载: 175次
引 用: 6次
阅 读: 论文下载
 

内容摘要


测试是软件开发的关键过程之一。API级别的测试是在软件开发的编码阶段对已经完成编码的API(Application Program Interface,应用编程接口)进行测试,是软件测试中一个重要环节。 API测试是基于执行的动态测试方法,要编写测试驱动程序驱动被测API,然后编译驱动程序,接着执行驱动程序,最后要对测试运行结果做分析。当这些工作用手工来完成时工作量巨大,许多开发和测试人员在进度压力下往往很难对API做全面的测试,造成最终的软件产品错误很多,质量低下,难以符合用户的需求。另外,手工测试有时是单调和乏味的,容易使人厌倦,这也是测试不到位的原因之一。因此,API测试自动化是较好的选择。 本文根据软件测试的实践和应用要求,通过对面向过程和面向对象的程序设计语言(包括C/C++、Java)编写的API的研究,以及对各种软件测试技术和方法的分析,提出能够很大程度地减少手工测试工作量、提高测试质量和支持API自动化测试全过程的三大组件:API信息提取和管理组件、测试驱动程序自动生成组件和自动测试执行及控制组件,并对其中的每一个组件的关键设计和实现问题做了讨论。 本文的最后给出了运用所开发的系统对一个实际的程序模块进行测试的例子,并展示了API信息提取和管理组件、测试驱动程序自动生成组件、测试执行及控制组件如何相互配合完成对测试全过程的支持,以达到提高测试效率和测试质量的目的。 在具体实现API自动化测试系统时,对测试用例数据的自动生成的支持仅仅限于两种情况:给定边界值或者等价类划分时的测试用例自动生成,这是系统的不足。今后的工作是使系统能更自动地生成测试用例数据,例如自动识别软件建模工具的设计规范,从而自动生成与之相适应的测试用例数据。

全文目录


第一章 绪论  9-12
  1.1 引言  9
  1.2 测试自动化的必要性  9-11
    1.2.1 软件错误的必然性  9-10
    1.2.2 手工编写测试代码的代价  10-11
  1.3 本文的研究内容  11-12
第二章 相关工作  12-17
  2.1 软件测试基础  12
    2.1.1 软件测试定义  12
    2.1.2 API及API测试  12
  2.2 自动化测试的好处  12-15
    2.2.1 生产出可靠系统  13
    2.2.2 测试工作质量的改进  13-14
    2.2.3 减少测试工作并缩短进度  14-15
  2.3 自动化测试工具研究现状  15-17
第三章 API自动化测试  17-21
  3.1 测试过程  17-19
    3.1.1 初始化条件  17
    3.1.2 API特征  17-18
    3.1.3 输出  18-19
  3.2 API自动化测试系统组件  19-21
    3.2.1 API信息管理系统  19-20
    3.2.2 测试生成系统  20
    3.2.3 测试执行控制系统  20-21
第四章 API信息管理系统  21-29
  4.1 所需信息及其获取  21-25
    4.1.1 建立初始环境所需信息  21-22
    4.1.2 调用(驱动)API所需信息  22-23
    4.1.3 输出和分析测试结果所需信息  23-24
    4.1.4 信息的获取  24-25
  4.2 API信息的表示和存储  25-27
    4.2.1 纯数据文本存储方式  25
    4.2.2 数据库存储方式  25-26
    4.2.3 XML存储方式  26-27
  4.4 API信息管理系统结构  27-29
第五章 测试执行控制系统  29-38
  5.1 驱动程序管理器  31-35
    5.1.1 驱动程序框架结构  31-32
    5.1.2 驱动程序管理器的设计和实现  32-34
    5.1.3 分布式测试支持  34-35
  5.2 驱动执行控制器(TEC)  35-38
    5.2.1 编译和执行控制  35-36
    5.2.2 失败恢复  36-38
第六章 测试生成系统  38-45
  6.1 测试用例脚本  38-40
  6.2 测试驱动程序自动生成策略  40-45
    6.2.1 初始化  40
    6.2.2 API驱动  40-42
    6.2.3 结果输出  42-43
    6.2.4 其它问题  43-45
第七章 实际应用举例  45-49
  7.1 系统简介  45-46
    7.1.1 系统主要功能  45-46
    7.1.2 系统设计  46
  7.2 应用  46-49
    7.2.1 手动测试过程  47
    7.2.2 自动化测试过程  47-49
第八章 总结和未来工作  49-50
参考文献  50-52
附录A 一个实际测试项目所产生的各种文件  52-75
  A.1 被测程序模块源文件  52-62
  A.2 待测源文件的API信息  62-70
  A.3 测试用例脚本文件  70-71
  A.4 测试驱动源文件  71-73
  A.5 执行控制配置  73-74
    A.5.1 编译配置文件  73
    A.5.2 编译指令文件  73-74
    A.5.3 执行控制脚本  74
  A.6 测试结果日志文件  74-75

相似论文

  1. 先进飞机电气系统主执行软件研究与设计,TP311.52
  2. 基于WinCE平台的故障分析仪应用程序设计与开发,TP311.52
  3. 面向SMDA的服务建模方法及工具实现,TP311.52
  4. 异构环境下企业互操作技术及在物资供应链系统中的应用,TP311.52
  5. 基于特征的软构件建模方法及其在VMI管理系统中的应用,TP311.52
  6. 光电对抗试验系统软件平台开发,TP311.52
  7. 电力负荷管理终端测试装置软件系统研制,TP311.52
  8. 中小企业进销存管理系统的研究与设计,TP311.52
  9. 支持产品物料追踪溯源的物流管理系统,TP311.52
  10. 武器装备信息管理系统的设计与实现,TP311.52
  11. 部队在线考试系统设计与实现,TP311.52
  12. VRGIS在城市设计中的应用,TP311.52
  13. 基层部队人员日常管理信息系统设计实现,TP311.52
  14. 军队物资采购供应管理系统的设计与实现,TP311.52
  15. 部队人员网上训练与考核系统的开发,TP311.52
  16. 军队后勤物资管理系统设计与实现,TP311.52
  17. 摩托化部队机动辅助系统,TP311.52
  18. 部队军事理论在线考试系统设计与实现,TP311.52
  19. 边防军分区信息管理系统设计与实现,TP311.52
  20. 西藏边防作战训练信息管理系统设计与实现研究,TP311.52
  21. 数字电视互动应用交互系统设计与实现,TP311.52

中图分类: > 工业技术 > 自动化技术、计算机技术 > 计算技术、计算机技术 > 计算机软件 > 程序设计、软件工程 > 软件工程 > 软件开发
© 2012 www.xueweilunwen.com