基于云的接口自动化测试平台的设计与实现

目 录

1 绪 论 (1)

1.1 研究背景及意义 (1)

1.2 国内外研究现状 (3)

1.2.1 界面自动化测试 (3)

1.2.2 接口自动化测试 (4)

1.2.3 每日构建 (6)

1.2.4 测试云 (6)

1.3 研究目标与内容 (7)

1.4 论文组织结构 (8)

2 关键技术介绍 (9)

2.1 云技术 (9)

2.2 Jenkins (10)

2.3 FitNesse (12)

2.4 本章小结 (14)

3 需求分析 (15)

3.1 虚拟化需求 (15)

3.2 测试过程需求 (16)

3.3 接口测试需求 (19)

3.4 项目测试需求 (20)

3.5 本章小结 (22)

4 系统设计 (23)

4.1 系统架构设计 (23)

4.2 基础设施云设计 (26)

4.3 测试流程控制设计 (27)

4.4 接口自动化测试框架设计 (28)

4.4.1 框架分层架构 (28)

4.4.2 功能模块划分 (30)

4.5 本章小结 (31)

5 系统实现 (32)

5.1 基础设施云实现 (32)

5.2 测试流程控制实现 (33)

5.2.1 控制机流程实现 (33)

5.2.2 执行机流程实现 (36)

5.3 接口自动化测试框架分层架构实现 (38)

5.3.1 Python 接口适配层 (39)

5.3.2 业务逻辑层 (41)

5.3.3 PyFixture层 (41)

5.3.4 测试用例层 (42)

5.3.5 持续集成 (42)

5.4 接口自动化测试框架模块实现 (43)

5.4.1 内核与网络 (43)

5.4.2 权限模块 (45)

5.4.3 普通点模块 (49)

5.4.4 快照与记录 (54)

5.4.5 报警模块 (60)

5.5 本章小结 (63)

6 系统测试与应用 (65)

6.1 系统测试 (65)

6.1.1 基础设施云测试 (65)

6.1.2 测试流程控制测试 (66)

6.1.3 接口自动化测试框架测试 (68)

6.2 系统应用过程 (71)

6.2.1 系统实施时期 (71)

6.2.2 系统维护时期 (72)

6.3 系统应用效果 (73)

6.3.1 过程管理效果 (73)

6.3.2 质量保护效果 (76)

6.3.3 能力提升效果 (78)

6.4 本章小结 (78)

7 总结与展望 (80)

7.1 总结 (80)

7.2 展望 (81)

参考文献 (82)

致 谢 (84)

攻读学位期间发表的学术论文目录 (85)

基于云的接口自动化测试平台的设计与实现

1绪 论

目前由于软件行业的飞速发展,市场需求增加及更新频繁,导致越来越多的软件开发采用了敏捷生命周期来响应此种快速迭代。而且人们对软件质量的要求仍不断提升,因此在快速迭代中,测试过程也必不可少。为了既能进行快速回归测试,又能有效保护软件质量,自动化测试已变为必不可少的一种测试方式。论文主要研究在测试云中,如何搭建自动化接口测试平台,并使用该平台对项目进行测试,以起到保护软件质量、提高开发速度的作用。

1.1 研究背景及意义

软件测试是对软件产品进行验证和确认的过程,以确定产品是否满足用户的需要。在当今社会,人们对计算机软件产品的质量需求越来越高,这就对软件开发及测试提出了更高的要求。另一方面,在软件开发项目中,测试所占工期往往占总工期的40%[1],这使得测试成本也较高。因此,如何通过技术手段,降低软件测试成本,提高测试质量具有重要意义。

软件测试方式有手工测试及自动化测试两种方式,前者首次投入成本较少,能发现新缺陷,但在每次回归时,会投入越来越多的人力物力;而后者首次投入成本大,但随着回归测试的增加,最终整体成本将会减少[2]。随着软件产品的竞争日益激烈,快速响应口号的提出,敏捷开发生命周期越来越被重视。而保证敏捷项目成功的重要因素之一:持续集成,则要求软件测试必须做到自动化回归测试。因此,自动化测试在测试领域越来越受到重视。

目前业界自动化测试工具基本是进行软件界面自动化测试,如:Selenium,White,AutoIt等,此类工具可以自动识别应用程序界面上的控件,捕捉操作动作,并进行回放,从而实现自动化测试。但是由于市场的快速变化,软件产品为了适应这个变化的市场,在界面上也会经常性的变动。这就导致使用界面自动化测试工具写的测试用例,需投入大量的时间撰写,但不能进行多次回归测试,从而降低了自动化测试用例的作用。应用程序接口(Application Programming Interface,简称:API),是软件系统不同组成部分衔接的约定。相对于软件界面来说,此部分相对固定,并能保证各版本间向下兼容,且与功能息息相关。因

相关主题
相关文档
最新文档