系统测试&验收测试
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
评估系统的能力 识别系统中的瓶颈
系统调优
验证稳定性(resilience)、可靠性(reliability)
性能测试的目的
评估系统的能力 测试中得到的负荷和响应时间等数据可以被用于验证所 测试的模型的能力,并帮助做出决策。 识别系统中的瓶颈 受控的负荷是否可以被增加到一个极端的水平并突破它, 从而识别系统的瓶颈或薄弱的地方。
生成订单
更新订单 发货
130/hr
20/hr 40/hr
180/hr
30/hr 90/hr
中等
中等 中等
中等
中等 高
中
大 大
用户概况分析
定票部门 飞行部门 管理部门
输入订单 100 25
更新订单
计算飞行 里程 计算销售
50
10
70 5
8
4.压力测试
压力测试(Stress Testing)是指模拟巨大的工作负荷,
界面元素测试
窗口测试
菜单测试 图标测试
鼠标测试
文字测试
窗口测试
窗口大小、颜色、背景等是否合理 窗口中的菜单、工具条、滚动条、对话框、按钮、图标等是否布局
合理和正常使用 窗口是否可以被移动 活动窗口能否被反显加亮 窗口是否能够正确关闭 多个窗口叠加时,窗口名称是否显示正确 窗口是否支持最小化、最大化 窗口上的文字是否能根据窗口的缩放而缩放 在窗口中按Tab键可以实现聚焦按顺序移动 ……
系统测试一般由若干个不同的测试组成,目的是在与
真实生产环境一模一样的环境下充分运行系统,验证 整个系统是否满足各方面的需求:
是否满足了所有功能需求; 系统响应时间是否满足要求; 系统是否能够支撑大量用户并发访问; 是否对出错有相应的处理等;
1.系统测试概述
系统测试关注的内容: 目标:系统各方面是否都满足了用户的需求; 依据:系统需求规格说明书; 测试环境:在生产环境下进行的测试; 执行者:以用户和开发组织的测试人员共同完成; 测试方法:黑盒测试; 评估方法:系统的功能和非功能要求是否都得到了满足;
记录测试结果,并将bug反馈给开发人员
对于修改后的问题进行回归测试 对未修改的功能进行抽测,已确认系统的修改是否对
其他部分产生了影响 发布可部署的软件版本 对功能测试进行总结
3.性能测试
性能是一种表明软件系统或构件对于实时性要求的符
合程度的指标。通常用系统响应时间来衡量。 响应时间的理解
性能测试与压力测试往往同时进行,如对一个网站进
行测试,模拟10到50个用户就是在进行常规性能测试, 用户增加到1000乃至上万就变成了压力测试。
压力测试角度
不断重复访问某个功能,看系统是否会失效
模拟大并发量访问系统的某个功能,看系统是否会失
效 提交大数据量测试用例,看系统是否会失效;
来检测系统是否满足了需求定义的全部功能。
一般情况下,采用黑盒测试来进行功能测试,常用的
黑盒测试方法都可以用来设计功能测试的测试用例, 包括等价类划分、边界值、因果图、错误推测法等。
功能测试发现的问题
是否需求规格说明书中定义的功能都得到了实现
实现的功能是否满足了用户的业务要求 各项输入是否都满足了需求定义的要求
性能测试主要参数
响应时间
并发用户数 系统吞吐量
服务器性能参数
响应时间
系统响应时间指从向应用系统发出请求开始,到客户
端接收到最后一个字节数据为止所消耗的时间。
合理的响应时间取决于实际的用户需求,需要在需求
分析时进行定义。 例如大数据量统计请求,用户即使等待30分钟,也认 为是合理的;而登录、修改密码等操作的响应时间应 该在几秒内。
用,尤其是在分析系统的可扩展性、进行性能瓶颈定 位时,对服务器性能参数值的分析比较关键。
服务器性能参数
与操作系统有关的参数:CPU平均利用率、内存平均
占用率、硬盘占用率、I/O数量、网络时延。 与数据库有关的参数:I/O等待时间、内存平均使用 率、CPU平均使用率、一次I/O操作中所读的最大 Blocks数、日志(Log)的增长情况、数据库的访问速 度、数据库能支持的最大用户数、数据库缓存 (Cache)命中率、不同数据库参数下的性能情况、 锁的处理。
系统测试内容
系统测试 功能测试 安全性测试 测试内容 系统的功能是否真正实现了 设法破坏程序的安全性、保密检查
可靠性测试
系统恢复测试 并发负载测试 疲劳强度测试 大数据量测试
平均无故障时间、因故障停机时间,需要模拟运行环境
测试系统出错后如何恢复正常工作的 在一定工作负荷和配置条件下,系统响应时间及处理速 度 让程序在高负荷情况下运行(建议72小时) 企图证明程序不能处理目标中指出的大批数据
从系统角度看:指系统对请求做出响应所需要的时间
从用户角度看:提交请求后,到得到结果所需要的时间 对于网络软件系统,用户感觉到的响应时间除了服务器
的处理时间外,还要包括网络传输的时间
响应时间越短,用户就越满意,相反用户就越不满意。
Βιβλιοθήκη Baidu 性能测试的概念
性能测试是用来测试软件在集成系统中运行的性能。
性能测试的目的
系统调优 识别出系统的性能瓶颈后,通过提高硬件配置、改进算 法、优化数据库性能等方法,对系统进行调优,从而提 高系统的性能。 验证稳定性(resilience)、可靠性(reliability) 使系统在一定的生产负荷下长时间执行,是评估系统的 稳定性和可靠性的有效方法。
与软件有关的参数:交易的平均响应时间(从接收请
求到回复响应的时间)、每秒交易数量(单位时间里 的执行次数)、对中间件功能的调用、远程处理延迟。
性能测试方案制定
任务分布图
有哪些交易任务? 在一天的某些特定时刻系统都有哪些主要操作?
交易混合图
高峰期有哪些业务操作? 中间件操作有多少?数据库操作有多少? 如果任务失败,那么商业风险有多少?
北京邮电大学软件学院
本章内容
1.系统测试概述
2.功能测试 3.性能测试
7. 兼容性测试
8.健壮性测试 9.文档测试
4.压力测试
5.安全性 6.易用性测试
10.回归测试
11.验收测试
1.系统测试概述
软件系统要得到运行,必须具有相应的运行环境,包
括硬件、网络、操作系统、数据库、中间件、外围系 统、系统用户等。
存储量测试
测试程序所占用的内外存容量(静/动态)
系统测试内容
系统测试
配置测试 兼容性测试
测试内容
软硬件配置,至少每一类和最大最小的设备配置情况都要测 试。 向下兼容、交错兼容,对现有程序进行修改和补充后,要进 行此类测试。
互连测试
可维护性测试 易用性测试 文档测试 安装性测试 启动/停止测试
测试不同系统之间的互连性。
业务符合性 功能定制性 业务模块的集成度 数据共享能力 约束性 交互性 错误提示
用户界面测试
界面整体测试
界面元素测试
用户界面设计原则
符合相关标准和规范
界面清晰简洁 功能布局直观
界面风格一致
展现效果可灵活配置
界面整体测试
规范性测试 界面设计符合现行标准和规范 一致性测试 使用标准控件,标准分辨率,标准快捷键 合理性测试 界面设计是否与系统功能融洽,颜色布局是否协调
系统对输入是否都进行了正确的处理,并给出了直观、
正确的输出
不同角色的用户在系统中能够进行的操作是否与需求
定义的一致 系统对业务流程的支持是否流畅、合理、正确 系统是否给出了清晰的提示 系统是否进行了适当的出错处理
功能测试步骤
制定功能测试测试计划
按照系统需求规格说明书的描述,编写功能测试用例 按照测试用例,执行系统功能测试
并发用户数
并发用户数一般是指同一时间段内访问系统(向系统
提交请求)的用户数量。
在系统业务操作高峰时,会发生并发用户数过多,并
发访问量过大的情况,这时会导致系统响应速度下降, 甚至导致系统拒绝服务。
最大并发用户数:指在系统响应时间和服务器性能参
数在某个水平的前提下,系统最多能够支持的并发访 问用户数量。
装,来评估安装过程的易用性和正确性。需要考察一 下方面:
安装手册撰写是否完备 安装自动化程度 安装过程中断测试 安装后卸载的测试 不同环境下安装测试 安装顺序测试 安装的正确性测试
功能易用性测试
功能易用性指系统功能在满足用户业务要求的同时,
使用的方便性。在测试系统功能易用性时主要考察以 下方面:
设计随机变化的测试用例,例如访问重复次数、访问
顺序、访问次数、数据量等,以获得与实际更接近的 压力测试效果
容量测试
容量测试是压力测试的一种,旨在测试系统承受超额
数据容量来发现其是否能够正确处理。
压力测试主要是面向大访问量,而容量测试主要是面
向大数据量。
容量测试一般要对外部的数据进行分类,并对每类数
其目标是度量系统相对于预定义目标的差距。
性能测试可分布于软件测试的各个步骤(单元测试、
集成测试、系统测试),但一般来讲,只有在系统测 试阶段,才能检查一个系统的真正性能。
性能测试可根据需要,分别采用白盒测试和黑盒测试
。
性能测试的目的
性能测试的目的就是通过测试确认软件是否满足产品
的性能需求,同时发现系统中存在的性能瓶颈,起到 优化系统的目的。 通过性能测试能达到以下目的:
对维护过程和难易程度进行测试。 界面友好、错误信息简明易懂、测试操作工序次序正确。 审查文档的正确性,对文档中的每个例子都要作为测试用例。 测试系统的安装过程。 系统启动及关机阶段,能否正常运行。
2.功能测试
功能测试是系统最重要、最基本的测试工作。功能的
完善是对一个软件系统最基本的要求。
功能测试主要是根据《系统需求规格说明书》的内容,
以检验系统在峰值使用情况下是否可以正常运行。 压力测试一般用于测试系统的稳定性。
一般通过模拟负载的方法使系统的资源使用率达到一
个较高的水平。
通常设定内存使用率达到75%以上、CPU使用率达到
75%以上
在这种情况下测试系统响应时间、系统有无错误产生。
压力测试与性能测试的比较
目的不同: 性能测试:检查系统在一定负载下的响应速度、资源使 用率等性能指标 压力测试:测试系统在最大负载情况下的运行情况
如某个单位开发了办公自动化系统,配备了很好的机 器设备和网络环境,领导也非常重视,但是使用了一 段时间之后,就把软件系统束之高阁了,重新回到了 手工处理的时代,问题的关键就在于该系统不符合用 户使用习惯,不符合行业特点。
易用性
易用性被描述成软件产品被理解、学习、使用和吸引
用户的能力。
易用性涉及到易理解性、易学习性、美观性、一致性
据进行容量限制的分析,而后对每类数据构造大容量 数据进行测试,以检验系统在这种情况下的处理能力 、响应时间、出错处理等是否满足用户需求。
5.易用性测试
软件在开发完成之后,除了要满足可用性之外,还要
具有良好的易用性。
终端用户是否觉得软件易用,往往直接决定了一个软
件能否取得市场的成功。
由于易用性差导致软件系统失败的案例比比皆是。例
最大并发用户数越大,系统性能越好,反之,则系统
性能越差。
系统吞吐量
吞吐量指单位时间内系统处理的客户请求数量。
一般用请求数/秒或页面数/秒来衡量。 吞吐量指标可以直接体现软件系统的性能承载能力。
服务器性能参数
服务器性能参数是描述服务器或操作系统性能的一些
数据指标。
这些参数值在性能测试中发挥着监控和分析的关键作
用户概况分析
哪些任务是每个用户都要执行的? 针对不同角色的用户,他们的任务是什么? 针对每个用户组,不同任务的比例如何?
任务分布图
交易混合图
交易名称 日常业务 高峰期业 务 Web服务 器负载 数据库服 务器 负载 登陆 开一个 新帐号 70/hr 10/hr 210/hr 15/hr 高 中等 低 中等 大 小 风险
和业务符合性等方面。
易用性测试是一个非常有挑战性的工作,往往依靠测
试工程师丰富的行业经验和对行业知识深刻的理解。
易用性测试不仅包括对系统使用方式的测试,还包括
对用户手册、在线帮助等文档的测试。
易用性测试内容
安装测试
功能易用性测试 用户界面测试
辅助系统测试
安装测试
安装测试就是按照用户安装手册的描述对软件进行安
系统调优
验证稳定性(resilience)、可靠性(reliability)
性能测试的目的
评估系统的能力 测试中得到的负荷和响应时间等数据可以被用于验证所 测试的模型的能力,并帮助做出决策。 识别系统中的瓶颈 受控的负荷是否可以被增加到一个极端的水平并突破它, 从而识别系统的瓶颈或薄弱的地方。
生成订单
更新订单 发货
130/hr
20/hr 40/hr
180/hr
30/hr 90/hr
中等
中等 中等
中等
中等 高
中
大 大
用户概况分析
定票部门 飞行部门 管理部门
输入订单 100 25
更新订单
计算飞行 里程 计算销售
50
10
70 5
8
4.压力测试
压力测试(Stress Testing)是指模拟巨大的工作负荷,
界面元素测试
窗口测试
菜单测试 图标测试
鼠标测试
文字测试
窗口测试
窗口大小、颜色、背景等是否合理 窗口中的菜单、工具条、滚动条、对话框、按钮、图标等是否布局
合理和正常使用 窗口是否可以被移动 活动窗口能否被反显加亮 窗口是否能够正确关闭 多个窗口叠加时,窗口名称是否显示正确 窗口是否支持最小化、最大化 窗口上的文字是否能根据窗口的缩放而缩放 在窗口中按Tab键可以实现聚焦按顺序移动 ……
系统测试一般由若干个不同的测试组成,目的是在与
真实生产环境一模一样的环境下充分运行系统,验证 整个系统是否满足各方面的需求:
是否满足了所有功能需求; 系统响应时间是否满足要求; 系统是否能够支撑大量用户并发访问; 是否对出错有相应的处理等;
1.系统测试概述
系统测试关注的内容: 目标:系统各方面是否都满足了用户的需求; 依据:系统需求规格说明书; 测试环境:在生产环境下进行的测试; 执行者:以用户和开发组织的测试人员共同完成; 测试方法:黑盒测试; 评估方法:系统的功能和非功能要求是否都得到了满足;
记录测试结果,并将bug反馈给开发人员
对于修改后的问题进行回归测试 对未修改的功能进行抽测,已确认系统的修改是否对
其他部分产生了影响 发布可部署的软件版本 对功能测试进行总结
3.性能测试
性能是一种表明软件系统或构件对于实时性要求的符
合程度的指标。通常用系统响应时间来衡量。 响应时间的理解
性能测试与压力测试往往同时进行,如对一个网站进
行测试,模拟10到50个用户就是在进行常规性能测试, 用户增加到1000乃至上万就变成了压力测试。
压力测试角度
不断重复访问某个功能,看系统是否会失效
模拟大并发量访问系统的某个功能,看系统是否会失
效 提交大数据量测试用例,看系统是否会失效;
来检测系统是否满足了需求定义的全部功能。
一般情况下,采用黑盒测试来进行功能测试,常用的
黑盒测试方法都可以用来设计功能测试的测试用例, 包括等价类划分、边界值、因果图、错误推测法等。
功能测试发现的问题
是否需求规格说明书中定义的功能都得到了实现
实现的功能是否满足了用户的业务要求 各项输入是否都满足了需求定义的要求
性能测试主要参数
响应时间
并发用户数 系统吞吐量
服务器性能参数
响应时间
系统响应时间指从向应用系统发出请求开始,到客户
端接收到最后一个字节数据为止所消耗的时间。
合理的响应时间取决于实际的用户需求,需要在需求
分析时进行定义。 例如大数据量统计请求,用户即使等待30分钟,也认 为是合理的;而登录、修改密码等操作的响应时间应 该在几秒内。
用,尤其是在分析系统的可扩展性、进行性能瓶颈定 位时,对服务器性能参数值的分析比较关键。
服务器性能参数
与操作系统有关的参数:CPU平均利用率、内存平均
占用率、硬盘占用率、I/O数量、网络时延。 与数据库有关的参数:I/O等待时间、内存平均使用 率、CPU平均使用率、一次I/O操作中所读的最大 Blocks数、日志(Log)的增长情况、数据库的访问速 度、数据库能支持的最大用户数、数据库缓存 (Cache)命中率、不同数据库参数下的性能情况、 锁的处理。
系统测试内容
系统测试 功能测试 安全性测试 测试内容 系统的功能是否真正实现了 设法破坏程序的安全性、保密检查
可靠性测试
系统恢复测试 并发负载测试 疲劳强度测试 大数据量测试
平均无故障时间、因故障停机时间,需要模拟运行环境
测试系统出错后如何恢复正常工作的 在一定工作负荷和配置条件下,系统响应时间及处理速 度 让程序在高负荷情况下运行(建议72小时) 企图证明程序不能处理目标中指出的大批数据
从系统角度看:指系统对请求做出响应所需要的时间
从用户角度看:提交请求后,到得到结果所需要的时间 对于网络软件系统,用户感觉到的响应时间除了服务器
的处理时间外,还要包括网络传输的时间
响应时间越短,用户就越满意,相反用户就越不满意。
Βιβλιοθήκη Baidu 性能测试的概念
性能测试是用来测试软件在集成系统中运行的性能。
性能测试的目的
系统调优 识别出系统的性能瓶颈后,通过提高硬件配置、改进算 法、优化数据库性能等方法,对系统进行调优,从而提 高系统的性能。 验证稳定性(resilience)、可靠性(reliability) 使系统在一定的生产负荷下长时间执行,是评估系统的 稳定性和可靠性的有效方法。
与软件有关的参数:交易的平均响应时间(从接收请
求到回复响应的时间)、每秒交易数量(单位时间里 的执行次数)、对中间件功能的调用、远程处理延迟。
性能测试方案制定
任务分布图
有哪些交易任务? 在一天的某些特定时刻系统都有哪些主要操作?
交易混合图
高峰期有哪些业务操作? 中间件操作有多少?数据库操作有多少? 如果任务失败,那么商业风险有多少?
北京邮电大学软件学院
本章内容
1.系统测试概述
2.功能测试 3.性能测试
7. 兼容性测试
8.健壮性测试 9.文档测试
4.压力测试
5.安全性 6.易用性测试
10.回归测试
11.验收测试
1.系统测试概述
软件系统要得到运行,必须具有相应的运行环境,包
括硬件、网络、操作系统、数据库、中间件、外围系 统、系统用户等。
存储量测试
测试程序所占用的内外存容量(静/动态)
系统测试内容
系统测试
配置测试 兼容性测试
测试内容
软硬件配置,至少每一类和最大最小的设备配置情况都要测 试。 向下兼容、交错兼容,对现有程序进行修改和补充后,要进 行此类测试。
互连测试
可维护性测试 易用性测试 文档测试 安装性测试 启动/停止测试
测试不同系统之间的互连性。
业务符合性 功能定制性 业务模块的集成度 数据共享能力 约束性 交互性 错误提示
用户界面测试
界面整体测试
界面元素测试
用户界面设计原则
符合相关标准和规范
界面清晰简洁 功能布局直观
界面风格一致
展现效果可灵活配置
界面整体测试
规范性测试 界面设计符合现行标准和规范 一致性测试 使用标准控件,标准分辨率,标准快捷键 合理性测试 界面设计是否与系统功能融洽,颜色布局是否协调
系统对输入是否都进行了正确的处理,并给出了直观、
正确的输出
不同角色的用户在系统中能够进行的操作是否与需求
定义的一致 系统对业务流程的支持是否流畅、合理、正确 系统是否给出了清晰的提示 系统是否进行了适当的出错处理
功能测试步骤
制定功能测试测试计划
按照系统需求规格说明书的描述,编写功能测试用例 按照测试用例,执行系统功能测试
并发用户数
并发用户数一般是指同一时间段内访问系统(向系统
提交请求)的用户数量。
在系统业务操作高峰时,会发生并发用户数过多,并
发访问量过大的情况,这时会导致系统响应速度下降, 甚至导致系统拒绝服务。
最大并发用户数:指在系统响应时间和服务器性能参
数在某个水平的前提下,系统最多能够支持的并发访 问用户数量。
装,来评估安装过程的易用性和正确性。需要考察一 下方面:
安装手册撰写是否完备 安装自动化程度 安装过程中断测试 安装后卸载的测试 不同环境下安装测试 安装顺序测试 安装的正确性测试
功能易用性测试
功能易用性指系统功能在满足用户业务要求的同时,
使用的方便性。在测试系统功能易用性时主要考察以 下方面:
设计随机变化的测试用例,例如访问重复次数、访问
顺序、访问次数、数据量等,以获得与实际更接近的 压力测试效果
容量测试
容量测试是压力测试的一种,旨在测试系统承受超额
数据容量来发现其是否能够正确处理。
压力测试主要是面向大访问量,而容量测试主要是面
向大数据量。
容量测试一般要对外部的数据进行分类,并对每类数
其目标是度量系统相对于预定义目标的差距。
性能测试可分布于软件测试的各个步骤(单元测试、
集成测试、系统测试),但一般来讲,只有在系统测 试阶段,才能检查一个系统的真正性能。
性能测试可根据需要,分别采用白盒测试和黑盒测试
。
性能测试的目的
性能测试的目的就是通过测试确认软件是否满足产品
的性能需求,同时发现系统中存在的性能瓶颈,起到 优化系统的目的。 通过性能测试能达到以下目的:
对维护过程和难易程度进行测试。 界面友好、错误信息简明易懂、测试操作工序次序正确。 审查文档的正确性,对文档中的每个例子都要作为测试用例。 测试系统的安装过程。 系统启动及关机阶段,能否正常运行。
2.功能测试
功能测试是系统最重要、最基本的测试工作。功能的
完善是对一个软件系统最基本的要求。
功能测试主要是根据《系统需求规格说明书》的内容,
以检验系统在峰值使用情况下是否可以正常运行。 压力测试一般用于测试系统的稳定性。
一般通过模拟负载的方法使系统的资源使用率达到一
个较高的水平。
通常设定内存使用率达到75%以上、CPU使用率达到
75%以上
在这种情况下测试系统响应时间、系统有无错误产生。
压力测试与性能测试的比较
目的不同: 性能测试:检查系统在一定负载下的响应速度、资源使 用率等性能指标 压力测试:测试系统在最大负载情况下的运行情况
如某个单位开发了办公自动化系统,配备了很好的机 器设备和网络环境,领导也非常重视,但是使用了一 段时间之后,就把软件系统束之高阁了,重新回到了 手工处理的时代,问题的关键就在于该系统不符合用 户使用习惯,不符合行业特点。
易用性
易用性被描述成软件产品被理解、学习、使用和吸引
用户的能力。
易用性涉及到易理解性、易学习性、美观性、一致性
据进行容量限制的分析,而后对每类数据构造大容量 数据进行测试,以检验系统在这种情况下的处理能力 、响应时间、出错处理等是否满足用户需求。
5.易用性测试
软件在开发完成之后,除了要满足可用性之外,还要
具有良好的易用性。
终端用户是否觉得软件易用,往往直接决定了一个软
件能否取得市场的成功。
由于易用性差导致软件系统失败的案例比比皆是。例
最大并发用户数越大,系统性能越好,反之,则系统
性能越差。
系统吞吐量
吞吐量指单位时间内系统处理的客户请求数量。
一般用请求数/秒或页面数/秒来衡量。 吞吐量指标可以直接体现软件系统的性能承载能力。
服务器性能参数
服务器性能参数是描述服务器或操作系统性能的一些
数据指标。
这些参数值在性能测试中发挥着监控和分析的关键作
用户概况分析
哪些任务是每个用户都要执行的? 针对不同角色的用户,他们的任务是什么? 针对每个用户组,不同任务的比例如何?
任务分布图
交易混合图
交易名称 日常业务 高峰期业 务 Web服务 器负载 数据库服 务器 负载 登陆 开一个 新帐号 70/hr 10/hr 210/hr 15/hr 高 中等 低 中等 大 小 风险
和业务符合性等方面。
易用性测试是一个非常有挑战性的工作,往往依靠测
试工程师丰富的行业经验和对行业知识深刻的理解。
易用性测试不仅包括对系统使用方式的测试,还包括
对用户手册、在线帮助等文档的测试。
易用性测试内容
安装测试
功能易用性测试 用户界面测试
辅助系统测试
安装测试
安装测试就是按照用户安装手册的描述对软件进行安