服务器模块级可靠性自动化测试工具的设计与实现
发布时间:2017-05-20 19:22
本文关键词:服务器模块级可靠性自动化测试工具的设计与实现,由笔耕文化传播整理发布。
【摘要】:作为全球最大的中文搜索引擎,百度提供了丰富的网络搜索业务。其中包括了图片搜索功能。每天都有上百万的独立用户使用百度图片搜索服务,如果服务器出现问题,将影响到大量的用户,也将影响广告收益。百度图片搜索服务器前端包含6个模块,其中平均每周会有2个需要更新上线。产品的快速更新增加了风险出现的几率。上线前对模块在一定的压力条件下的出错机率、性能劣化趋势进行监控是十分必要的。因此,开发一套模块级可靠性自动化测试工具,在预防风险、提高测试人员的工作效率等方面有着重要的意义。 论文设计并实现了模块级可靠性自动化测试工具,为服务器的可靠性测试提供支持。通过了解可靠性测试流程、组织会议讨论、与测试人员沟通,提炼出测试工具的需求。该工具主要包括数据准备、压力测试、结果差异(diff)率统计、测试用例四个模块。除压力测试外,重点增加了模糊(fuzz)测试、结果差异率统计作为补充。在系统的设计与实现过程中,作者独立完成的工作如下: (1)数据准备模块包括数据录制工具和数据fuzz工具,能记录上下游之间的通信数据。重点设计并实现了数据fuzz工具,使用结构化fuzz数据的方式,实现了根据字段的取值范围进行fuzz和根据用户自定义方式fuzz数据的功能。 (2)压力测试模块包括模块自动更新工具、模块压力发送工具和系统环境模拟工具。实现被测模块自动更新、在指定压力下进行可靠性测试的功能。在测试中加入了系统环境模拟功能,以便对模块在不同环境下的可靠性进行评估。 (3)结果差异率统计模块负责监控多线程操作的安全性。先录制模块在单线程与多线程运行情况下的返回结果,然后查找其中存在的差异,最后通过差异率统计报表提供的细节信息来协助用户排查存在的问题。 (4)设计模块级可靠性自动化测试的测试用例。测试运行时自动执行测试用例,模拟在实际运行中各种可能出现的场景,监控在这些场景中模块的表现。 目前,该工具已经被应用在图片搜索服务的测试流程中。测试人员使用该工具发现并修复了系统中存在的部分问题。部分工具被单独拿出在其他测试项目中使用。
【关键词】:自动化测试 可靠性测试 黑盒测试 fuzz测试
【学位授予单位】:北京交通大学
【学位级别】:硕士
【学位授予年份】:2014
【分类号】:TP311.52
【目录】:
- 致谢5-6
- 摘要6-7
- ABSTRACT7-12
- 1 引言12-17
- 1.1 项目背景12-13
- 1.2 项目目的及意义13
- 1.3 国内外发展现状13-15
- 1.4 论文主要工作15-16
- 1.5 论文组织结构16-17
- 2 关键技术介绍17-24
- 2.1 软件测试17-21
- 2.1.1 基本概念17
- 2.1.2 软件测试分类17-18
- 2.1.3 可靠性测试18-19
- 2.1.4 黑盒测试用例设计方法19-20
- 2.1.5 模糊测试20-21
- 2.2 SuperTest测试框架21-23
- 2.2.1 SuperTest原理21
- 2.2.2 SuperTest核心思想21-22
- 2.2.3 SuperTest结构22-23
- 2.3 本章小结23-24
- 3 可靠性测试工具需求分析与系统架构设计24-31
- 3.1 需求分析24-26
- 3.1.1 功能性需求分析25-26
- 3.1.2 非功能性需求分析26
- 3.2 系统架构设计26-30
- 3.2.1 系统整体架构27-28
- 3.2.2 功能模块划分28-30
- 3.3 本章小结30-31
- 4 可靠性测试工具的设计与实现31-59
- 4.1 开发平台与工具31
- 4.2 数据录制工具的设计与实现31-35
- 4.2.1 数据录制工具的设计32-33
- 4.2.2 数据录制工具的实现33-35
- 4.3 数据fuzz工具的设计与实现35-41
- 4.3.1 数据fuzz工具的设计35-40
- 4.3.2 数据fuzz工具的实现40-41
- 4.4 模块自动更新工具的设计与实现41-43
- 4.4.1 模块自动更新工具的设计41-42
- 4.4.2 模块自动更新工具的实现42-43
- 4.5 模块压力发送工具的设计与实现43-47
- 4.5.1 模块压力发送工具的设计43-46
- 4.5.2 模块压力发送工具的实现46-47
- 4.6 系统环境模拟工具的设计与实现47-48
- 4.6.1 系统环境模拟工具的设计47
- 4.6.2 系统环境模拟工具的实现47-48
- 4.7 结果差异率统计工具48-53
- 4.7.1 结果差异率统计工具的设计50-51
- 4.7.2 结果差异率统计工具的实现51-53
- 4.8 模块级可靠性测试的测试用例设计53-58
- 4.9 本章小结58-59
- 5 可靠性测试工具的测试59-61
- 5.1 各功能模块的测试59-60
- 5.2 测试结果60
- 5.3 本章小结60-61
- 6 总结与展望61-66
- 6.1 成果展示61-64
- 6.2 论文总结64
- 6.3 展望64-65
- 6.4 本章小结65-66
- 参考文献66-68
- 作者简历及攻读硕士学位期间取得的研究成果68-70
- 学位论文数据集70
【参考文献】
中国期刊全文数据库 前8条
1 单锦辉,姜瑛,孙萍;软件测试研究进展[J];北京大学学报(自然科学版);2005年01期
2 蔡一博;;国内软件测试现状分析[J];东方企业文化;2010年03期
3 崔岩;王行勇;徐e,
本文编号:382614
本文链接:https://www.wllwen.com/wenyilunwen/guanggaoshejilunwen/382614.html